diff --git a/hapi-fhir-base/src/main/java/ca/uhn/fhir/parser/XmlParser.java b/hapi-fhir-base/src/main/java/ca/uhn/fhir/parser/XmlParser.java index c8453953f3d..713c28f07e8 100644 --- a/hapi-fhir-base/src/main/java/ca/uhn/fhir/parser/XmlParser.java +++ b/hapi-fhir-base/src/main/java/ca/uhn/fhir/parser/XmlParser.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.parser; +/*- + * #%L + * HAPI FHIR - Core Library + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import static org.apache.commons.lang3.StringUtils.isBlank; import static org.apache.commons.lang3.StringUtils.isNotBlank; diff --git a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/api/server/IRequestDetails.java b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/api/server/IRequestDetails.java index 59174f9ad07..377b415f8cc 100644 --- a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/api/server/IRequestDetails.java +++ b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/api/server/IRequestDetails.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.api.server; +/*- + * #%L + * HAPI FHIR - Core Library + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.util.*; import ca.uhn.fhir.context.FhirContext; diff --git a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/api/server/IServerMethodBinding.java b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/api/server/IServerMethodBinding.java index af83b32199a..b653f32aebd 100644 --- a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/api/server/IServerMethodBinding.java +++ b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/api/server/IServerMethodBinding.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.api.server; +/*- + * #%L + * HAPI FHIR - Core Library + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + public interface IServerMethodBinding { } diff --git a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/client/api/IBasicClient.java b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/client/api/IBasicClient.java index 264aa44c3f5..04aa5733777 100644 --- a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/client/api/IBasicClient.java +++ b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/client/api/IBasicClient.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.api; +/*- + * #%L + * HAPI FHIR - Core Library + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import org.hl7.fhir.instance.model.api.IBaseConformance; import ca.uhn.fhir.rest.annotation.Metadata; diff --git a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/client/api/IGenericClient.java b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/client/api/IGenericClient.java index 643d0537c88..ab241042c5e 100644 --- a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/client/api/IGenericClient.java +++ b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/client/api/IGenericClient.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.api; +/*- + * #%L + * HAPI FHIR - Core Library + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import org.hl7.fhir.instance.model.api.IBaseBundle; import org.hl7.fhir.instance.model.api.IBaseResource; diff --git a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/gclient/BaseClientParam.java b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/gclient/BaseClientParam.java index 305de4732cf..3255c738dbb 100644 --- a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/gclient/BaseClientParam.java +++ b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/gclient/BaseClientParam.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.gclient; +/*- + * #%L + * HAPI FHIR - Core Library + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import ca.uhn.fhir.context.FhirContext; import ca.uhn.fhir.rest.api.Constants; diff --git a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/gclient/ICreateTyped.java b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/gclient/ICreateTyped.java index 70b3d50cfff..e72fc31b487 100644 --- a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/gclient/ICreateTyped.java +++ b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/gclient/ICreateTyped.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.gclient; +/*- + * #%L + * HAPI FHIR - Core Library + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import ca.uhn.fhir.rest.api.MethodOutcome; import ca.uhn.fhir.rest.api.PreferReturnEnum; diff --git a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/BaseParamWithPrefix.java b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/BaseParamWithPrefix.java index a1315267d3c..02b0488434b 100644 --- a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/BaseParamWithPrefix.java +++ b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/BaseParamWithPrefix.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.param; +/*- + * #%L + * HAPI FHIR - Core Library + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import static org.apache.commons.lang3.StringUtils.isBlank; public abstract class BaseParamWithPrefix extends BaseParam { diff --git a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/ParamPrefixEnum.java b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/ParamPrefixEnum.java index de324f7035b..186fb5ab30e 100644 --- a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/ParamPrefixEnum.java +++ b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/ParamPrefixEnum.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.param; +/*- + * #%L + * HAPI FHIR - Core Library + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.util.*; /** diff --git a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/QualifierDetails.java b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/QualifierDetails.java index ed40dd5bf75..675c4680d1a 100644 --- a/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/QualifierDetails.java +++ b/hapi-fhir-base/src/main/java/ca/uhn/fhir/rest/param/QualifierDetails.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.param; +/*- + * #%L + * HAPI FHIR - Core Library + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.util.Set; public class QualifierDetails { diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpClient.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpClient.java index 89ccdc445b9..f97ce6a95e9 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpClient.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpClient.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.apache; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpRequest.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpRequest.java index a6b1d7100f2..4830e00cf87 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpRequest.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpRequest.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.apache; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpResponse.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpResponse.java index f210025f845..17c097fdcfd 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpResponse.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheHttpResponse.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.apache; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheRestfulClientFactory.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheRestfulClientFactory.java index 00ce90070dc..913bd49b3dd 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheRestfulClientFactory.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/ApacheRestfulClientFactory.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.apache; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/BaseHttpClient.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/BaseHttpClient.java index f1d032f18f7..ed5837e8a67 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/BaseHttpClient.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/BaseHttpClient.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.apache; /*- * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/GZipContentInterceptor.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/GZipContentInterceptor.java index 5386eb801eb..4c6ebfdce7f 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/GZipContentInterceptor.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/apache/GZipContentInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.apache; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/BaseClient.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/BaseClient.java index eac4e16b96a..4aa1e2770df 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/BaseClient.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/BaseClient.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.impl; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/BaseHttpClientInvocation.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/BaseHttpClientInvocation.java index 3c73e72ce1e..b9fa14db159 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/BaseHttpClientInvocation.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/BaseHttpClientInvocation.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.impl; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/ClientInvocationHandler.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/ClientInvocationHandler.java index cafc608c92b..e57029383c6 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/ClientInvocationHandler.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/ClientInvocationHandler.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.impl; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/ClientInvocationHandlerFactory.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/ClientInvocationHandlerFactory.java index 396d4e82a56..afc4aac8fd7 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/ClientInvocationHandlerFactory.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/ClientInvocationHandlerFactory.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.impl; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/GenericClient.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/GenericClient.java index f2607e5d38b..4483628c81c 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/GenericClient.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/GenericClient.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.impl; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/HttpBasicAuthInterceptor.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/HttpBasicAuthInterceptor.java index dc37d763168..253b9d1c7bf 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/HttpBasicAuthInterceptor.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/HttpBasicAuthInterceptor.java @@ -18,7 +18,7 @@ import ca.uhn.fhir.rest.client.api.IGenericClient; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/RestfulClientFactory.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/RestfulClientFactory.java index 298eda9787d..5b2e8ff2a20 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/RestfulClientFactory.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/impl/RestfulClientFactory.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.impl; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/BasicAuthInterceptor.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/BasicAuthInterceptor.java index 30ac2304e1e..58a154bb40a 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/BasicAuthInterceptor.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/BasicAuthInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/BearerTokenAuthInterceptor.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/BearerTokenAuthInterceptor.java index cc407986931..d6e9efbfe6b 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/BearerTokenAuthInterceptor.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/BearerTokenAuthInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/CapturingInterceptor.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/CapturingInterceptor.java index 765daf9459c..28a12293df4 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/CapturingInterceptor.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/CapturingInterceptor.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.interceptor; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.io.IOException; import org.apache.http.HttpEntity; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/CookieInterceptor.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/CookieInterceptor.java index beee205d163..345eb832ac4 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/CookieInterceptor.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/CookieInterceptor.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.interceptor; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import ca.uhn.fhir.rest.api.Constants; import ca.uhn.fhir.rest.client.api.*; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/LoggingInterceptor.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/LoggingInterceptor.java index 41a3ce05c0a..812d5ef9980 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/LoggingInterceptor.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/LoggingInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/SimpleRequestHeaderInterceptor.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/SimpleRequestHeaderInterceptor.java index f57c926c78b..e40ea9e0663 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/SimpleRequestHeaderInterceptor.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/SimpleRequestHeaderInterceptor.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.StringUtils.isNotBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/UserInfoInterceptor.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/UserInfoInterceptor.java index 770ef39cf51..055f8a532f4 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/UserInfoInterceptor.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/interceptor/UserInfoInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/AtParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/AtParameter.java index b06ba0a7290..5f5c3d4dde3 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/AtParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/AtParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseHttpClientInvocationWithContents.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseHttpClientInvocationWithContents.java index 7e8d225e8d9..89dcc384b4f 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseHttpClientInvocationWithContents.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseHttpClientInvocationWithContents.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.StringUtils.isNotBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseMethodBinding.java index aac7152dc1e..5f48c71293a 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseMethodBinding.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.method; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.io.IOException; import java.io.Reader; import java.lang.reflect.Method; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBinding.java index 17faadb9264..4605639dd1e 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBinding.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.method; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.io.Reader; import java.lang.reflect.Method; import java.util.*; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBindingWithResourceIdButNoResourceBody.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBindingWithResourceIdButNoResourceBody.java index afefbe334fb..c7e59781544 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBindingWithResourceIdButNoResourceBody.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBindingWithResourceIdButNoResourceBody.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBindingWithResourceParam.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBindingWithResourceParam.java index 8d220b446ed..bfb1cce779d 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBindingWithResourceParam.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseOutcomeReturningMethodBindingWithResourceParam.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseQueryParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseQueryParameter.java index 96e48dc8a60..f31448bb00e 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseQueryParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseQueryParameter.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.StringUtils.isNotBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseResourceReturningMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseResourceReturningMethodBinding.java index a1befaa4981..51f2bb441be 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseResourceReturningMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/BaseResourceReturningMethodBinding.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.method; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.io.Reader; import java.lang.reflect.Method; import java.lang.reflect.Modifier; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ConditionalParamBinder.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ConditionalParamBinder.java index 207c2608bf1..bf5d4050fe8 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ConditionalParamBinder.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ConditionalParamBinder.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ConformanceMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ConformanceMethodBinding.java index ab314eb55b5..aae6e0083d2 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ConformanceMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ConformanceMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/CountParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/CountParameter.java index 4f2aab2bdb1..4f43f71570a 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/CountParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/CountParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/CreateMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/CreateMethodBinding.java index f0af1c90ec2..e145bf22740 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/CreateMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/CreateMethodBinding.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.StringUtils.isNotBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/DeleteMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/DeleteMethodBinding.java index 8f12124eb2a..cae78b1cfb0 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/DeleteMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/DeleteMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ElementsParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ElementsParameter.java index 2a060a00fb8..23f113e29ad 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ElementsParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ElementsParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HistoryMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HistoryMethodBinding.java index 874e95e0099..bf2a529b2c7 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HistoryMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HistoryMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpDeleteClientInvocation.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpDeleteClientInvocation.java index dd69b07fd7b..f376c7efba2 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpDeleteClientInvocation.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpDeleteClientInvocation.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpGetClientInvocation.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpGetClientInvocation.java index 10d62b74595..2f8b15e609a 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpGetClientInvocation.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpGetClientInvocation.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPatchClientInvocation.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPatchClientInvocation.java index 143284b8c72..c0bfb9bceb3 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPatchClientInvocation.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPatchClientInvocation.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPostClientInvocation.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPostClientInvocation.java index 3d88e4c289e..ad3842e86a6 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPostClientInvocation.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPostClientInvocation.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPutClientInvocation.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPutClientInvocation.java index 1b5ec32ba56..0aab3b5e771 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPutClientInvocation.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpPutClientInvocation.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpSimpleGetClientInvocation.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpSimpleGetClientInvocation.java index ae10d21fa0c..a80aef51e62 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpSimpleGetClientInvocation.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/HttpSimpleGetClientInvocation.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IClientResponseHandler.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IClientResponseHandler.java index 6d385b91069..ea8620e56c5 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IClientResponseHandler.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IClientResponseHandler.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IClientResponseHandlerHandlesBinary.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IClientResponseHandlerHandlesBinary.java index 273ce793e10..cc9aa9bc00a 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IClientResponseHandlerHandlesBinary.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IClientResponseHandlerHandlesBinary.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IParameter.java index 8ea63ffb8a4..e5a06f42e22 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IRestfulHeader.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IRestfulHeader.java index 3a4dc037f8a..afbb98f55c0 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IRestfulHeader.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IRestfulHeader.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IncludeParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IncludeParameter.java index ffef546c434..8dcee795a2d 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IncludeParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/IncludeParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/MethodUtil.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/MethodUtil.java index 2916798cf4f..ea1ad89d64a 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/MethodUtil.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/MethodUtil.java @@ -27,7 +27,7 @@ import ca.uhn.fhir.util.*; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/NullParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/NullParameter.java index ee3cd683351..1e5dea71f06 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/NullParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/NullParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/OperationMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/OperationMethodBinding.java index 10eed510332..f2760322056 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/OperationMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/OperationMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/OperationParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/OperationParameter.java index c1499d82db8..d1139565e92 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/OperationParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/OperationParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PageMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PageMethodBinding.java index 7e32454353b..90b3a85f94d 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PageMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PageMethodBinding.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.method; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.lang.reflect.Method; import org.hl7.fhir.instance.model.api.IBaseResource; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PatchMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PatchMethodBinding.java index 46917331795..8aca0773dcc 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PatchMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PatchMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PatchTypeParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PatchTypeParameter.java index 13c3c8b6b07..6035b4ae350 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PatchTypeParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/PatchTypeParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/RawParamsParmeter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/RawParamsParmeter.java index 1eebfef898a..ce1e95e5754 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/RawParamsParmeter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/RawParamsParmeter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ReadMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ReadMethodBinding.java index 572b873e0b0..37a7a9b88a8 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ReadMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ReadMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ResourceParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ResourceParameter.java index e7e20c42f81..c48aae0435f 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ResourceParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ResourceParameter.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.method; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.lang.reflect.Method; import java.util.Collection; import java.util.List; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SearchMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SearchMethodBinding.java index 78b71cce9e4..db08d065044 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SearchMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SearchMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SearchParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SearchParameter.java index d57927cfb2a..43c466dc140 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SearchParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SearchParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ServerBaseParamBinder.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ServerBaseParamBinder.java index 472a7e6a706..81e0d48af6f 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ServerBaseParamBinder.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ServerBaseParamBinder.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SinceOrAtParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SinceOrAtParameter.java index f3bad3145c4..929a4cdf22f 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SinceOrAtParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SinceOrAtParameter.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.method; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + class SinceOrAtParameter extends SearchParameter { // private Class myType; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SinceParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SinceParameter.java index c31d6a89beb..0fb6db88a20 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SinceParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SinceParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SortParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SortParameter.java index fcdd55e03ae..04ac14575ac 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SortParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SortParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SummaryEnumParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SummaryEnumParameter.java index 47868101916..f0cde093a03 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SummaryEnumParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/SummaryEnumParameter.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.method; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.lang.reflect.Method; import java.util.ArrayList; import java.util.Collection; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/TransactionMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/TransactionMethodBinding.java index ba4476096a9..8d9ffec5f69 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/TransactionMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/TransactionMethodBinding.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.method; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.lang.reflect.Method; import java.util.List; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/TransactionParameter.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/TransactionParameter.java index df2caa69973..dadecda0705 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/TransactionParameter.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/TransactionParameter.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.method; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.lang.reflect.Method; import java.lang.reflect.Modifier; import java.util.*; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/UpdateMethodBinding.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/UpdateMethodBinding.java index f82ad4dee98..d95b748a25e 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/UpdateMethodBinding.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/UpdateMethodBinding.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.client.method; +/*- + * #%L + * HAPI FHIR - Client Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import static org.apache.commons.lang3.StringUtils.isBlank; import java.lang.reflect.Method; diff --git a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ValidateMethodBindingDstu2Plus.java b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ValidateMethodBindingDstu2Plus.java index 5aa8844e2dd..874798c9ea7 100644 --- a/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ValidateMethodBindingDstu2Plus.java +++ b/hapi-fhir-client/src/main/java/ca/uhn/fhir/rest/client/method/ValidateMethodBindingDstu2Plus.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.client.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Client Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CCDAConverter.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CCDAConverter.java index 528efb5ef08..45d3c1fe8ec 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CCDAConverter.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CCDAConverter.java @@ -1,1139 +1,1160 @@ -package org.hl7.fhir.convertors; - - -/* - Copyright (c) 2011+, HL7, Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without modification, - are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of HL7 nor the names of its contributors may be used to - endorse or promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - - */ - - -import java.io.InputStream; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.UUID; - -import org.hl7.fhir.dstu3.context.IWorkerContext; -import org.hl7.fhir.dstu3.model.AllergyIntolerance; -import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus; -import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality; -import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent; -import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity; -import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType; -import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus; -import org.hl7.fhir.dstu3.model.Bundle; -import org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent; -import org.hl7.fhir.dstu3.model.CodeableConcept; -import org.hl7.fhir.dstu3.model.Coding; -import org.hl7.fhir.dstu3.model.Comparison; -import org.hl7.fhir.dstu3.model.Composition; -import org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode; -import org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent; -import org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality; -import org.hl7.fhir.dstu3.model.Composition.SectionComponent; -import org.hl7.fhir.dstu3.model.ContactPoint; -import org.hl7.fhir.dstu3.model.Device; -import org.hl7.fhir.dstu3.model.DomainResource; -import org.hl7.fhir.dstu3.model.Encounter; -import org.hl7.fhir.dstu3.model.Extension; -import org.hl7.fhir.dstu3.model.Factory; -import org.hl7.fhir.dstu3.model.Identifier; -import org.hl7.fhir.dstu3.model.InstantType; -import org.hl7.fhir.dstu3.model.ListResource; -import org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent; -import org.hl7.fhir.dstu3.model.Location; -import org.hl7.fhir.dstu3.model.Meta; -import org.hl7.fhir.dstu3.model.Narrative; -import org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus; -import org.hl7.fhir.dstu3.model.Observation; -import org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent; -import org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType; -import org.hl7.fhir.dstu3.model.Observation.ObservationStatus; -import org.hl7.fhir.dstu3.model.Organization; -import org.hl7.fhir.dstu3.model.Patient; -import org.hl7.fhir.dstu3.model.Period; -import org.hl7.fhir.dstu3.model.Practitioner; -import org.hl7.fhir.dstu3.model.Procedure; -import org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent; -import org.hl7.fhir.dstu3.model.Reference; -import org.hl7.fhir.dstu3.model.ResourceFactory; -import org.hl7.fhir.dstu3.utils.NarrativeGenerator; -import org.hl7.fhir.dstu3.utils.ToolingExtensions; -import org.hl7.fhir.exceptions.FHIRException; -import org.hl7.fhir.utilities.ucum.UcumService; -import org.w3c.dom.Element; - -/** -Advance Directives Section 42348-3 : -Allergies, Adverse Reactions, Alerts Section 48765-2 : List(AlleryIntolerance) processAdverseReactionsSection -Anesthesia Section 59774-0 : -Assessment Section 51848-0 : -Assessment and Plan Section 51487-2 : -Chief Complaint Section 10154-3 : -Chief Complaint and Reason for Visit Section 46239-0 : -Complications 55109-3: -DICOM Object Catalog Section - DCM 121181 : -Discharge Diet Section 42344-2 : -Encounters Section 46240-8: -Family History Section 10157-6 : -Findings Section 18782-3 : -Functional Status Section 47420-5 : -General Status Section 10210-3 : -History of Past Illness Section 11348-0 : -History of Present Illness Section 10164-2 : -Hospital Admission Diagnosis Section 46241-6 : -Hospital Consultations Section 18841-7 : -Hospital Course Section 8648-8 : -Hospital Discharge Diagnosis Section 11535-2 : -Hospital Discharge Instructions Section : -Hospital Discharge Medications Section (entries optional) 10183-2 : -Hospital Discharge Physical Section 10184-0 : -Hospital Discharge Studies Summary Section 11493-4 : -Immunizations Section 11369-6 : -Interventions Section 62387-6 : -Medical Equipment Section 46264-8 : -Medical (General) History Section 11329-0 : -Medications Section 10160-0 : -Medications Administered Section 29549-3 : -Objective Section 61149-1 : -Operative Note Fluid Section 10216-0 : -Operative Note Surgical Procedure Section 10223-6 : -Payers Section 48768-6 : -Physical Exam Section 29545-1 : -Plan of Care Section 18776-5 : -Planned Procedure Section 59772-: -Postoperative Diagnosis Section 10218-6 : -Postprocedure Diagnosis Section 59769-0 : -Preoperative Diagnosis Section 10219-4 : -Problem Section 11450-4 : -Procedure Description Section 29554-3: -Procedure Disposition Section 59775-7 : -Procedure Estimated Blood Loss Section 59770-8 : -Procedure Findings Section 59776-5 : -Procedure Implants Section 59771-6 : -Procedure Indications Section 59768-2 : -Procedure Specimens Taken Section 59773-2 : -Procedures Section 47519-4 : List (Procedure) processProceduresSection -Reason for Referral Section 42349-1 : -Reason for Visit Section 29299-5 : -Results Section 30954-2 : -Review of Systems Section 10187-3 : -Social History Section 29762-2 : List (Observation) processSocialHistorySection -Subjective Section 61150-9: -Surgical Drains Section 11537-8 : -Vital Signs Section 8716-3 : List(Observation) processVitalSignsSection - - -MU Sections: -Allergies/Adverse Reactions -Problems -Encounters -Medications -Results -Vital Signs -Procedures -Immunizations -Reason for Referral -Hospital Discharge Instructions -Functional Status -Plan of Care -Hospital Discharge Medication -All of General Header - - * @author Grahame - * - */ -public class CCDAConverter { - - public enum SocialHistoryType { - SocialHistory, Pregnancy, SmokingStatus, TobaccoUse - - } - - - public enum ProcedureType { - Observation, Procedure, Act - - } - - - protected CDAUtilities cda; - protected Element doc; - protected Convert convert; - protected Bundle feed; - protected Composition composition; - protected Map practitionerCache = new HashMap(); - protected Integer refCounter = 0; - protected UcumService ucumSvc; - protected IWorkerContext context; - - - public CCDAConverter(UcumService ucumSvc, IWorkerContext context) { - super(); - this.ucumSvc = ucumSvc; - this.context = context; - } - - - public Bundle convert(InputStream stream) throws Exception { - - cda = new CDAUtilities(stream); - doc = cda.getElement(); - cda.checkTemplateId(doc, "2.16.840.1.113883.10.20.22.1.1"); - convert = new Convert(cda, ucumSvc, "Z"); - - // check it's a CDA/CCD - feed = new Bundle(); - feed.setMeta(new Meta().setLastUpdatedElement(InstantType.now())); - feed.setId(makeUUIDReference()); - feed.getMeta().getTag().add(new Coding()); // todo-bundle ("http://hl7.org/fhir/tag", "http://hl7.org/fhir/tag/document", "Document")); - - // process the header - makeDocument(); - composition.setSubject(Factory.makeReference(makeSubject())); - for (Element e : cda.getChildren(doc, "author")) - composition.getAuthor().add(Factory.makeReference(makeAuthor(e))); - // todo: data enterer & informant goes in provenance - composition.setCustodian(Factory.makeReference(makeOrganization( - cda.getDescendent(doc, "custodian/assignedCustodian/representedCustodianOrganization"), "Custodian"))); - // todo: informationRecipient - for (Element e : cda.getChildren(doc, "legalAuthenticator")) - composition.getAttester().add(makeAttester(e, CompositionAttestationMode.LEGAL, "Legal Authenticator")); - for (Element e : cda.getChildren(doc, "authenticator")) - composition.getAttester().add(makeAttester(e, CompositionAttestationMode.PROFESSIONAL, "Authenticator")); - - // process the contents - // we do this by section - keep the original section order - Element body = cda.getDescendent(doc, "component/structuredBody"); - processComponentSections(composition.getSection(), body); - return feed; - } - - - protected String addReference(DomainResource r, String title, String id) throws Exception { - if (r.getText() == null) - r.setText(new Narrative()); - if (r.getText().getDiv() == null) { - r.getText().setStatus(NarrativeStatus.GENERATED); -// new NarrativeGenerator("", "", context).generate(r); - } - r.setMeta(new Meta().setLastUpdatedElement(InstantType.now())); - r.setId(id); - feed.getEntry().add(new BundleEntryComponent().setResource(r)); - return id; - } - - protected void makeDocument() throws Exception { - composition = (Composition) ResourceFactory.createResource("Composition"); - addReference(composition, "Composition", makeUUIDReference()); - - Element title = cda.getChild(doc, "title"); - composition.setTitle(title.getTextContent()); - - if (cda.getChild(doc, "setId") != null) { - feed.setId(convert.makeURIfromII(cda.getChild(doc, "id"))); - composition.setIdentifier(convert.makeIdentifierFromII(cda.getChild(doc, "setId"))); - } else - composition.setIdentifier(convert.makeIdentifierFromII(cda.getChild(doc, "id"))); // well, we fall back to id - - composition.setDateElement(convert.makeDateTimeFromTS(cda.getChild(doc, "effectiveTime"))); - composition.setType(convert.makeCodeableConceptFromCD(cda.getChild(doc, "code"))); - composition.setConfidentiality(convertConfidentiality(cda.getChild(doc, "confidentialityCode"))); - if (cda.getChild(doc, "confidentialityCode") != null) - composition.setLanguage(cda.getChild(doc, "confidentialityCode").getAttribute("value")); // todo - fix streaming for this - - Element ee = cda.getChild(doc, "componentOf"); - if (ee != null) - ee = cda.getChild(ee, "encompassingEncounter"); - if (ee != null) { - Encounter visit = new Encounter(); - for (Element e : cda.getChildren(ee, "id")) - visit.getIdentifier().add(convert.makeIdentifierFromII(e)); - visit.setPeriod(convert.makePeriodFromIVL(cda.getChild(ee, "effectiveTime"))); - composition.getEvent().add(new Composition.CompositionEventComponent()); - composition.getEvent().get(0).getCode().add(convert.makeCodeableConceptFromCD(cda.getChild(ee, "code"))); - composition.getEvent().get(0).setPeriod(visit.getPeriod()); - composition.getEvent().get(0).getDetail().add(Factory.makeReference(addReference(visit, "Encounter", makeUUIDReference()))); - } - - // main todo: fill out the narrative, but before we can do that, we have to convert everything else - } - - protected DocumentConfidentiality convertConfidentiality(Element child) throws FHIRException, org.hl7.fhir.exceptions.FHIRException { - // TODO Auto-generated method stub - return DocumentConfidentiality.fromCode(child.getAttribute("code")); - } - - - protected String makeSubject() throws Exception { - Element rt = cda.getChild(doc, "recordTarget"); - Element pr = cda.getChild(rt, "patientRole"); - Element p = cda.getChild(pr, "patient"); - - Patient pat = (Patient) ResourceFactory.createResource("Patient"); - for (Element e : cda.getChildren(pr, "id")) - pat.getIdentifier().add(convert.makeIdentifierFromII(e)); - - for (Element e : cda.getChildren(pr, "addr")) - pat.getAddress().add(convert.makeAddressFromAD(e)); - for (Element e : cda.getChildren(pr, "telecom")) - pat.getTelecom().add(convert.makeContactFromTEL(e)); - for (Element e : cda.getChildren(p, "name")) - pat.getName().add(convert.makeNameFromEN(e)); - pat.setGender(convert.makeGenderFromCD(cda.getChild(p, "administrativeGenderCode"))); - pat.setBirthDateElement(convert.makeDateFromTS(cda.getChild(p, "birthTime"))); - pat.setMaritalStatus(convert.makeCodeableConceptFromCD(cda.getChild(p, "maritalStatusCode"))); - pat.getExtension().add(Factory.newExtension(CcdaExtensions.NAME_RELIGION, convert.makeCodeableConceptFromCD(cda.getChild(p, "religiousAffiliationCode")), false)); - pat.getExtension().add(Factory.newExtension(CcdaExtensions.DAF_NAME_RACE, convert.makeCodeableConceptFromCD(cda.getChild(p, "raceCode")), false)); - pat.getExtension().add(Factory.newExtension(CcdaExtensions.DAF_NAME_ETHNICITY, convert.makeCodeableConceptFromCD(cda.getChild(p, "ethnicGroupCode")), false)); - pat.getExtension().add(Factory.newExtension(CcdaExtensions.NAME_BIRTHPLACE, convert.makeAddressFromAD(cda.getChild(p, new String[] {"birthplace", "place", "addr"})), false)); - - Patient.ContactComponent guardian = new Patient.ContactComponent(); - pat.getContact().add(guardian); - guardian.getRelationship().add(Factory.newCodeableConcept("GUARD", "urn:oid:2.16.840.1.113883.5.110", "guardian")); - Element g = cda.getChild(p, "guardian"); - for (Element e : cda.getChildren(g, "addr")) - if (guardian.getAddress() == null) - guardian.setAddress(convert.makeAddressFromAD(e)); - for (Element e : cda.getChildren(g, "telecom")) - guardian.getTelecom().add(convert.makeContactFromTEL(e)); - g = cda.getChild(g, "guardianPerson"); - for (Element e : cda.getChildren(g, "name")) - if (guardian.getName() == null) - guardian.setName(convert.makeNameFromEN(e)); - - Element l = cda.getChild(p, "languageCommunication"); - CodeableConcept cc = new CodeableConcept(); - Coding c = new Coding(); - c.setCode(cda.getChild(l, "languageCode").getAttribute("code")); - cc.getCoding().add(c); - pat.addCommunication().setLanguage(cc); - - // todo: this got broken.... lang.setMode(convert.makeCodeableConceptFromCD(cda.getChild(l, "modeCode"))); - cc.getExtension().add(Factory.newExtension(CcdaExtensions.NAME_LANG_PROF, convert.makeCodeableConceptFromCD(cda.getChild(l, "modeCode")), false)); - pat.getExtension().add(Factory.newExtension(CcdaExtensions.NAME_RELIGION, convert.makeCodeableConceptFromCD(cda.getChild(p, "religiousAffiliationCode")), false)); - pat.setManagingOrganization(Factory.makeReference(makeOrganization(cda.getChild(pr, "providerOrganization"), "Provider"))); - return addReference(pat, "Subject", makeUUIDReference()); - } - - - protected String makeOrganization(Element org, String name) throws Exception { - Organization o = new Organization(); - for (Element e : cda.getChildren(org, "id")) - o.getIdentifier().add(convert.makeIdentifierFromII(e)); - for (Element e : cda.getChildren(org, "name")) - o.setName(e.getTextContent()); - for (Element e : cda.getChildren(org, "addr")) - o.getAddress().add(convert.makeAddressFromAD(e)); - for (Element e : cda.getChildren(org, "telecom")) - o.getTelecom().add(convert.makeContactFromTEL(e)); - - return addReference(o, name, makeUUIDReference()); - } - - protected String makeAuthor(Element auth) throws Exception { - Element aa = cda.getChild(auth, "assignedAuthor"); - Element ap = cda.getChild(aa, "assignedPerson"); - - Practitioner pr = (Practitioner) ResourceFactory.createResource("Practitioner"); - for (Element e : cda.getChildren(aa, "id")) - pr.getIdentifier().add(convert.makeIdentifierFromII(e)); - for (Element e : cda.getChildren(aa, "addr")) - if (pr.getAddress() == null) - pr.getAddress().add(convert.makeAddressFromAD(e)); - for (Element e : cda.getChildren(aa, "telecom")) - pr.getTelecom().add(convert.makeContactFromTEL(e)); - for (Element e : cda.getChildren(ap, "name")) - if (pr.getName() != null) - pr.addName(convert.makeNameFromEN(e)); - - return addReference(pr, "Author", makeUUIDReference()); - } - - - protected String makeUUIDReference() { - return "urn:uuid:"+UUID.randomUUID().toString().toLowerCase(); - } - - - protected CompositionAttesterComponent makeAttester(Element a1, CompositionAttestationMode mode, String title) throws Exception { - Practitioner pr = (Practitioner) ResourceFactory.createResource("Practitioner"); - Element ass = cda.getChild(a1, "assignedEntity"); - for (Element e : cda.getChildren(ass, "id")) - pr.getIdentifier().add(convert.makeIdentifierFromII(e)); - for (Element e : cda.getChildren(ass, "addr")) - if (pr.getAddress() == null) // just take the first - pr.getAddress().add(convert.makeAddressFromAD(e)); - for (Element e : cda.getChildren(ass, "telecom")) - pr.getTelecom().add(convert.makeContactFromTEL(e)); - Element ap = cda.getChild(ass, "assignedPerson"); - for (Element e : cda.getChildren(ap, "name")) - if (pr.getName() == null) // just take the first - pr.addName(convert.makeNameFromEN(e)); - - - CompositionAttesterComponent att = new CompositionAttesterComponent(); - att.addMode(mode); - att.setTimeElement(convert.makeDateTimeFromTS(cda.getChild(a1,"time"))); - att.setParty(Factory.makeReference(addReference(pr, title, makeUUIDReference()))); - return att; - } - - - protected void processComponentSections(List sections, Element container) throws Exception { - for (Element c : cda.getChildren(container, "component")) { - SectionComponent s = processSection(cda.getChild(c, "section")); - if (s != null) - sections.add(s); - } - - } - - - protected SectionComponent processSection(Element section) throws Exception { - checkNoSubject(section, "Section"); - // this we do by templateId - if (cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.6") || cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.6.1")) - return processAdverseReactionsSection(section); - else if (cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.7") || cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.7.1")) - return processProceduresSection(section); - else if (cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.17")) - return processSocialHistorySection(section); - else if (cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.4") || cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.4.1")) - return processVitalSignsSection(section); - else - // todo: error? - return null; - } - - - protected void checkNoSubject(Element act, String path) throws Exception { - if (cda.getChild(act, "subject") != null) - throw new Exception("The conversion program cannot accept a nullFlavor at the location "+path); - } - - - protected SectionComponent processProceduresSection(Element section) throws Exception { - ListResource list = new ListResource(); - for (Element entry : cda.getChildren(section, "entry")) { - Element procedure = cda.getlastChild(entry); - - if (cda.hasTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.14")) { - processProcedure(list, procedure, ProcedureType.Procedure); - } else if (cda.hasTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.13")) { - processProcedure(list, procedure, ProcedureType.Observation); - } else if (cda.hasTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.12")) { - processProcedure(list, procedure, ProcedureType.Act); - } else - throw new Exception("Unhandled Section template ids: "+cda.showTemplateIds(procedure)); - } - - // todo: text - SectionComponent s = new Composition.SectionComponent(); - s.setCode(convert.makeCodeableConceptFromCD(cda.getChild(section, "code"))); - // todo: check subject - s.addEntry(Factory.makeReference(addReference(list, "Procedures", makeUUIDReference()))); - return s; - - } - - protected void processProcedure(ListResource list, Element procedure, ProcedureType type) throws Exception { - switch (type) { - case Procedure : - cda.checkTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.14"); - break; - case Observation: - cda.checkTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.13"); - break; - case Act: - cda.checkTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.12"); - } - checkNoNegationOrNullFlavor(procedure, "Procedure ("+type.toString()+")"); - checkNoSubject(procedure, "Procedure ("+type.toString()+")"); - - Procedure p = new Procedure(); - addItemToList(list, p); - - // moodCode is either INT or EVN. INT is not handled yet. INT is deprecated anyway - if (procedure.getAttribute("moodCode").equals("INT")) - p.getModifierExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-planned", Factory.newBoolean(true), false)); - - // SHALL contain at least one [1..*] id (CONF:7655). - for (Element e : cda.getChildren(procedure, "id")) - p.getIdentifier().add(convert.makeIdentifierFromII(e)); - - // SHALL contain exactly one [1..1] code (CONF:7656). - // This code @code in a procedure activity SHOULD be selected from LOINC or SNOMED CT and MAY be selected from CPT-4, ICD9 Procedures, ICD10 Procedures - p.setCode(convert.makeCodeableConceptFromCD(cda.getChild(procedure, "code"))); - - // SHALL contain exactly one [1..1] statusCode/@code, which SHALL be selected from ValueSet 2.16.840.1.113883.11.20.9.22 ProcedureAct - // completed | active | aborted | cancelled - not in FHIR - p.getModifierExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-status", Factory.newCode(cda.getStatus(procedure)), false)); - - // SHOULD contain zero or one [0..1] effectiveTime (CONF:7662). - p.setPerformed(convert.makePeriodFromIVL(cda.getChild(procedure, "effectiveTime"))); - - // MAY contain zero or one [0..1] priorityCode/@code, which SHALL be selected from ValueSet 2.16.840.1.113883.1.11.16866 ActPriority DYNAMIC (CONF:7668) - p.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-priority", convert.makeCodeableConceptFromCD(cda.getChild(procedure, "priorityCode")), false)); - - // MAY contain zero or one [0..1] methodCode (CONF:7670). - p.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-method", convert.makeCodeableConceptFromCD(cda.getChild(procedure, "methodCode")), false)); - - if (type == ProcedureType.Observation) { - // for Procedure-Observation: - // 9. SHALL contain exactly one [1..1] value (CONF:16846). - // don't know what this is. It's not the actual result of the procedure (that goes in results "This section records ... procedure observations"), and there seems to be no value. The example as which is not valid - // so we ignore this for now - } - - // SHOULD contain zero or more [0..*] targetSiteCode/@code, which SHALL be selected from ValueSet 2.16.840.1.113883.3.88.12.3221.8.9 Body site DYNAMIC (CONF:7683). - for (Element e : cda.getChildren(procedure, "targetSiteCode")) - p.addBodySite(convert.makeCodeableConceptFromCD(e)); - - // MAY contain zero or more [0..*] specimen (CONF:7697). - // todo: add these as extensions when specimens are done. - - // SHOULD contain zero or more [0..*] performer (CONF:7718) such that it - for (Element e : cda.getChildren(procedure, "performer")) { - ProcedurePerformerComponent pp = new ProcedurePerformerComponent(); - p.getPerformer().add(pp); - pp.setActor(makeReferenceToPractitionerForAssignedEntity(e, p)); - } - - for (Element participant : cda.getChildren(procedure, "participant")) { - Element participantRole = cda.getlastChild(participant); - if (type == ProcedureType.Procedure && cda.hasTemplateId(participantRole, "2.16.840.1.113883.10.20.22.4.37")) { - // MAY contain zero or more [0..*] participant (CONF:7751) such that it SHALL contain exactly one [1..1] @typeCode="DEV" Device - // implanted devices - p.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/implanted-devices", Factory.makeReference(processDevice(participantRole, p)), false)); - } else if (cda.hasTemplateId(participantRole, "2.16.840.1.113883.10.20.22.4.32")) { - // MAY contain zero or more [0..*] participant (CONF:7765) such that it SHALL contain exactly one [1..1] Service Delivery Location (templateId:2.16.840.1.113883.10.20.22.4.32) (CONF:7767) - p.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/location", Factory.makeReference(processSDLocation(participantRole, p)), false)); - } - } - - for (Element e : cda.getChildren(procedure, "entryRelationship")) { - Element a /* act*/ = cda.getlastChild(e); - if (a.getLocalName().equals("encounter")) { - // MAY contain zero or more [0..*] entryRelationship (CONF:7768) such that it SHALL contain exactly one encounter which SHALL contain exactly one [1..1] id (CONF:7773). - // todo - and process as a full encounter while we're at it - } else if (cda.hasTemplateId(a, "2.16.840.1.113883.10.20.22.4.20")) { - // MAY contain zero or one [0..1] entryRelationship (CONF:7775) such that it SHALL contain exactly one [1..1] Instructions (templateId:2.16.840.1.113883.10.20.22.4.20) (CONF:7778). - // had code for type, plus text for instructions - Extension n = Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-instructions", null, true); - n.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-instructions-type", convert.makeCodeableConceptFromCD(cda.getChild(a, "code")), false)); - n.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-instructions-text", convert.makeStringFromED(cda.getChild(a, "text")), false)); - p.getExtension().add(n); - } else if (cda.hasTemplateId(a, "2.16.840.1.113883.10.20.22.4.19")) { - // MAY contain zero or more [0..*] entryRelationship (CONF:7779) such that it SHALL contain exactly one [1..1] Indication (templateId:2.16.840.1.113883.10.20.22.4.19) (CONF:7781). - p.addReasonCode(processIndication(a)); - } else if (cda.hasTemplateId(cda.getlastChild(e), "2.16.840.1.113883.10.20.22.4.16")) { - // MAY contain zero or one [0..1] entryRelationship (CONF:7886) such that it SHALL contain exactly one [1..1] Medication Activity (templateId:2.16.840.1.113883.10.20.22.4.16) (CONF:7888). - // todo - } - } - } - - - protected String processSDLocation(Element participantRole, DomainResource r) throws Exception { - Location l = new Location(); - l.setType(convert.makeCodeableConceptFromCD(cda.getChild(participantRole, "code"))); - for (Element id : cda.getChildren(participantRole, "id")) { - if (l.getIdentifier() == null) - l.getIdentifier().add(convert.makeIdentifierFromII(id)); - } - for (Element addr : cda.getChildren(participantRole, "addr")) { - if (l.getAddress() == null) - l.setAddress(convert.makeAddressFromAD(addr)); - } - - for (Element telecom : cda.getChildren(participantRole, "telecom")) { - l.getTelecom().add(convert.makeContactFromTEL(telecom)); - } - - - Element place = cda.getChild(participantRole, "playingDevice"); - if (cda.getChild(place, "name") != null) - l.setName(cda.getChild(place, "name").getTextContent()); - - String id = nextRef(); - l.setId(id); - r.getContained().add(l); - return "#"+id; - } - - - protected String processDevice(Element participantRole, DomainResource r) throws Exception { - Device d = new Device(); - for (Element id : cda.getChildren(participantRole, "id")) { - // todo: check for UDIs, how? - d.getIdentifier().add(convert.makeIdentifierFromII(id)); - } - Element device = cda.getChild(participantRole, "playingDevice"); - // todo: if (cda.getChild(device, "code") != null) - d.setType(convert.makeCodeableConceptFromCD(cda.getChild(device, "code"))); - - // CCDA has an id - this is manufacturer? We just call it the name, but what to do about this? - Element org = cda.getChild(participantRole, "scopingEntity"); - d.setManufacturer(convert.makeURIfromII(cda.getChild(org, "id"))); - - String id = nextRef(); - d.setId(id); - r.getContained().add(d); - return "#"+id; - } - - - protected CodeableConcept processIndication(Element obs) throws Exception { - Element v = cda.getChild(obs, "value"); - if (v == null) { - // have to find it by ID - Element o = cda.getById(cda.getChild(obs, "id"), "value"); - if (o != null) - v = cda.getChild(obs, "value"); - } - if (v != null) - return convert.makeCodeableConceptFromCD(v); - else - return null; - } - - protected Reference makeReferenceToPractitionerForAssignedEntity(Element assignedEntity, DomainResource r) throws Exception { - - Reference ref = null; - // do we have this by id? - String uri = getIdForEntity(assignedEntity); - Practitioner p = null; - if (uri != null) { - ref = Factory.makeReference(uri); - p = practitionerCache.get(uri); - } - if (p == null) { - p = new Practitioner(); - if (uri == null) { - // make a contained practitioner - String n = nextRef(); - p.setId(n); - r.getContained().add(p); - ref = Factory.makeReference("#"+n); - } else { - // add this to feed - ref = Factory.makeReference(addReference(p, "Practitioner", uri)); - } - } - // ref and p are both sorted. now we fill out p as much as we can (remembering it might already be populated) -// p.addRole().setCode(convert.makeCodeableConceptFromCD(cda.getChild(assignedEntity, "code"))); - for (Element e : cda.getChildren(assignedEntity, "id")) - addToIdList(p.getIdentifier(), convert.makeIdentifierFromII(e)); - for (Element e : cda.getChildren(assignedEntity, "addr")) - if (p.getAddress() == null) - p.getAddress().add(convert.makeAddressFromAD(e)); - for (Element e : cda.getChildren(assignedEntity, "telecom")) - addToContactList(p.getTelecom(), convert.makeContactFromTEL(e)); - for (Element e : cda.getChildren(cda.getChild(assignedEntity, "assignedPerson"), "name")) - if (p.getName() == null) - p.addName(convert.makeNameFromEN(e)); - // todo: - // representedOrganization - return ref; - } - - - protected void addToContactList(List list, ContactPoint c) throws Exception { - for (ContactPoint item : list) { - if (Comparison.matches(item, c, null)) - Comparison.merge(item, c); - } - list.add(c); - } - - - protected void addToIdList(List list, Identifier id) throws Exception { - for (Identifier item : list) { - if (Comparison.matches(item, id, null)) - Comparison.merge(item, id); - } - list.add(id); - } - - - protected void addToCodeableList(List list, CodeableConcept code) throws Exception { - for (CodeableConcept item : list) { - if (Comparison.matches(item, code, null)) - Comparison.merge(item, code); - } - list.add(code); - } - - - protected String getIdForEntity(Element assignedEntity) throws Exception { - Element id = cda.getChild(assignedEntity, "id"); // for now, just grab the first - if (id == null) - return null; - if (id.getAttribute("extension") == null) { - if (convert.isGuid(id.getAttribute("root"))) - return "urn:uuid:"+id.getAttribute("root"); - else - return "urn:oid:"+id.getAttribute("root"); - } else - return "ii:"+id.getAttribute("root")+"::"+id.getAttribute("extension"); - } - - - protected SectionComponent processAdverseReactionsSection(Element section) throws Exception { - ListResource list = new ListResource(); - for (Element entry : cda.getChildren(section, "entry")) { - Element concern = cda.getChild(entry, "act"); - if (cda.hasTemplateId(concern, "2.16.840.1.113883.10.20.22.4.30")) { - processAllergyProblemAct(list, concern); - } else - throw new Exception("Unhandled Section template ids: "+cda.showTemplateIds(concern)); - } - - - // todo: text - SectionComponent s = new Composition.SectionComponent(); - s.setCode(convert.makeCodeableConceptFromCD(cda.getChild(section, "code"))); - // todo: check subject - s.addEntry(Factory.makeReference(addReference(list, "Allergies, Adverse Reactions, Alerts", makeUUIDReference()))); - return s; - } - - - protected void processAllergyProblemAct(ListResource list, Element concern) throws Exception { - cda.checkTemplateId(concern, "2.16.840.1.113883.10.20.22.4.30"); - // Allergy Problem Act - this is a concern - we treat the concern as information about it's place in the list - checkNoNegationOrNullFlavor(concern, "Allergy Problem Act"); - checkNoSubject(concern, "Allergy Problem Act"); - - // SHALL contain at least one [1..*] entryRelationship (CONF:7509) such that it - // SHALL contain exactly one [1..1] Allergy - intolerance Observation - for (Element entry : cda.getChildren(concern, "entryRelationship")) { - Element obs = cda.getChild(entry, "observation"); - cda.checkTemplateId(obs, "2.16.840.1.113883.10.20.22.4.7"); - checkNoNegationOrNullFlavor(obs, "Allergy - intolerance Observation"); - checkNoSubject(obs, "Allergy Problem Act"); - - AllergyIntolerance ai = new AllergyIntolerance(); - ListEntryComponent item = addItemToList(list, ai); - - // this first section comes from the concern, and is processed once for each observation in the concern group - // SHALL contain at least one [1..*] id (CONF:7472). - for (Element e : cda.getChildren(concern, "id")) - ai.getIdentifier().add(convert.makeIdentifierFromII(e)); - - // SHALL contain exactly one [1..1] statusCode, which SHALL be selected from ValueSet 2.16.840.1.113883.3.88.12.80.68 HITSPProblemStatus DYNAMIC (CONF:7485) - // the status code is about the concern (e.g. the entry in the list) - // possible values: active, suspended, aborted, completed, with an effective time - String s = cda.getStatus(concern); - item.setFlag(Factory.newCodeableConcept(s, "http://hl7.org/fhir/v3/ActStatus", s)); - if (s.equals("aborted")) // only on this condition? - item.setDeleted(true); - - // SHALL contain exactly one [1..1] effectiveTime (CONF:7498) - Period p = convert.makePeriodFromIVL(cda.getChild(concern, "effectiveTime")); - item.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/list-period", p, false)); - if (p.getEnd() != null) - item.setDate(p.getEnd()); - else - item.setDate(p.getStart()); - - //ok, now process the actual observation - // SHALL contain at least one [1..*] id (CONF:7382) - for (Element e : cda.getChildren(obs, "id")) - ai.getIdentifier().add(convert.makeIdentifierFromII(e)); - - - // SHALL contain exactly one [1..1] effectiveTime (CONF:7387) - ai.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/allergyintolerance-period", convert.makePeriodFromIVL(cda.getChild(obs, "effectiveTime")), false)); - - // SHALL contain exactly one [1..1] value with @xsi:type="CD" (CONF:7390) - CodeableConcept type = convert.makeCodeableConceptFromCD(cda.getChild(obs, "value")); - // This value SHALL contain @code, which SHALL be selected from ValueSet 2.16.840.1.113883.3.88.12.3221.6.2 Allergy/Adverse Event Type - String ss = type.getCoding().get(0).getCode(); - if (ss.equals("416098002") || ss.equals("414285001")) - ai.setType(AllergyIntoleranceType.ALLERGY); - else if (ss.equals("59037007") || ss.equals("235719002")) - ai.setType(AllergyIntoleranceType.INTOLERANCE); - ai.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/allergy-category", type, false)); - - // SHOULD contain zero or one [0..1] participant (CONF:7402) such that it - // ......This playingEntity SHALL contain exactly one [1..1] code - ai.setCode(convert.makeCodeableConceptFromCD(cda.getDescendent(obs, "participant/participantRole/playingEntity/code"))); - - // MAY contain zero or one [0..1] entryRelationship (CONF:7440) such that it SHALL contain exactly one [1..1] Alert Status Observation - // SHOULD contain zero or more [0..*] entryRelationship (CONF:7447) such that it SHALL contain exactly one [1..1] Reaction Observation (templateId:2.16.840.1.113883.10.20.22.4.9) (CONF:7450). - for (Element e : cda.getChildren(obs, "entryRelationship")) { - Element child = cda.getChild(e, "observation"); - if (cda.hasTemplateId(child, "2.16.840.1.113883.10.20.22.4.28") && ai.getClinicalStatus() == null) { - // SHALL contain exactly one [1..1] value with @xsi:type="CE", where the @code SHALL be selected from ValueSet Problem Status Value Set 2.16.840.1.113883.3.88.12.80.68 DYNAMIC (CONF:7322). - // 55561003 SNOMED CT Active - // 73425007 SNOMED CT Inactive - // 413322009 SNOMED CT Resolved - String sc = cda.getChild(child, "value").getAttribute("code"); - if (sc.equals("55561003")) { - ai.setClinicalStatus(AllergyIntoleranceClinicalStatus.ACTIVE); - ai.setVerificationStatus(AllergyIntoleranceVerificationStatus.CONFIRMED); - } else - ai.setClinicalStatus(AllergyIntoleranceClinicalStatus.RESOLVED); - } else if (cda.hasTemplateId(child, "2.16.840.1.113883.10.20.22.4.9")) { - ai.getReaction().add(processAdverseReactionObservation(child)); - } - } - - // SHOULD contain zero or one [0..1] entryRelationship (CONF:9961) such that it SHALL contain exactly one [1..1] Severity Observation (templateId:2.16.840.1.113883.10.20.22.4.8) (CONF:9963). - ai.setCriticality(readCriticality(cda.getSeverity(obs))); - } - } - - - // this is going to be a contained resource, so we aren't going to generate any narrative - protected AllergyIntoleranceReactionComponent processAdverseReactionObservation(Element reaction) throws Exception { - checkNoNegationOrNullFlavor(reaction, "Adverse Reaction Observation"); - checkNoSubject(reaction, "Adverse Reaction Observation"); - - // This clinical statement represents an undesired symptom, finding, etc., due to an administered or exposed substance. A reaction can be defined with respect to its severity, and can have been treated by one or more interventions. - AllergyIntoleranceReactionComponent ar = new AllergyIntoleranceReactionComponent(); - - // SHALL contain exactly one [1..1] id (CONF:7329). - for (Element e : cda.getChildren(reaction, "id")) - ToolingExtensions.addIdentifier(ar, convert.makeIdentifierFromII(e)); - - // SHALL contain exactly one [1..1] code (CONF:7327). The value set for this code element has not been specified. - // todo: what the heck is this? - - // SHOULD contain zero or one [0..1] text (CONF:7330). - // todo: so what is this? how can we know whether to ignore it? - - // 8. SHOULD contain zero or one [0..1] effectiveTime (CONF:7332). - // a. This effectiveTime SHOULD contain zero or one [0..1] low (CONF:7333). - // b. This effectiveTime SHOULD contain zero or one [0..1] high (CONF:7334). - // !this is a problem because FHIR just has a date, not a period. - ar.setOnsetElement(convert.makeDateTimeFromIVL(cda.getChild(reaction, "effectiveTime"))); - - // SHALL contain exactly one [1..1] value with @xsi:type="CD", where the @code SHALL be selected from ValueSet 2.16.840.1.113883.3.88.12.3221.7.4 Problem DYNAMIC (CONF:7335). - ar.getManifestation().add(convert.makeCodeableConceptFromCD(cda.getChild(reaction, "value"))); - - // SHOULD contain zero or one [0..1] entryRelationship (CONF:7580) such that it SHALL contain exactly one [1..1] Severity Observation (templateId:2.16.840.1.113883.10.20.22.4.8) (CONF:7582). - ar.setSeverity(readSeverity(cda.getSeverity(reaction))); - - // MAY contain zero or more [0..*] entryRelationship (CONF:7337) such that it SHALL contain exactly one [1..1] Procedure Activity Procedure (templateId:2.16.840.1.113883.10.20.22.4.14) (CONF:7339). - // i. This procedure activity is intended to contain information about procedures that were performed in response to an allergy reaction - // todo: process these into an procedure and add as an extension - - // MAY contain zero or more [0..*] entryRelationship (CONF:7340) such that it SHALL contain exactly one [1..1] Medication Activity (templateId:2.16.840.1.113883.10.20.22.4.16) (CONF:7342). - // i. This medication activity is intended to contain information about medications that were administered in response to an allergy reaction. (CONF:7584). - // todo: process these into an medication statement and add as an extension - - return ar; - } - - - protected SectionComponent processSocialHistorySection(Element section) throws Exception { - ListResource list = new ListResource(); - for (Element entry : cda.getChildren(section, "entry")) { - Element observation = cda.getlastChild(entry); - - if (cda.hasTemplateId(observation, "2.16.840.1.113883.10.20.22.4.38")) { - processSocialObservation(list, observation, SocialHistoryType.SocialHistory); - } else if (cda.hasTemplateId(observation, "2.16.840.1.113883.10.20.15.3.8")) { - processSocialObservation(list, observation, SocialHistoryType.Pregnancy); - } else if (cda.hasTemplateId(observation, "2.16.840.1.113883.10.20.22.4.78")) { - processSocialObservation(list, observation, SocialHistoryType.SmokingStatus); - } else if (cda.hasTemplateId(observation, "2.16.840.1.113883.10.20.22.4.85")) { - processSocialObservation(list, observation, SocialHistoryType.TobaccoUse); - } else - throw new Exception("Unhandled Section template ids: "+cda.showTemplateIds(observation)); - } - - // todo: text - SectionComponent s = new Composition.SectionComponent(); - s.setCode(convert.makeCodeableConceptFromCD(cda.getChild(section, "code"))); - // todo: check subject - s.addEntry(Factory.makeReference(addReference(list, "Procedures", makeUUIDReference()))); - return s; - - } - - - - protected void processSocialObservation(ListResource list, Element so, SocialHistoryType type) throws Exception { - Observation obs = new Observation(); - addItemToList(list, obs); - - switch (type) { - case SocialHistory : - cda.checkTemplateId(so, "2.16.840.1.113883.10.20.22.4.38"); - // SHALL contain exactly one [1..1] code (CONF:8558/). - obs.setCode(convert.makeCodeableConceptFromCD(cda.getChild(so, "code"))); - break; - case Pregnancy: - cda.checkTemplateId(so, "2.16.840.1.113883.10.20.15.3.8"); - // SHALL contain exactly one [1..1] code (CONF:8558/), which SHALL be an assertion - obs.setCode(Factory.newCodeableConcept("11449-6", "http://loinc.org", "Pregnancy Status")); - break; - case SmokingStatus: - cda.checkTemplateId(so, "2.16.840.1.113883.10.20.22.4.78"); - // SHALL contain exactly one [1..1] code (CONF:8558/), which SHALL be an assertion - obs.setCode(Factory.newCodeableConcept("72166-2", "http://loinc.org", "Tobacco Smoking Status")); - break; - case TobaccoUse: - cda.checkTemplateId(so, "2.16.840.1.113883.10.20.22.4.12"); - // SHALL contain exactly one [1..1] code (CONF:8558/), which SHALL be an assertion - obs.setCode(Factory.newCodeableConcept("11367-0", "http://loinc.org", "History of Tobacco Use")); - } - - // SHALL contain at least one [1..*] id (8551). - for (Element e : cda.getChildren(so, "id")) - obs.getIdentifier().add(convert.makeIdentifierFromII(e)); - - - // SHALL contain exactly one [1..1] statusCode (CONF:8553/455/14809). - // a. This statusCode SHALL contain exactly one [1..1] @code="completed" Completed (CodeSystem: ActStatus 2.16.840.1.113883.5.14 STATIC) (CONF:19117). - obs.setStatus(ObservationStatus.FINAL); - - // SHOULD contain zero or one [0..1] effectiveTime (CONF:2018/14814). - // for smoking status/tobacco: low only. in R2, this is just value. So we treat low only as just a value - Element et = cda.getChild(so, "effectiveTime"); - if (et != null) { - if (cda.getChild(et, "low") != null) - obs.setEffective(convert.makeDateTimeFromTS(cda.getChild(et, "low"))); - else - obs.setEffective(convert.makeDateTimeFromIVL(et)); - } - - // SHOULD contain zero or one [0..1] value (CONF:8559). - // a. Observation/value can be any data type. - for (Element e : cda.getChildren(so, "value")) - if (obs.getValue() == null) { // only one in FHIR - // special case for pregnancy: - if (type == SocialHistoryType.Pregnancy && "true".equals(e.getAttribute("negationInd"))) { - obs.setValue(Factory.newCodeableConcept("60001007", "http://snomed.info/sct", "Not pregnant")); - } else { - // negationInd is not described. but it might well be used. For now, we blow up - checkNoNegation(so, "Social Observation ("+type.toString()+")"); - - if (so.hasAttribute("nullFlavor")) - obs.setValue(convert.makeCodeableConceptFromNullFlavor(so.getAttribute("nullFlavor"))); - else if (e.hasAttribute("nullFlavor") && !"OTH".equals(e.getAttribute("nullFlavor"))) - obs.setValue(convert.makeCodeableConceptFromNullFlavor(e.getAttribute("nullFlavor"))); - else - obs.setValue(convert.makeTypeFromANY(e)); - } - } else - throw new Exception("too many values on Social Observation"); - - if (type == SocialHistoryType.Pregnancy) { - for (Element e : cda.getChildren(so, "entyRelationship")) { - Element dd = cda.getChild(e, "observation"); - checkNoNegationOrNullFlavor(dd, "Estimated Date of Delivery"); - // MAY contain zero or one [0..1] entryRelationship (CONF:458) such that it - // SHALL contain exactly one [1..1] @typeCode="REFR" Refers to (CodeSystem: HL7ActRelationshipType 2.16.840.1.113883.5.1002 STATIC) (CONF:459). - // SHALL contain exactly one [1..1] Estimated Date of Delivery (templateId:2.16.840.1.113883.10.20.15.3.1) (CONF:15584). - Observation co = new Observation(); - String id = nextRef(); - co.setId(id); - obs.getContained().add(co); - ObservationRelatedComponent or = new ObservationRelatedComponent(); - obs.getRelated().add(or); - or.setType(ObservationRelationshipType.HASMEMBER); - or.setTarget(Factory.makeReference("#"+id)); - co.setCode(Factory.newCodeableConcept("11778-8", "http://loinc.org", "Delivery date Estimated")); - co.setValue(convert.makeDateTimeFromTS(cda.getChild(dd, "value"))); // not legal, see gForge http://gforge.hl7.org/gf/project/fhir/tracker/?action=TrackerItemEdit&tracker_item_id=3125&start=0 - } - } - } - - - protected void checkNoNegation(Element act, String path) throws Exception { - if ("true".equals(act.getAttribute("negationInd"))) - throw new Exception("The conversion program cannot accept a negationInd at the location "+path); - } - - protected void checkNoNegationOrNullFlavor(Element act, String path) throws Exception { - if (act.hasAttribute("nullFlavor")) - throw new Exception("The conversion program cannot accept a nullFlavor at the location "+path); - if ("true".equals(act.getAttribute("negationInd"))) - throw new Exception("The conversion program cannot accept a negationInd at the location "+path); - } - - - protected ListEntryComponent addItemToList(ListResource list, DomainResource ai) - throws Exception { - list.getContained().add(ai); - String n = nextRef(); - ai.setId(n); - ListEntryComponent item = new ListResource.ListEntryComponent(); - list.getEntry().add(item); - item.setItem(Factory.makeReference("#"+n)); - return item; - } - - - protected String nextRef() { - refCounter++; - String n = refCounter.toString(); - return n; - } - - protected AllergyIntoleranceCriticality readCriticality(String severity) { - if ("255604002".equals(severity)) // Mild - return AllergyIntoleranceCriticality.LOW; - if ("371923003".equals(severity)) // Mild to moderate - return AllergyIntoleranceCriticality.LOW; - if ("6736007".equals(severity)) // Moderate - return AllergyIntoleranceCriticality.LOW; - if ("371924009".equals(severity)) // Moderate to severe - return AllergyIntoleranceCriticality.HIGH; - if ("24484000".equals(severity)) // Severe - return AllergyIntoleranceCriticality.HIGH; - if ("399166001".equals(severity)) // Fatal - return AllergyIntoleranceCriticality.HIGH; - return null; - } - - - protected AllergyIntoleranceSeverity readSeverity(String severity) { - if ("255604002".equals(severity)) // Mild - return AllergyIntoleranceSeverity.MILD; - if ("371923003".equals(severity)) // Mild to moderate - return AllergyIntoleranceSeverity.MODERATE; - if ("6736007".equals(severity)) // Moderate - return AllergyIntoleranceSeverity.MODERATE; - if ("371924009".equals(severity)) // Moderate to severe - return AllergyIntoleranceSeverity.SEVERE; - if ("24484000".equals(severity)) // Severe - return AllergyIntoleranceSeverity.SEVERE; - if ("399166001".equals(severity)) // Fatal - return AllergyIntoleranceSeverity.SEVERE; - return null; - } - - - protected SectionComponent processVitalSignsSection(Element section) throws Exception { - ListResource list = new ListResource(); - for (Element entry : cda.getChildren(section, "entry")) { - Element organizer = cda.getlastChild(entry); - - if (cda.hasTemplateId(organizer, "2.16.840.1.113883.10.20.22.4.26")) { - processVitalSignsOrganizer(list, organizer); - } else - throw new Exception("Unhandled Section template ids: "+cda.showTemplateIds(organizer)); - } - - // todo: text - SectionComponent s = new Composition.SectionComponent(); - s.setCode(convert.makeCodeableConceptFromCD(cda.getChild(section, "code"))); - // todo: check subject - s.addEntry(Factory.makeReference(addReference(list, "Vital Signs", makeUUIDReference()))); - return s; - - } - - protected void processVitalSignsOrganizer(ListResource list, Element organizer) throws Exception { - - cda.checkTemplateId(organizer, "2.16.840.1.113883.10.20.22.4.26"); - checkNoNegationOrNullFlavor(organizer, "Vital Signs Organizer"); - checkNoSubject(organizer, "Vital Signs Organizer"); - // moodCode is EVN. - - Observation obs = new Observation(); - addItemToList(list, obs); - - // SHALL contain at least one [1..*] id (CONF:7282). - for (Element e : cda.getChildren(organizer, "id")) - obs.getIdentifier().add(convert.makeIdentifierFromII(e)); - - // SHALL contain exactly one [1..1] code (CONF:19176). - // This code SHALL contain exactly one [1..1] @code="46680005" Vital signs (CodeSystem: SNOMED-CT 2.16.840.1.113883.6.96 STATIC) (CONF:19177). - obs.setCode(convert.makeCodeableConceptFromCD(cda.getChild(organizer, "code"))); - - - // SHALL contain exactly one [1..1] effectiveTime (CONF:7288). - obs.setEffective(convert.makeMatchingTypeFromIVL(cda.getChild(organizer, "effectiveTime"))); - - // SHALL contain at least one [1..*] component (CONF:7285) such that it - // SHALL contain exactly one [1..1] Vital Sign Observation (templateId:2.16.840.1.113883.10.20.22.4.27) (CONF:15946). - for (Element e : cda.getChildren(organizer, "component")){ - ObservationRelatedComponent ro = new ObservationRelatedComponent(); - ro.setType(ObservationRelationshipType.HASMEMBER); - ro.setTarget(Factory.makeReference("#"+processVitalSignsObservation(e, list))); - } - } - - - protected String processVitalSignsObservation(Element comp, ListResource list) throws Exception { - Element observation = cda.getChild(comp, "observation"); - cda.checkTemplateId(observation, "2.16.840.1.113883.10.20.22.4.27"); - checkNoNegationOrNullFlavor(observation, "Vital Signs Observation"); - checkNoSubject(observation, "Vital Signs Observation"); - - Observation obs = new Observation(); - - // SHALL contain at least one [1..*] id (CONF:7300). - for (Element e : cda.getChildren(observation, "id")) - obs.getIdentifier().add(convert.makeIdentifierFromII(e)); - - // SHALL contain exactly one [1..1] code, which SHOULD be selected from ValueSet Vital Sign Result Value Set 2.16.840.1.113883.3.88.12.80.62 DYNAMIC (CONF:7301). - obs.setCode(convert.makeCodeableConceptFromCD(cda.getChild(observation, "code"))); // all loinc codes - - // SHOULD contain zero or one [0..1] text (CONF:7302). - // The text, if present, SHOULD contain zero or one [0..1] reference (CONF:15943). - // The reference, if present, SHOULD contain zero or one [0..1] @value (CONF:15944). - // This reference/@value SHALL begin with a '#' and SHALL point to its corresponding narrative (using the approach defined in CDA Release 2, section 4.3.5.1) (CONF:15945). - // todo: put this in narrative if it exists? - - - // SHALL contain exactly one [1..1] statusCode (CONF:7303). This statusCode SHALL contain exactly one [1..1] @code="completed" Completed (CodeSystem: ActStatus 2.16.840.1.113883.5.14 STATIC) (CONF:19119). - // ignore - - // SHALL contain exactly one [1..1] effectiveTime (CONF:7304). - obs.setEffective(convert.makeMatchingTypeFromIVL(cda.getChild(observation, "effectiveTime"))); - - // SHALL contain exactly one [1..1] value with @xsi:type="PQ" (CONF:7305). - obs.setValue(convert.makeQuantityFromPQ(cda.getChild(observation, "value"))); - - // MAY contain zero or one [0..1] interpretationCode (CONF:7307). - obs.setInterpretation(convert.makeCodeableConceptFromCD(cda.getChild(observation, "interpretationCode"))); - - // MAY contain zero or one [0..1] methodCode (CONF:7308). - obs.setMethod(convert.makeCodeableConceptFromCD(cda.getChild(observation, "methodCode"))); - - // MAY contain zero or one [0..1] targetSiteCode (CONF:7309). - obs.setBodySite(convert.makeCodeableConceptFromCD(cda.getChild(observation, "targetSiteCode"))); - - // MAY contain zero or one [0..1] author (CONF:7310). - if (cda.getChild(observation, "author") != null) - obs.getPerformer().add(makeReferenceToPractitionerForAssignedEntity(cda.getChild(observation, "author"), composition)); - - // make a contained practitioner - String n = nextRef(); - obs.setId(n); - list.getContained().add(obs); - return n; - } -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + */ + + +import java.io.InputStream; +import java.util.HashMap; +import java.util.List; +import java.util.Map; +import java.util.UUID; + +import org.hl7.fhir.dstu3.context.IWorkerContext; +import org.hl7.fhir.dstu3.model.AllergyIntolerance; +import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus; +import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality; +import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent; +import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity; +import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType; +import org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus; +import org.hl7.fhir.dstu3.model.Bundle; +import org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent; +import org.hl7.fhir.dstu3.model.CodeableConcept; +import org.hl7.fhir.dstu3.model.Coding; +import org.hl7.fhir.dstu3.model.Comparison; +import org.hl7.fhir.dstu3.model.Composition; +import org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode; +import org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent; +import org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality; +import org.hl7.fhir.dstu3.model.Composition.SectionComponent; +import org.hl7.fhir.dstu3.model.ContactPoint; +import org.hl7.fhir.dstu3.model.Device; +import org.hl7.fhir.dstu3.model.DomainResource; +import org.hl7.fhir.dstu3.model.Encounter; +import org.hl7.fhir.dstu3.model.Extension; +import org.hl7.fhir.dstu3.model.Factory; +import org.hl7.fhir.dstu3.model.Identifier; +import org.hl7.fhir.dstu3.model.InstantType; +import org.hl7.fhir.dstu3.model.ListResource; +import org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent; +import org.hl7.fhir.dstu3.model.Location; +import org.hl7.fhir.dstu3.model.Meta; +import org.hl7.fhir.dstu3.model.Narrative; +import org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus; +import org.hl7.fhir.dstu3.model.Observation; +import org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent; +import org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType; +import org.hl7.fhir.dstu3.model.Observation.ObservationStatus; +import org.hl7.fhir.dstu3.model.Organization; +import org.hl7.fhir.dstu3.model.Patient; +import org.hl7.fhir.dstu3.model.Period; +import org.hl7.fhir.dstu3.model.Practitioner; +import org.hl7.fhir.dstu3.model.Procedure; +import org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent; +import org.hl7.fhir.dstu3.model.Reference; +import org.hl7.fhir.dstu3.model.ResourceFactory; +import org.hl7.fhir.dstu3.utils.NarrativeGenerator; +import org.hl7.fhir.dstu3.utils.ToolingExtensions; +import org.hl7.fhir.exceptions.FHIRException; +import org.hl7.fhir.utilities.ucum.UcumService; +import org.w3c.dom.Element; + +/** +Advance Directives Section 42348-3 : +Allergies, Adverse Reactions, Alerts Section 48765-2 : List(AlleryIntolerance) processAdverseReactionsSection +Anesthesia Section 59774-0 : +Assessment Section 51848-0 : +Assessment and Plan Section 51487-2 : +Chief Complaint Section 10154-3 : +Chief Complaint and Reason for Visit Section 46239-0 : +Complications 55109-3: +DICOM Object Catalog Section - DCM 121181 : +Discharge Diet Section 42344-2 : +Encounters Section 46240-8: +Family History Section 10157-6 : +Findings Section 18782-3 : +Functional Status Section 47420-5 : +General Status Section 10210-3 : +History of Past Illness Section 11348-0 : +History of Present Illness Section 10164-2 : +Hospital Admission Diagnosis Section 46241-6 : +Hospital Consultations Section 18841-7 : +Hospital Course Section 8648-8 : +Hospital Discharge Diagnosis Section 11535-2 : +Hospital Discharge Instructions Section : +Hospital Discharge Medications Section (entries optional) 10183-2 : +Hospital Discharge Physical Section 10184-0 : +Hospital Discharge Studies Summary Section 11493-4 : +Immunizations Section 11369-6 : +Interventions Section 62387-6 : +Medical Equipment Section 46264-8 : +Medical (General) History Section 11329-0 : +Medications Section 10160-0 : +Medications Administered Section 29549-3 : +Objective Section 61149-1 : +Operative Note Fluid Section 10216-0 : +Operative Note Surgical Procedure Section 10223-6 : +Payers Section 48768-6 : +Physical Exam Section 29545-1 : +Plan of Care Section 18776-5 : +Planned Procedure Section 59772-: +Postoperative Diagnosis Section 10218-6 : +Postprocedure Diagnosis Section 59769-0 : +Preoperative Diagnosis Section 10219-4 : +Problem Section 11450-4 : +Procedure Description Section 29554-3: +Procedure Disposition Section 59775-7 : +Procedure Estimated Blood Loss Section 59770-8 : +Procedure Findings Section 59776-5 : +Procedure Implants Section 59771-6 : +Procedure Indications Section 59768-2 : +Procedure Specimens Taken Section 59773-2 : +Procedures Section 47519-4 : List (Procedure) processProceduresSection +Reason for Referral Section 42349-1 : +Reason for Visit Section 29299-5 : +Results Section 30954-2 : +Review of Systems Section 10187-3 : +Social History Section 29762-2 : List (Observation) processSocialHistorySection +Subjective Section 61150-9: +Surgical Drains Section 11537-8 : +Vital Signs Section 8716-3 : List(Observation) processVitalSignsSection + + +MU Sections: +Allergies/Adverse Reactions +Problems +Encounters +Medications +Results +Vital Signs +Procedures +Immunizations +Reason for Referral +Hospital Discharge Instructions +Functional Status +Plan of Care +Hospital Discharge Medication +All of General Header + + * @author Grahame + * + */ +public class CCDAConverter { + + public enum SocialHistoryType { + SocialHistory, Pregnancy, SmokingStatus, TobaccoUse + + } + + + public enum ProcedureType { + Observation, Procedure, Act + + } + + + protected CDAUtilities cda; + protected Element doc; + protected Convert convert; + protected Bundle feed; + protected Composition composition; + protected Map practitionerCache = new HashMap(); + protected Integer refCounter = 0; + protected UcumService ucumSvc; + protected IWorkerContext context; + + + public CCDAConverter(UcumService ucumSvc, IWorkerContext context) { + super(); + this.ucumSvc = ucumSvc; + this.context = context; + } + + + public Bundle convert(InputStream stream) throws Exception { + + cda = new CDAUtilities(stream); + doc = cda.getElement(); + cda.checkTemplateId(doc, "2.16.840.1.113883.10.20.22.1.1"); + convert = new Convert(cda, ucumSvc, "Z"); + + // check it's a CDA/CCD + feed = new Bundle(); + feed.setMeta(new Meta().setLastUpdatedElement(InstantType.now())); + feed.setId(makeUUIDReference()); + feed.getMeta().getTag().add(new Coding()); // todo-bundle ("http://hl7.org/fhir/tag", "http://hl7.org/fhir/tag/document", "Document")); + + // process the header + makeDocument(); + composition.setSubject(Factory.makeReference(makeSubject())); + for (Element e : cda.getChildren(doc, "author")) + composition.getAuthor().add(Factory.makeReference(makeAuthor(e))); + // todo: data enterer & informant goes in provenance + composition.setCustodian(Factory.makeReference(makeOrganization( + cda.getDescendent(doc, "custodian/assignedCustodian/representedCustodianOrganization"), "Custodian"))); + // todo: informationRecipient + for (Element e : cda.getChildren(doc, "legalAuthenticator")) + composition.getAttester().add(makeAttester(e, CompositionAttestationMode.LEGAL, "Legal Authenticator")); + for (Element e : cda.getChildren(doc, "authenticator")) + composition.getAttester().add(makeAttester(e, CompositionAttestationMode.PROFESSIONAL, "Authenticator")); + + // process the contents + // we do this by section - keep the original section order + Element body = cda.getDescendent(doc, "component/structuredBody"); + processComponentSections(composition.getSection(), body); + return feed; + } + + + protected String addReference(DomainResource r, String title, String id) throws Exception { + if (r.getText() == null) + r.setText(new Narrative()); + if (r.getText().getDiv() == null) { + r.getText().setStatus(NarrativeStatus.GENERATED); +// new NarrativeGenerator("", "", context).generate(r); + } + r.setMeta(new Meta().setLastUpdatedElement(InstantType.now())); + r.setId(id); + feed.getEntry().add(new BundleEntryComponent().setResource(r)); + return id; + } + + protected void makeDocument() throws Exception { + composition = (Composition) ResourceFactory.createResource("Composition"); + addReference(composition, "Composition", makeUUIDReference()); + + Element title = cda.getChild(doc, "title"); + composition.setTitle(title.getTextContent()); + + if (cda.getChild(doc, "setId") != null) { + feed.setId(convert.makeURIfromII(cda.getChild(doc, "id"))); + composition.setIdentifier(convert.makeIdentifierFromII(cda.getChild(doc, "setId"))); + } else + composition.setIdentifier(convert.makeIdentifierFromII(cda.getChild(doc, "id"))); // well, we fall back to id + + composition.setDateElement(convert.makeDateTimeFromTS(cda.getChild(doc, "effectiveTime"))); + composition.setType(convert.makeCodeableConceptFromCD(cda.getChild(doc, "code"))); + composition.setConfidentiality(convertConfidentiality(cda.getChild(doc, "confidentialityCode"))); + if (cda.getChild(doc, "confidentialityCode") != null) + composition.setLanguage(cda.getChild(doc, "confidentialityCode").getAttribute("value")); // todo - fix streaming for this + + Element ee = cda.getChild(doc, "componentOf"); + if (ee != null) + ee = cda.getChild(ee, "encompassingEncounter"); + if (ee != null) { + Encounter visit = new Encounter(); + for (Element e : cda.getChildren(ee, "id")) + visit.getIdentifier().add(convert.makeIdentifierFromII(e)); + visit.setPeriod(convert.makePeriodFromIVL(cda.getChild(ee, "effectiveTime"))); + composition.getEvent().add(new Composition.CompositionEventComponent()); + composition.getEvent().get(0).getCode().add(convert.makeCodeableConceptFromCD(cda.getChild(ee, "code"))); + composition.getEvent().get(0).setPeriod(visit.getPeriod()); + composition.getEvent().get(0).getDetail().add(Factory.makeReference(addReference(visit, "Encounter", makeUUIDReference()))); + } + + // main todo: fill out the narrative, but before we can do that, we have to convert everything else + } + + protected DocumentConfidentiality convertConfidentiality(Element child) throws FHIRException, org.hl7.fhir.exceptions.FHIRException { + // TODO Auto-generated method stub + return DocumentConfidentiality.fromCode(child.getAttribute("code")); + } + + + protected String makeSubject() throws Exception { + Element rt = cda.getChild(doc, "recordTarget"); + Element pr = cda.getChild(rt, "patientRole"); + Element p = cda.getChild(pr, "patient"); + + Patient pat = (Patient) ResourceFactory.createResource("Patient"); + for (Element e : cda.getChildren(pr, "id")) + pat.getIdentifier().add(convert.makeIdentifierFromII(e)); + + for (Element e : cda.getChildren(pr, "addr")) + pat.getAddress().add(convert.makeAddressFromAD(e)); + for (Element e : cda.getChildren(pr, "telecom")) + pat.getTelecom().add(convert.makeContactFromTEL(e)); + for (Element e : cda.getChildren(p, "name")) + pat.getName().add(convert.makeNameFromEN(e)); + pat.setGender(convert.makeGenderFromCD(cda.getChild(p, "administrativeGenderCode"))); + pat.setBirthDateElement(convert.makeDateFromTS(cda.getChild(p, "birthTime"))); + pat.setMaritalStatus(convert.makeCodeableConceptFromCD(cda.getChild(p, "maritalStatusCode"))); + pat.getExtension().add(Factory.newExtension(CcdaExtensions.NAME_RELIGION, convert.makeCodeableConceptFromCD(cda.getChild(p, "religiousAffiliationCode")), false)); + pat.getExtension().add(Factory.newExtension(CcdaExtensions.DAF_NAME_RACE, convert.makeCodeableConceptFromCD(cda.getChild(p, "raceCode")), false)); + pat.getExtension().add(Factory.newExtension(CcdaExtensions.DAF_NAME_ETHNICITY, convert.makeCodeableConceptFromCD(cda.getChild(p, "ethnicGroupCode")), false)); + pat.getExtension().add(Factory.newExtension(CcdaExtensions.NAME_BIRTHPLACE, convert.makeAddressFromAD(cda.getChild(p, new String[] {"birthplace", "place", "addr"})), false)); + + Patient.ContactComponent guardian = new Patient.ContactComponent(); + pat.getContact().add(guardian); + guardian.getRelationship().add(Factory.newCodeableConcept("GUARD", "urn:oid:2.16.840.1.113883.5.110", "guardian")); + Element g = cda.getChild(p, "guardian"); + for (Element e : cda.getChildren(g, "addr")) + if (guardian.getAddress() == null) + guardian.setAddress(convert.makeAddressFromAD(e)); + for (Element e : cda.getChildren(g, "telecom")) + guardian.getTelecom().add(convert.makeContactFromTEL(e)); + g = cda.getChild(g, "guardianPerson"); + for (Element e : cda.getChildren(g, "name")) + if (guardian.getName() == null) + guardian.setName(convert.makeNameFromEN(e)); + + Element l = cda.getChild(p, "languageCommunication"); + CodeableConcept cc = new CodeableConcept(); + Coding c = new Coding(); + c.setCode(cda.getChild(l, "languageCode").getAttribute("code")); + cc.getCoding().add(c); + pat.addCommunication().setLanguage(cc); + + // todo: this got broken.... lang.setMode(convert.makeCodeableConceptFromCD(cda.getChild(l, "modeCode"))); + cc.getExtension().add(Factory.newExtension(CcdaExtensions.NAME_LANG_PROF, convert.makeCodeableConceptFromCD(cda.getChild(l, "modeCode")), false)); + pat.getExtension().add(Factory.newExtension(CcdaExtensions.NAME_RELIGION, convert.makeCodeableConceptFromCD(cda.getChild(p, "religiousAffiliationCode")), false)); + pat.setManagingOrganization(Factory.makeReference(makeOrganization(cda.getChild(pr, "providerOrganization"), "Provider"))); + return addReference(pat, "Subject", makeUUIDReference()); + } + + + protected String makeOrganization(Element org, String name) throws Exception { + Organization o = new Organization(); + for (Element e : cda.getChildren(org, "id")) + o.getIdentifier().add(convert.makeIdentifierFromII(e)); + for (Element e : cda.getChildren(org, "name")) + o.setName(e.getTextContent()); + for (Element e : cda.getChildren(org, "addr")) + o.getAddress().add(convert.makeAddressFromAD(e)); + for (Element e : cda.getChildren(org, "telecom")) + o.getTelecom().add(convert.makeContactFromTEL(e)); + + return addReference(o, name, makeUUIDReference()); + } + + protected String makeAuthor(Element auth) throws Exception { + Element aa = cda.getChild(auth, "assignedAuthor"); + Element ap = cda.getChild(aa, "assignedPerson"); + + Practitioner pr = (Practitioner) ResourceFactory.createResource("Practitioner"); + for (Element e : cda.getChildren(aa, "id")) + pr.getIdentifier().add(convert.makeIdentifierFromII(e)); + for (Element e : cda.getChildren(aa, "addr")) + if (pr.getAddress() == null) + pr.getAddress().add(convert.makeAddressFromAD(e)); + for (Element e : cda.getChildren(aa, "telecom")) + pr.getTelecom().add(convert.makeContactFromTEL(e)); + for (Element e : cda.getChildren(ap, "name")) + if (pr.getName() != null) + pr.addName(convert.makeNameFromEN(e)); + + return addReference(pr, "Author", makeUUIDReference()); + } + + + protected String makeUUIDReference() { + return "urn:uuid:"+UUID.randomUUID().toString().toLowerCase(); + } + + + protected CompositionAttesterComponent makeAttester(Element a1, CompositionAttestationMode mode, String title) throws Exception { + Practitioner pr = (Practitioner) ResourceFactory.createResource("Practitioner"); + Element ass = cda.getChild(a1, "assignedEntity"); + for (Element e : cda.getChildren(ass, "id")) + pr.getIdentifier().add(convert.makeIdentifierFromII(e)); + for (Element e : cda.getChildren(ass, "addr")) + if (pr.getAddress() == null) // just take the first + pr.getAddress().add(convert.makeAddressFromAD(e)); + for (Element e : cda.getChildren(ass, "telecom")) + pr.getTelecom().add(convert.makeContactFromTEL(e)); + Element ap = cda.getChild(ass, "assignedPerson"); + for (Element e : cda.getChildren(ap, "name")) + if (pr.getName() == null) // just take the first + pr.addName(convert.makeNameFromEN(e)); + + + CompositionAttesterComponent att = new CompositionAttesterComponent(); + att.addMode(mode); + att.setTimeElement(convert.makeDateTimeFromTS(cda.getChild(a1,"time"))); + att.setParty(Factory.makeReference(addReference(pr, title, makeUUIDReference()))); + return att; + } + + + protected void processComponentSections(List sections, Element container) throws Exception { + for (Element c : cda.getChildren(container, "component")) { + SectionComponent s = processSection(cda.getChild(c, "section")); + if (s != null) + sections.add(s); + } + + } + + + protected SectionComponent processSection(Element section) throws Exception { + checkNoSubject(section, "Section"); + // this we do by templateId + if (cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.6") || cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.6.1")) + return processAdverseReactionsSection(section); + else if (cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.7") || cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.7.1")) + return processProceduresSection(section); + else if (cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.17")) + return processSocialHistorySection(section); + else if (cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.4") || cda.hasTemplateId(section, "2.16.840.1.113883.10.20.22.2.4.1")) + return processVitalSignsSection(section); + else + // todo: error? + return null; + } + + + protected void checkNoSubject(Element act, String path) throws Exception { + if (cda.getChild(act, "subject") != null) + throw new Exception("The conversion program cannot accept a nullFlavor at the location "+path); + } + + + protected SectionComponent processProceduresSection(Element section) throws Exception { + ListResource list = new ListResource(); + for (Element entry : cda.getChildren(section, "entry")) { + Element procedure = cda.getlastChild(entry); + + if (cda.hasTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.14")) { + processProcedure(list, procedure, ProcedureType.Procedure); + } else if (cda.hasTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.13")) { + processProcedure(list, procedure, ProcedureType.Observation); + } else if (cda.hasTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.12")) { + processProcedure(list, procedure, ProcedureType.Act); + } else + throw new Exception("Unhandled Section template ids: "+cda.showTemplateIds(procedure)); + } + + // todo: text + SectionComponent s = new Composition.SectionComponent(); + s.setCode(convert.makeCodeableConceptFromCD(cda.getChild(section, "code"))); + // todo: check subject + s.addEntry(Factory.makeReference(addReference(list, "Procedures", makeUUIDReference()))); + return s; + + } + + protected void processProcedure(ListResource list, Element procedure, ProcedureType type) throws Exception { + switch (type) { + case Procedure : + cda.checkTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.14"); + break; + case Observation: + cda.checkTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.13"); + break; + case Act: + cda.checkTemplateId(procedure, "2.16.840.1.113883.10.20.22.4.12"); + } + checkNoNegationOrNullFlavor(procedure, "Procedure ("+type.toString()+")"); + checkNoSubject(procedure, "Procedure ("+type.toString()+")"); + + Procedure p = new Procedure(); + addItemToList(list, p); + + // moodCode is either INT or EVN. INT is not handled yet. INT is deprecated anyway + if (procedure.getAttribute("moodCode").equals("INT")) + p.getModifierExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-planned", Factory.newBoolean(true), false)); + + // SHALL contain at least one [1..*] id (CONF:7655). + for (Element e : cda.getChildren(procedure, "id")) + p.getIdentifier().add(convert.makeIdentifierFromII(e)); + + // SHALL contain exactly one [1..1] code (CONF:7656). + // This code @code in a procedure activity SHOULD be selected from LOINC or SNOMED CT and MAY be selected from CPT-4, ICD9 Procedures, ICD10 Procedures + p.setCode(convert.makeCodeableConceptFromCD(cda.getChild(procedure, "code"))); + + // SHALL contain exactly one [1..1] statusCode/@code, which SHALL be selected from ValueSet 2.16.840.1.113883.11.20.9.22 ProcedureAct + // completed | active | aborted | cancelled - not in FHIR + p.getModifierExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-status", Factory.newCode(cda.getStatus(procedure)), false)); + + // SHOULD contain zero or one [0..1] effectiveTime (CONF:7662). + p.setPerformed(convert.makePeriodFromIVL(cda.getChild(procedure, "effectiveTime"))); + + // MAY contain zero or one [0..1] priorityCode/@code, which SHALL be selected from ValueSet 2.16.840.1.113883.1.11.16866 ActPriority DYNAMIC (CONF:7668) + p.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-priority", convert.makeCodeableConceptFromCD(cda.getChild(procedure, "priorityCode")), false)); + + // MAY contain zero or one [0..1] methodCode (CONF:7670). + p.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-method", convert.makeCodeableConceptFromCD(cda.getChild(procedure, "methodCode")), false)); + + if (type == ProcedureType.Observation) { + // for Procedure-Observation: + // 9. SHALL contain exactly one [1..1] value (CONF:16846). + // don't know what this is. It's not the actual result of the procedure (that goes in results "This section records ... procedure observations"), and there seems to be no value. The example as which is not valid + // so we ignore this for now + } + + // SHOULD contain zero or more [0..*] targetSiteCode/@code, which SHALL be selected from ValueSet 2.16.840.1.113883.3.88.12.3221.8.9 Body site DYNAMIC (CONF:7683). + for (Element e : cda.getChildren(procedure, "targetSiteCode")) + p.addBodySite(convert.makeCodeableConceptFromCD(e)); + + // MAY contain zero or more [0..*] specimen (CONF:7697). + // todo: add these as extensions when specimens are done. + + // SHOULD contain zero or more [0..*] performer (CONF:7718) such that it + for (Element e : cda.getChildren(procedure, "performer")) { + ProcedurePerformerComponent pp = new ProcedurePerformerComponent(); + p.getPerformer().add(pp); + pp.setActor(makeReferenceToPractitionerForAssignedEntity(e, p)); + } + + for (Element participant : cda.getChildren(procedure, "participant")) { + Element participantRole = cda.getlastChild(participant); + if (type == ProcedureType.Procedure && cda.hasTemplateId(participantRole, "2.16.840.1.113883.10.20.22.4.37")) { + // MAY contain zero or more [0..*] participant (CONF:7751) such that it SHALL contain exactly one [1..1] @typeCode="DEV" Device + // implanted devices + p.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/implanted-devices", Factory.makeReference(processDevice(participantRole, p)), false)); + } else if (cda.hasTemplateId(participantRole, "2.16.840.1.113883.10.20.22.4.32")) { + // MAY contain zero or more [0..*] participant (CONF:7765) such that it SHALL contain exactly one [1..1] Service Delivery Location (templateId:2.16.840.1.113883.10.20.22.4.32) (CONF:7767) + p.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/location", Factory.makeReference(processSDLocation(participantRole, p)), false)); + } + } + + for (Element e : cda.getChildren(procedure, "entryRelationship")) { + Element a /* act*/ = cda.getlastChild(e); + if (a.getLocalName().equals("encounter")) { + // MAY contain zero or more [0..*] entryRelationship (CONF:7768) such that it SHALL contain exactly one encounter which SHALL contain exactly one [1..1] id (CONF:7773). + // todo - and process as a full encounter while we're at it + } else if (cda.hasTemplateId(a, "2.16.840.1.113883.10.20.22.4.20")) { + // MAY contain zero or one [0..1] entryRelationship (CONF:7775) such that it SHALL contain exactly one [1..1] Instructions (templateId:2.16.840.1.113883.10.20.22.4.20) (CONF:7778). + // had code for type, plus text for instructions + Extension n = Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-instructions", null, true); + n.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-instructions-type", convert.makeCodeableConceptFromCD(cda.getChild(a, "code")), false)); + n.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/procedure-instructions-text", convert.makeStringFromED(cda.getChild(a, "text")), false)); + p.getExtension().add(n); + } else if (cda.hasTemplateId(a, "2.16.840.1.113883.10.20.22.4.19")) { + // MAY contain zero or more [0..*] entryRelationship (CONF:7779) such that it SHALL contain exactly one [1..1] Indication (templateId:2.16.840.1.113883.10.20.22.4.19) (CONF:7781). + p.addReasonCode(processIndication(a)); + } else if (cda.hasTemplateId(cda.getlastChild(e), "2.16.840.1.113883.10.20.22.4.16")) { + // MAY contain zero or one [0..1] entryRelationship (CONF:7886) such that it SHALL contain exactly one [1..1] Medication Activity (templateId:2.16.840.1.113883.10.20.22.4.16) (CONF:7888). + // todo + } + } + } + + + protected String processSDLocation(Element participantRole, DomainResource r) throws Exception { + Location l = new Location(); + l.setType(convert.makeCodeableConceptFromCD(cda.getChild(participantRole, "code"))); + for (Element id : cda.getChildren(participantRole, "id")) { + if (l.getIdentifier() == null) + l.getIdentifier().add(convert.makeIdentifierFromII(id)); + } + for (Element addr : cda.getChildren(participantRole, "addr")) { + if (l.getAddress() == null) + l.setAddress(convert.makeAddressFromAD(addr)); + } + + for (Element telecom : cda.getChildren(participantRole, "telecom")) { + l.getTelecom().add(convert.makeContactFromTEL(telecom)); + } + + + Element place = cda.getChild(participantRole, "playingDevice"); + if (cda.getChild(place, "name") != null) + l.setName(cda.getChild(place, "name").getTextContent()); + + String id = nextRef(); + l.setId(id); + r.getContained().add(l); + return "#"+id; + } + + + protected String processDevice(Element participantRole, DomainResource r) throws Exception { + Device d = new Device(); + for (Element id : cda.getChildren(participantRole, "id")) { + // todo: check for UDIs, how? + d.getIdentifier().add(convert.makeIdentifierFromII(id)); + } + Element device = cda.getChild(participantRole, "playingDevice"); + // todo: if (cda.getChild(device, "code") != null) + d.setType(convert.makeCodeableConceptFromCD(cda.getChild(device, "code"))); + + // CCDA has an id - this is manufacturer? We just call it the name, but what to do about this? + Element org = cda.getChild(participantRole, "scopingEntity"); + d.setManufacturer(convert.makeURIfromII(cda.getChild(org, "id"))); + + String id = nextRef(); + d.setId(id); + r.getContained().add(d); + return "#"+id; + } + + + protected CodeableConcept processIndication(Element obs) throws Exception { + Element v = cda.getChild(obs, "value"); + if (v == null) { + // have to find it by ID + Element o = cda.getById(cda.getChild(obs, "id"), "value"); + if (o != null) + v = cda.getChild(obs, "value"); + } + if (v != null) + return convert.makeCodeableConceptFromCD(v); + else + return null; + } + + protected Reference makeReferenceToPractitionerForAssignedEntity(Element assignedEntity, DomainResource r) throws Exception { + + Reference ref = null; + // do we have this by id? + String uri = getIdForEntity(assignedEntity); + Practitioner p = null; + if (uri != null) { + ref = Factory.makeReference(uri); + p = practitionerCache.get(uri); + } + if (p == null) { + p = new Practitioner(); + if (uri == null) { + // make a contained practitioner + String n = nextRef(); + p.setId(n); + r.getContained().add(p); + ref = Factory.makeReference("#"+n); + } else { + // add this to feed + ref = Factory.makeReference(addReference(p, "Practitioner", uri)); + } + } + // ref and p are both sorted. now we fill out p as much as we can (remembering it might already be populated) +// p.addRole().setCode(convert.makeCodeableConceptFromCD(cda.getChild(assignedEntity, "code"))); + for (Element e : cda.getChildren(assignedEntity, "id")) + addToIdList(p.getIdentifier(), convert.makeIdentifierFromII(e)); + for (Element e : cda.getChildren(assignedEntity, "addr")) + if (p.getAddress() == null) + p.getAddress().add(convert.makeAddressFromAD(e)); + for (Element e : cda.getChildren(assignedEntity, "telecom")) + addToContactList(p.getTelecom(), convert.makeContactFromTEL(e)); + for (Element e : cda.getChildren(cda.getChild(assignedEntity, "assignedPerson"), "name")) + if (p.getName() == null) + p.addName(convert.makeNameFromEN(e)); + // todo: + // representedOrganization + return ref; + } + + + protected void addToContactList(List list, ContactPoint c) throws Exception { + for (ContactPoint item : list) { + if (Comparison.matches(item, c, null)) + Comparison.merge(item, c); + } + list.add(c); + } + + + protected void addToIdList(List list, Identifier id) throws Exception { + for (Identifier item : list) { + if (Comparison.matches(item, id, null)) + Comparison.merge(item, id); + } + list.add(id); + } + + + protected void addToCodeableList(List list, CodeableConcept code) throws Exception { + for (CodeableConcept item : list) { + if (Comparison.matches(item, code, null)) + Comparison.merge(item, code); + } + list.add(code); + } + + + protected String getIdForEntity(Element assignedEntity) throws Exception { + Element id = cda.getChild(assignedEntity, "id"); // for now, just grab the first + if (id == null) + return null; + if (id.getAttribute("extension") == null) { + if (convert.isGuid(id.getAttribute("root"))) + return "urn:uuid:"+id.getAttribute("root"); + else + return "urn:oid:"+id.getAttribute("root"); + } else + return "ii:"+id.getAttribute("root")+"::"+id.getAttribute("extension"); + } + + + protected SectionComponent processAdverseReactionsSection(Element section) throws Exception { + ListResource list = new ListResource(); + for (Element entry : cda.getChildren(section, "entry")) { + Element concern = cda.getChild(entry, "act"); + if (cda.hasTemplateId(concern, "2.16.840.1.113883.10.20.22.4.30")) { + processAllergyProblemAct(list, concern); + } else + throw new Exception("Unhandled Section template ids: "+cda.showTemplateIds(concern)); + } + + + // todo: text + SectionComponent s = new Composition.SectionComponent(); + s.setCode(convert.makeCodeableConceptFromCD(cda.getChild(section, "code"))); + // todo: check subject + s.addEntry(Factory.makeReference(addReference(list, "Allergies, Adverse Reactions, Alerts", makeUUIDReference()))); + return s; + } + + + protected void processAllergyProblemAct(ListResource list, Element concern) throws Exception { + cda.checkTemplateId(concern, "2.16.840.1.113883.10.20.22.4.30"); + // Allergy Problem Act - this is a concern - we treat the concern as information about it's place in the list + checkNoNegationOrNullFlavor(concern, "Allergy Problem Act"); + checkNoSubject(concern, "Allergy Problem Act"); + + // SHALL contain at least one [1..*] entryRelationship (CONF:7509) such that it + // SHALL contain exactly one [1..1] Allergy - intolerance Observation + for (Element entry : cda.getChildren(concern, "entryRelationship")) { + Element obs = cda.getChild(entry, "observation"); + cda.checkTemplateId(obs, "2.16.840.1.113883.10.20.22.4.7"); + checkNoNegationOrNullFlavor(obs, "Allergy - intolerance Observation"); + checkNoSubject(obs, "Allergy Problem Act"); + + AllergyIntolerance ai = new AllergyIntolerance(); + ListEntryComponent item = addItemToList(list, ai); + + // this first section comes from the concern, and is processed once for each observation in the concern group + // SHALL contain at least one [1..*] id (CONF:7472). + for (Element e : cda.getChildren(concern, "id")) + ai.getIdentifier().add(convert.makeIdentifierFromII(e)); + + // SHALL contain exactly one [1..1] statusCode, which SHALL be selected from ValueSet 2.16.840.1.113883.3.88.12.80.68 HITSPProblemStatus DYNAMIC (CONF:7485) + // the status code is about the concern (e.g. the entry in the list) + // possible values: active, suspended, aborted, completed, with an effective time + String s = cda.getStatus(concern); + item.setFlag(Factory.newCodeableConcept(s, "http://hl7.org/fhir/v3/ActStatus", s)); + if (s.equals("aborted")) // only on this condition? + item.setDeleted(true); + + // SHALL contain exactly one [1..1] effectiveTime (CONF:7498) + Period p = convert.makePeriodFromIVL(cda.getChild(concern, "effectiveTime")); + item.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/list-period", p, false)); + if (p.getEnd() != null) + item.setDate(p.getEnd()); + else + item.setDate(p.getStart()); + + //ok, now process the actual observation + // SHALL contain at least one [1..*] id (CONF:7382) + for (Element e : cda.getChildren(obs, "id")) + ai.getIdentifier().add(convert.makeIdentifierFromII(e)); + + + // SHALL contain exactly one [1..1] effectiveTime (CONF:7387) + ai.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/allergyintolerance-period", convert.makePeriodFromIVL(cda.getChild(obs, "effectiveTime")), false)); + + // SHALL contain exactly one [1..1] value with @xsi:type="CD" (CONF:7390) + CodeableConcept type = convert.makeCodeableConceptFromCD(cda.getChild(obs, "value")); + // This value SHALL contain @code, which SHALL be selected from ValueSet 2.16.840.1.113883.3.88.12.3221.6.2 Allergy/Adverse Event Type + String ss = type.getCoding().get(0).getCode(); + if (ss.equals("416098002") || ss.equals("414285001")) + ai.setType(AllergyIntoleranceType.ALLERGY); + else if (ss.equals("59037007") || ss.equals("235719002")) + ai.setType(AllergyIntoleranceType.INTOLERANCE); + ai.getExtension().add(Factory.newExtension("http://www.healthintersections.com.au/fhir/extensions/allergy-category", type, false)); + + // SHOULD contain zero or one [0..1] participant (CONF:7402) such that it + // ......This playingEntity SHALL contain exactly one [1..1] code + ai.setCode(convert.makeCodeableConceptFromCD(cda.getDescendent(obs, "participant/participantRole/playingEntity/code"))); + + // MAY contain zero or one [0..1] entryRelationship (CONF:7440) such that it SHALL contain exactly one [1..1] Alert Status Observation + // SHOULD contain zero or more [0..*] entryRelationship (CONF:7447) such that it SHALL contain exactly one [1..1] Reaction Observation (templateId:2.16.840.1.113883.10.20.22.4.9) (CONF:7450). + for (Element e : cda.getChildren(obs, "entryRelationship")) { + Element child = cda.getChild(e, "observation"); + if (cda.hasTemplateId(child, "2.16.840.1.113883.10.20.22.4.28") && ai.getClinicalStatus() == null) { + // SHALL contain exactly one [1..1] value with @xsi:type="CE", where the @code SHALL be selected from ValueSet Problem Status Value Set 2.16.840.1.113883.3.88.12.80.68 DYNAMIC (CONF:7322). + // 55561003 SNOMED CT Active + // 73425007 SNOMED CT Inactive + // 413322009 SNOMED CT Resolved + String sc = cda.getChild(child, "value").getAttribute("code"); + if (sc.equals("55561003")) { + ai.setClinicalStatus(AllergyIntoleranceClinicalStatus.ACTIVE); + ai.setVerificationStatus(AllergyIntoleranceVerificationStatus.CONFIRMED); + } else + ai.setClinicalStatus(AllergyIntoleranceClinicalStatus.RESOLVED); + } else if (cda.hasTemplateId(child, "2.16.840.1.113883.10.20.22.4.9")) { + ai.getReaction().add(processAdverseReactionObservation(child)); + } + } + + // SHOULD contain zero or one [0..1] entryRelationship (CONF:9961) such that it SHALL contain exactly one [1..1] Severity Observation (templateId:2.16.840.1.113883.10.20.22.4.8) (CONF:9963). + ai.setCriticality(readCriticality(cda.getSeverity(obs))); + } + } + + + // this is going to be a contained resource, so we aren't going to generate any narrative + protected AllergyIntoleranceReactionComponent processAdverseReactionObservation(Element reaction) throws Exception { + checkNoNegationOrNullFlavor(reaction, "Adverse Reaction Observation"); + checkNoSubject(reaction, "Adverse Reaction Observation"); + + // This clinical statement represents an undesired symptom, finding, etc., due to an administered or exposed substance. A reaction can be defined with respect to its severity, and can have been treated by one or more interventions. + AllergyIntoleranceReactionComponent ar = new AllergyIntoleranceReactionComponent(); + + // SHALL contain exactly one [1..1] id (CONF:7329). + for (Element e : cda.getChildren(reaction, "id")) + ToolingExtensions.addIdentifier(ar, convert.makeIdentifierFromII(e)); + + // SHALL contain exactly one [1..1] code (CONF:7327). The value set for this code element has not been specified. + // todo: what the heck is this? + + // SHOULD contain zero or one [0..1] text (CONF:7330). + // todo: so what is this? how can we know whether to ignore it? + + // 8. SHOULD contain zero or one [0..1] effectiveTime (CONF:7332). + // a. This effectiveTime SHOULD contain zero or one [0..1] low (CONF:7333). + // b. This effectiveTime SHOULD contain zero or one [0..1] high (CONF:7334). + // !this is a problem because FHIR just has a date, not a period. + ar.setOnsetElement(convert.makeDateTimeFromIVL(cda.getChild(reaction, "effectiveTime"))); + + // SHALL contain exactly one [1..1] value with @xsi:type="CD", where the @code SHALL be selected from ValueSet 2.16.840.1.113883.3.88.12.3221.7.4 Problem DYNAMIC (CONF:7335). + ar.getManifestation().add(convert.makeCodeableConceptFromCD(cda.getChild(reaction, "value"))); + + // SHOULD contain zero or one [0..1] entryRelationship (CONF:7580) such that it SHALL contain exactly one [1..1] Severity Observation (templateId:2.16.840.1.113883.10.20.22.4.8) (CONF:7582). + ar.setSeverity(readSeverity(cda.getSeverity(reaction))); + + // MAY contain zero or more [0..*] entryRelationship (CONF:7337) such that it SHALL contain exactly one [1..1] Procedure Activity Procedure (templateId:2.16.840.1.113883.10.20.22.4.14) (CONF:7339). + // i. This procedure activity is intended to contain information about procedures that were performed in response to an allergy reaction + // todo: process these into an procedure and add as an extension + + // MAY contain zero or more [0..*] entryRelationship (CONF:7340) such that it SHALL contain exactly one [1..1] Medication Activity (templateId:2.16.840.1.113883.10.20.22.4.16) (CONF:7342). + // i. This medication activity is intended to contain information about medications that were administered in response to an allergy reaction. (CONF:7584). + // todo: process these into an medication statement and add as an extension + + return ar; + } + + + protected SectionComponent processSocialHistorySection(Element section) throws Exception { + ListResource list = new ListResource(); + for (Element entry : cda.getChildren(section, "entry")) { + Element observation = cda.getlastChild(entry); + + if (cda.hasTemplateId(observation, "2.16.840.1.113883.10.20.22.4.38")) { + processSocialObservation(list, observation, SocialHistoryType.SocialHistory); + } else if (cda.hasTemplateId(observation, "2.16.840.1.113883.10.20.15.3.8")) { + processSocialObservation(list, observation, SocialHistoryType.Pregnancy); + } else if (cda.hasTemplateId(observation, "2.16.840.1.113883.10.20.22.4.78")) { + processSocialObservation(list, observation, SocialHistoryType.SmokingStatus); + } else if (cda.hasTemplateId(observation, "2.16.840.1.113883.10.20.22.4.85")) { + processSocialObservation(list, observation, SocialHistoryType.TobaccoUse); + } else + throw new Exception("Unhandled Section template ids: "+cda.showTemplateIds(observation)); + } + + // todo: text + SectionComponent s = new Composition.SectionComponent(); + s.setCode(convert.makeCodeableConceptFromCD(cda.getChild(section, "code"))); + // todo: check subject + s.addEntry(Factory.makeReference(addReference(list, "Procedures", makeUUIDReference()))); + return s; + + } + + + + protected void processSocialObservation(ListResource list, Element so, SocialHistoryType type) throws Exception { + Observation obs = new Observation(); + addItemToList(list, obs); + + switch (type) { + case SocialHistory : + cda.checkTemplateId(so, "2.16.840.1.113883.10.20.22.4.38"); + // SHALL contain exactly one [1..1] code (CONF:8558/). + obs.setCode(convert.makeCodeableConceptFromCD(cda.getChild(so, "code"))); + break; + case Pregnancy: + cda.checkTemplateId(so, "2.16.840.1.113883.10.20.15.3.8"); + // SHALL contain exactly one [1..1] code (CONF:8558/), which SHALL be an assertion + obs.setCode(Factory.newCodeableConcept("11449-6", "http://loinc.org", "Pregnancy Status")); + break; + case SmokingStatus: + cda.checkTemplateId(so, "2.16.840.1.113883.10.20.22.4.78"); + // SHALL contain exactly one [1..1] code (CONF:8558/), which SHALL be an assertion + obs.setCode(Factory.newCodeableConcept("72166-2", "http://loinc.org", "Tobacco Smoking Status")); + break; + case TobaccoUse: + cda.checkTemplateId(so, "2.16.840.1.113883.10.20.22.4.12"); + // SHALL contain exactly one [1..1] code (CONF:8558/), which SHALL be an assertion + obs.setCode(Factory.newCodeableConcept("11367-0", "http://loinc.org", "History of Tobacco Use")); + } + + // SHALL contain at least one [1..*] id (8551). + for (Element e : cda.getChildren(so, "id")) + obs.getIdentifier().add(convert.makeIdentifierFromII(e)); + + + // SHALL contain exactly one [1..1] statusCode (CONF:8553/455/14809). + // a. This statusCode SHALL contain exactly one [1..1] @code="completed" Completed (CodeSystem: ActStatus 2.16.840.1.113883.5.14 STATIC) (CONF:19117). + obs.setStatus(ObservationStatus.FINAL); + + // SHOULD contain zero or one [0..1] effectiveTime (CONF:2018/14814). + // for smoking status/tobacco: low only. in R2, this is just value. So we treat low only as just a value + Element et = cda.getChild(so, "effectiveTime"); + if (et != null) { + if (cda.getChild(et, "low") != null) + obs.setEffective(convert.makeDateTimeFromTS(cda.getChild(et, "low"))); + else + obs.setEffective(convert.makeDateTimeFromIVL(et)); + } + + // SHOULD contain zero or one [0..1] value (CONF:8559). + // a. Observation/value can be any data type. + for (Element e : cda.getChildren(so, "value")) + if (obs.getValue() == null) { // only one in FHIR + // special case for pregnancy: + if (type == SocialHistoryType.Pregnancy && "true".equals(e.getAttribute("negationInd"))) { + obs.setValue(Factory.newCodeableConcept("60001007", "http://snomed.info/sct", "Not pregnant")); + } else { + // negationInd is not described. but it might well be used. For now, we blow up + checkNoNegation(so, "Social Observation ("+type.toString()+")"); + + if (so.hasAttribute("nullFlavor")) + obs.setValue(convert.makeCodeableConceptFromNullFlavor(so.getAttribute("nullFlavor"))); + else if (e.hasAttribute("nullFlavor") && !"OTH".equals(e.getAttribute("nullFlavor"))) + obs.setValue(convert.makeCodeableConceptFromNullFlavor(e.getAttribute("nullFlavor"))); + else + obs.setValue(convert.makeTypeFromANY(e)); + } + } else + throw new Exception("too many values on Social Observation"); + + if (type == SocialHistoryType.Pregnancy) { + for (Element e : cda.getChildren(so, "entyRelationship")) { + Element dd = cda.getChild(e, "observation"); + checkNoNegationOrNullFlavor(dd, "Estimated Date of Delivery"); + // MAY contain zero or one [0..1] entryRelationship (CONF:458) such that it + // SHALL contain exactly one [1..1] @typeCode="REFR" Refers to (CodeSystem: HL7ActRelationshipType 2.16.840.1.113883.5.1002 STATIC) (CONF:459). + // SHALL contain exactly one [1..1] Estimated Date of Delivery (templateId:2.16.840.1.113883.10.20.15.3.1) (CONF:15584). + Observation co = new Observation(); + String id = nextRef(); + co.setId(id); + obs.getContained().add(co); + ObservationRelatedComponent or = new ObservationRelatedComponent(); + obs.getRelated().add(or); + or.setType(ObservationRelationshipType.HASMEMBER); + or.setTarget(Factory.makeReference("#"+id)); + co.setCode(Factory.newCodeableConcept("11778-8", "http://loinc.org", "Delivery date Estimated")); + co.setValue(convert.makeDateTimeFromTS(cda.getChild(dd, "value"))); // not legal, see gForge http://gforge.hl7.org/gf/project/fhir/tracker/?action=TrackerItemEdit&tracker_item_id=3125&start=0 + } + } + } + + + protected void checkNoNegation(Element act, String path) throws Exception { + if ("true".equals(act.getAttribute("negationInd"))) + throw new Exception("The conversion program cannot accept a negationInd at the location "+path); + } + + protected void checkNoNegationOrNullFlavor(Element act, String path) throws Exception { + if (act.hasAttribute("nullFlavor")) + throw new Exception("The conversion program cannot accept a nullFlavor at the location "+path); + if ("true".equals(act.getAttribute("negationInd"))) + throw new Exception("The conversion program cannot accept a negationInd at the location "+path); + } + + + protected ListEntryComponent addItemToList(ListResource list, DomainResource ai) + throws Exception { + list.getContained().add(ai); + String n = nextRef(); + ai.setId(n); + ListEntryComponent item = new ListResource.ListEntryComponent(); + list.getEntry().add(item); + item.setItem(Factory.makeReference("#"+n)); + return item; + } + + + protected String nextRef() { + refCounter++; + String n = refCounter.toString(); + return n; + } + + protected AllergyIntoleranceCriticality readCriticality(String severity) { + if ("255604002".equals(severity)) // Mild + return AllergyIntoleranceCriticality.LOW; + if ("371923003".equals(severity)) // Mild to moderate + return AllergyIntoleranceCriticality.LOW; + if ("6736007".equals(severity)) // Moderate + return AllergyIntoleranceCriticality.LOW; + if ("371924009".equals(severity)) // Moderate to severe + return AllergyIntoleranceCriticality.HIGH; + if ("24484000".equals(severity)) // Severe + return AllergyIntoleranceCriticality.HIGH; + if ("399166001".equals(severity)) // Fatal + return AllergyIntoleranceCriticality.HIGH; + return null; + } + + + protected AllergyIntoleranceSeverity readSeverity(String severity) { + if ("255604002".equals(severity)) // Mild + return AllergyIntoleranceSeverity.MILD; + if ("371923003".equals(severity)) // Mild to moderate + return AllergyIntoleranceSeverity.MODERATE; + if ("6736007".equals(severity)) // Moderate + return AllergyIntoleranceSeverity.MODERATE; + if ("371924009".equals(severity)) // Moderate to severe + return AllergyIntoleranceSeverity.SEVERE; + if ("24484000".equals(severity)) // Severe + return AllergyIntoleranceSeverity.SEVERE; + if ("399166001".equals(severity)) // Fatal + return AllergyIntoleranceSeverity.SEVERE; + return null; + } + + + protected SectionComponent processVitalSignsSection(Element section) throws Exception { + ListResource list = new ListResource(); + for (Element entry : cda.getChildren(section, "entry")) { + Element organizer = cda.getlastChild(entry); + + if (cda.hasTemplateId(organizer, "2.16.840.1.113883.10.20.22.4.26")) { + processVitalSignsOrganizer(list, organizer); + } else + throw new Exception("Unhandled Section template ids: "+cda.showTemplateIds(organizer)); + } + + // todo: text + SectionComponent s = new Composition.SectionComponent(); + s.setCode(convert.makeCodeableConceptFromCD(cda.getChild(section, "code"))); + // todo: check subject + s.addEntry(Factory.makeReference(addReference(list, "Vital Signs", makeUUIDReference()))); + return s; + + } + + protected void processVitalSignsOrganizer(ListResource list, Element organizer) throws Exception { + + cda.checkTemplateId(organizer, "2.16.840.1.113883.10.20.22.4.26"); + checkNoNegationOrNullFlavor(organizer, "Vital Signs Organizer"); + checkNoSubject(organizer, "Vital Signs Organizer"); + // moodCode is EVN. + + Observation obs = new Observation(); + addItemToList(list, obs); + + // SHALL contain at least one [1..*] id (CONF:7282). + for (Element e : cda.getChildren(organizer, "id")) + obs.getIdentifier().add(convert.makeIdentifierFromII(e)); + + // SHALL contain exactly one [1..1] code (CONF:19176). + // This code SHALL contain exactly one [1..1] @code="46680005" Vital signs (CodeSystem: SNOMED-CT 2.16.840.1.113883.6.96 STATIC) (CONF:19177). + obs.setCode(convert.makeCodeableConceptFromCD(cda.getChild(organizer, "code"))); + + + // SHALL contain exactly one [1..1] effectiveTime (CONF:7288). + obs.setEffective(convert.makeMatchingTypeFromIVL(cda.getChild(organizer, "effectiveTime"))); + + // SHALL contain at least one [1..*] component (CONF:7285) such that it + // SHALL contain exactly one [1..1] Vital Sign Observation (templateId:2.16.840.1.113883.10.20.22.4.27) (CONF:15946). + for (Element e : cda.getChildren(organizer, "component")){ + ObservationRelatedComponent ro = new ObservationRelatedComponent(); + ro.setType(ObservationRelationshipType.HASMEMBER); + ro.setTarget(Factory.makeReference("#"+processVitalSignsObservation(e, list))); + } + } + + + protected String processVitalSignsObservation(Element comp, ListResource list) throws Exception { + Element observation = cda.getChild(comp, "observation"); + cda.checkTemplateId(observation, "2.16.840.1.113883.10.20.22.4.27"); + checkNoNegationOrNullFlavor(observation, "Vital Signs Observation"); + checkNoSubject(observation, "Vital Signs Observation"); + + Observation obs = new Observation(); + + // SHALL contain at least one [1..*] id (CONF:7300). + for (Element e : cda.getChildren(observation, "id")) + obs.getIdentifier().add(convert.makeIdentifierFromII(e)); + + // SHALL contain exactly one [1..1] code, which SHOULD be selected from ValueSet Vital Sign Result Value Set 2.16.840.1.113883.3.88.12.80.62 DYNAMIC (CONF:7301). + obs.setCode(convert.makeCodeableConceptFromCD(cda.getChild(observation, "code"))); // all loinc codes + + // SHOULD contain zero or one [0..1] text (CONF:7302). + // The text, if present, SHOULD contain zero or one [0..1] reference (CONF:15943). + // The reference, if present, SHOULD contain zero or one [0..1] @value (CONF:15944). + // This reference/@value SHALL begin with a '#' and SHALL point to its corresponding narrative (using the approach defined in CDA Release 2, section 4.3.5.1) (CONF:15945). + // todo: put this in narrative if it exists? + + + // SHALL contain exactly one [1..1] statusCode (CONF:7303). This statusCode SHALL contain exactly one [1..1] @code="completed" Completed (CodeSystem: ActStatus 2.16.840.1.113883.5.14 STATIC) (CONF:19119). + // ignore + + // SHALL contain exactly one [1..1] effectiveTime (CONF:7304). + obs.setEffective(convert.makeMatchingTypeFromIVL(cda.getChild(observation, "effectiveTime"))); + + // SHALL contain exactly one [1..1] value with @xsi:type="PQ" (CONF:7305). + obs.setValue(convert.makeQuantityFromPQ(cda.getChild(observation, "value"))); + + // MAY contain zero or one [0..1] interpretationCode (CONF:7307). + obs.setInterpretation(convert.makeCodeableConceptFromCD(cda.getChild(observation, "interpretationCode"))); + + // MAY contain zero or one [0..1] methodCode (CONF:7308). + obs.setMethod(convert.makeCodeableConceptFromCD(cda.getChild(observation, "methodCode"))); + + // MAY contain zero or one [0..1] targetSiteCode (CONF:7309). + obs.setBodySite(convert.makeCodeableConceptFromCD(cda.getChild(observation, "targetSiteCode"))); + + // MAY contain zero or one [0..1] author (CONF:7310). + if (cda.getChild(observation, "author") != null) + obs.getPerformer().add(makeReferenceToPractitionerForAssignedEntity(cda.getChild(observation, "author"), composition)); + + // make a contained practitioner + String n = nextRef(); + obs.setId(n); + list.getContained().add(obs); + return n; + } +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CDAUtilities.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CDAUtilities.java index f18b902d985..2b632dcb420 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CDAUtilities.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CDAUtilities.java @@ -1,261 +1,282 @@ -package org.hl7.fhir.convertors; - - -/* - Copyright (c) 2011+, HL7, Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without modification, - are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of HL7 nor the names of its contributors may be used to - endorse or promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - -*/ - -import java.io.InputStream; -import java.util.ArrayList; -import java.util.List; - -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; - -import org.hl7.fhir.utilities.CommaSeparatedStringBuilder; -import org.hl7.fhir.utilities.xml.XMLUtil; -import org.w3c.dom.Document; -import org.w3c.dom.Element; -import org.w3c.dom.Node; - -public class CDAUtilities { - - private Document doc; - - public CDAUtilities(InputStream stream) throws Exception { - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); - factory.setNamespaceAware(true); - DocumentBuilder builder = factory.newDocumentBuilder(); - - doc = builder.parse(stream); - basicChecks(); - } - - private void basicChecks() throws Exception { - Element e = doc.getDocumentElement(); - rule(e.getNamespaceURI().equals("urn:hl7-org:v3"), "CDA namespace must be "); - rule(e.getNodeName().equals("ClinicalDocument"), "CDA root name must be ClinicalDocument"); - - } - - private void rule(boolean test, String message) throws Exception { - if (!test) - throw new Exception(message); - - } - - public Element getElement() { - return doc.getDocumentElement(); - } - - public void checkTemplateId(Element e, String templateId) throws Exception { - rule(hasTemplateId(e, templateId), "Template Id '"+templateId+"' not found"); - - } - - public Element getChild(Element e, String[] names) throws Exception { - for (String n : names) { - if (e == null) - return null; - e = getChild(e, n); - } - return e; - } - - public Element getChild(Element element, String name) throws Exception { - if (element == null) - return null; - - Element e = null; - Node n = element.getFirstChild(); - while (n != null) { - if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equals(name)) { - if (e == null) { - e = (Element) n; - } else { - throw new Exception("multiple matches found for "+name); - } - } - n = n.getNextSibling(); - } - return e; - } - - public Element getChildByAttribute(Element element, String name, String attrname, String value) throws Exception { - if (element == null) - return null; - - Element e = null; - Node n = element.getFirstChild(); - while (n != null) { - if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equals(name) && value.equals(((Element) n).getAttribute(attrname))) { - if (e == null) { - e = (Element) n; - } else { - throw new Exception("multiple matches found for "+name); - } - } - n = n.getNextSibling(); - } - return e; - } - - - public List getChildren(Element element, String name) { - List l = new ArrayList(); - if (element != null) { - Node n = element.getFirstChild(); - while (n != null) { - if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equals(name)) { - l.add((Element) n); - } - n = n.getNextSibling(); - } - } - return l; - } - - public Element getDescendent(Element element, String path) throws Exception { - String[] p = path.split("\\/"); - return getDescendent(element, p); - } - - public Element getDescendent(Element e, String[] path) throws Exception { - for (String n : path) { - if (e == null) - return e; - e = getChild(e, n); - } - return e; - } - - public boolean hasTemplateId(Element e, String tid) { - if (e == null) - return false; - boolean found = false; - Node n = e.getFirstChild(); - while (n != null && !found) { - if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equals("templateId") && tid.equals(((Element) n).getAttribute("root"))) - found = true; - n = n.getNextSibling(); - } - return found; - } - - public String getStatus(Element act) throws Exception { - if (act == null) - return null; - Element sc = getChild(act, "statusCode"); - if (sc == null) - return null; - else - return sc.getAttribute("code"); - } - - public String getSeverity(Element observation) throws Exception { - for (Element e : getChildren(observation, "entryRelationship")) { - Element child = getChild(e, "observation"); - if (hasTemplateId(child, "2.16.840.1.113883.10.20.22.4.8")) - return getChild(child, "value").getAttribute("code"); - } - return null; - } - - public String showTemplateIds(Element element) { - List list = getChildren(element, "templateId"); - CommaSeparatedStringBuilder b = new CommaSeparatedStringBuilder(); - for (Element e : list) { - if (e.hasAttribute("extension")) - b.append(e.getAttribute("root")+"::"+e.getAttribute("extension")); - else - b.append(e.getAttribute("root")); - } - return b.toString(); - } - - public Element getlastChild(Element e) { - Node n = e.getLastChild(); - while (n != null && n.getNodeType() != Node.ELEMENT_NODE) - n = n.getPreviousSibling(); - return n == null ? null : (Element) n; - } - - /** - * This method looks up an object by it's id, and only returns it if has a child by the given name - * (resolving identifier based cross references) - * - * @param id - * @param childName - * @return - * @throws Exception - */ - public Element getById(Element id, String childName) throws Exception { - return getById(doc.getDocumentElement(), id, childName); - } - - private Element getById(Element e, Element id, String childName) throws Exception { - Element c = XMLUtil.getFirstChild(e); - while (c != null) { - Element i = getChild(c, "id"); - if (i != null && matchesAsId(i, id) && getChild(c, childName) != null) - return c; - Element m = getById(c, id, childName); - if (m != null) - return m; - c = XMLUtil.getNextSibling(c); - } - return null; - } - - private boolean matchesAsId(Element i1, Element i2) { - String r1 = i1.getAttribute("root"); - String r2 = i2.getAttribute("root"); - String e1 = i1.getAttribute("extension"); - String e2 = i2.getAttribute("extension"); - return (r1 != null && r1.equals(r2)) && ((e1 == null && e2 == null) || (e1 != null && e1.equals(e2))); - } - - public Element getByXmlId(String id) { - return getByXmlId(doc.getDocumentElement(), id); - } - - private Element getByXmlId(Element e, String value) { - Element c = XMLUtil.getFirstChild(e); - while (c != null) { - String id = c.getAttribute("ID"); - if (id != null && id.equals(value)) - return c; - Element m = getByXmlId(c, value); - if (m != null) - return m; - c = XMLUtil.getNextSibling(c); - } - return null; - } - -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +*/ + +import java.io.InputStream; +import java.util.ArrayList; +import java.util.List; + +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; + +import org.hl7.fhir.utilities.CommaSeparatedStringBuilder; +import org.hl7.fhir.utilities.xml.XMLUtil; +import org.w3c.dom.Document; +import org.w3c.dom.Element; +import org.w3c.dom.Node; + +public class CDAUtilities { + + private Document doc; + + public CDAUtilities(InputStream stream) throws Exception { + DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); + factory.setNamespaceAware(true); + DocumentBuilder builder = factory.newDocumentBuilder(); + + doc = builder.parse(stream); + basicChecks(); + } + + private void basicChecks() throws Exception { + Element e = doc.getDocumentElement(); + rule(e.getNamespaceURI().equals("urn:hl7-org:v3"), "CDA namespace must be "); + rule(e.getNodeName().equals("ClinicalDocument"), "CDA root name must be ClinicalDocument"); + + } + + private void rule(boolean test, String message) throws Exception { + if (!test) + throw new Exception(message); + + } + + public Element getElement() { + return doc.getDocumentElement(); + } + + public void checkTemplateId(Element e, String templateId) throws Exception { + rule(hasTemplateId(e, templateId), "Template Id '"+templateId+"' not found"); + + } + + public Element getChild(Element e, String[] names) throws Exception { + for (String n : names) { + if (e == null) + return null; + e = getChild(e, n); + } + return e; + } + + public Element getChild(Element element, String name) throws Exception { + if (element == null) + return null; + + Element e = null; + Node n = element.getFirstChild(); + while (n != null) { + if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equals(name)) { + if (e == null) { + e = (Element) n; + } else { + throw new Exception("multiple matches found for "+name); + } + } + n = n.getNextSibling(); + } + return e; + } + + public Element getChildByAttribute(Element element, String name, String attrname, String value) throws Exception { + if (element == null) + return null; + + Element e = null; + Node n = element.getFirstChild(); + while (n != null) { + if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equals(name) && value.equals(((Element) n).getAttribute(attrname))) { + if (e == null) { + e = (Element) n; + } else { + throw new Exception("multiple matches found for "+name); + } + } + n = n.getNextSibling(); + } + return e; + } + + + public List getChildren(Element element, String name) { + List l = new ArrayList(); + if (element != null) { + Node n = element.getFirstChild(); + while (n != null) { + if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equals(name)) { + l.add((Element) n); + } + n = n.getNextSibling(); + } + } + return l; + } + + public Element getDescendent(Element element, String path) throws Exception { + String[] p = path.split("\\/"); + return getDescendent(element, p); + } + + public Element getDescendent(Element e, String[] path) throws Exception { + for (String n : path) { + if (e == null) + return e; + e = getChild(e, n); + } + return e; + } + + public boolean hasTemplateId(Element e, String tid) { + if (e == null) + return false; + boolean found = false; + Node n = e.getFirstChild(); + while (n != null && !found) { + if (n.getNodeType() == Node.ELEMENT_NODE && n.getNodeName().equals("templateId") && tid.equals(((Element) n).getAttribute("root"))) + found = true; + n = n.getNextSibling(); + } + return found; + } + + public String getStatus(Element act) throws Exception { + if (act == null) + return null; + Element sc = getChild(act, "statusCode"); + if (sc == null) + return null; + else + return sc.getAttribute("code"); + } + + public String getSeverity(Element observation) throws Exception { + for (Element e : getChildren(observation, "entryRelationship")) { + Element child = getChild(e, "observation"); + if (hasTemplateId(child, "2.16.840.1.113883.10.20.22.4.8")) + return getChild(child, "value").getAttribute("code"); + } + return null; + } + + public String showTemplateIds(Element element) { + List list = getChildren(element, "templateId"); + CommaSeparatedStringBuilder b = new CommaSeparatedStringBuilder(); + for (Element e : list) { + if (e.hasAttribute("extension")) + b.append(e.getAttribute("root")+"::"+e.getAttribute("extension")); + else + b.append(e.getAttribute("root")); + } + return b.toString(); + } + + public Element getlastChild(Element e) { + Node n = e.getLastChild(); + while (n != null && n.getNodeType() != Node.ELEMENT_NODE) + n = n.getPreviousSibling(); + return n == null ? null : (Element) n; + } + + /** + * This method looks up an object by it's id, and only returns it if has a child by the given name + * (resolving identifier based cross references) + * + * @param id + * @param childName + * @return + * @throws Exception + */ + public Element getById(Element id, String childName) throws Exception { + return getById(doc.getDocumentElement(), id, childName); + } + + private Element getById(Element e, Element id, String childName) throws Exception { + Element c = XMLUtil.getFirstChild(e); + while (c != null) { + Element i = getChild(c, "id"); + if (i != null && matchesAsId(i, id) && getChild(c, childName) != null) + return c; + Element m = getById(c, id, childName); + if (m != null) + return m; + c = XMLUtil.getNextSibling(c); + } + return null; + } + + private boolean matchesAsId(Element i1, Element i2) { + String r1 = i1.getAttribute("root"); + String r2 = i2.getAttribute("root"); + String e1 = i1.getAttribute("extension"); + String e2 = i2.getAttribute("extension"); + return (r1 != null && r1.equals(r2)) && ((e1 == null && e2 == null) || (e1 != null && e1.equals(e2))); + } + + public Element getByXmlId(String id) { + return getByXmlId(doc.getDocumentElement(), id); + } + + private Element getByXmlId(Element e, String value) { + Element c = XMLUtil.getFirstChild(e); + while (c != null) { + String id = c.getAttribute("ID"); + if (id != null && id.equals(value)) + return c; + Element m = getByXmlId(c, value); + if (m != null) + return m; + c = XMLUtil.getNextSibling(c); + } + return null; + } + +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CcdaExtensions.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CcdaExtensions.java index b7e62ed311b..6a31cba8096 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CcdaExtensions.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/CcdaExtensions.java @@ -1,13 +1,34 @@ -package org.hl7.fhir.convertors; - -public class CcdaExtensions { - public final static String DAF_NAME_RACE = "http://hl7.org/fhir/StructureDefinition/us-core-race"; - public final static String DAF_NAME_ETHNICITY = "http://hl7.org/fhir/StructureDefinition/us-core-ethnicity"; - - public final static String BASE = "http://hl7.org/ccda"; - public final static String NAME_RELIGION = BASE+"/religious-affiliation"; - public final static String NAME_BIRTHPLACE = BASE+"birthplace"; - public final static String NAME_LANG_PROF = BASE+"proficiency-level"; - - -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + +public class CcdaExtensions { + public final static String DAF_NAME_RACE = "http://hl7.org/fhir/StructureDefinition/us-core-race"; + public final static String DAF_NAME_ETHNICITY = "http://hl7.org/fhir/StructureDefinition/us-core-ethnicity"; + + public final static String BASE = "http://hl7.org/ccda"; + public final static String NAME_RELIGION = BASE+"/religious-affiliation"; + public final static String NAME_BIRTHPLACE = BASE+"birthplace"; + public final static String NAME_LANG_PROF = BASE+"proficiency-level"; + + +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/Convert.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/Convert.java index 089b2caf359..70a070b5264 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/Convert.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/Convert.java @@ -1,627 +1,648 @@ -package org.hl7.fhir.convertors; - - -/* - Copyright (c) 2011+, HL7, Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without modification, - are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of HL7 nor the names of its contributors may be used to - endorse or promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - -*/ - - -import java.math.BigDecimal; -import java.util.HashSet; -import java.util.List; -import java.util.Set; -import java.util.UUID; - -import org.hl7.fhir.dstu3.model.Address; -import org.hl7.fhir.dstu3.model.Address.AddressUse; -import org.hl7.fhir.dstu3.model.CodeableConcept; -import org.hl7.fhir.dstu3.model.Coding; -import org.hl7.fhir.dstu3.model.ContactPoint; -import org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem; -import org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse; -import org.hl7.fhir.dstu3.model.DateTimeType; -import org.hl7.fhir.dstu3.model.DateType; -import org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender; -import org.hl7.fhir.dstu3.model.Factory; -import org.hl7.fhir.dstu3.model.HumanName; -import org.hl7.fhir.dstu3.model.HumanName.NameUse; -import org.hl7.fhir.dstu3.model.Identifier; -import org.hl7.fhir.dstu3.model.InstantType; -import org.hl7.fhir.dstu3.model.Period; -import org.hl7.fhir.dstu3.model.Quantity; -import org.hl7.fhir.dstu3.model.Range; -import org.hl7.fhir.dstu3.model.SimpleQuantity; -import org.hl7.fhir.dstu3.model.StringType; -import org.hl7.fhir.dstu3.model.Timing; -import org.hl7.fhir.dstu3.model.Timing.EventTiming; -import org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent; -import org.hl7.fhir.dstu3.model.Timing.UnitsOfTime; -import org.hl7.fhir.dstu3.model.Type; -import org.hl7.fhir.utilities.CommaSeparatedStringBuilder; -import org.hl7.fhir.utilities.OIDUtils; -import org.hl7.fhir.utilities.Utilities; -import org.hl7.fhir.utilities.ucum.UcumService; -import org.w3c.dom.Element; -import org.w3c.dom.Node; - -public class Convert { - - private CDAUtilities cda; - private UcumService ucumSvc; - private Set oids = new HashSet(); - private String defaultTimezone; - private boolean generateMissingExtensions; - - public Convert(CDAUtilities cda, UcumService ucumSvc, String defaultTimezone) { - super(); - this.cda = cda; - this.ucumSvc = ucumSvc; - this.defaultTimezone = defaultTimezone; - } - - public Identifier makeIdentifierFromII(Element e) throws Exception { - Identifier id = new Identifier(); - String r = e.getAttribute("root"); - String ex; - if (e.hasAttribute("extension") && Utilities.noString(e.getAttribute("extension"))) { - if (generateMissingExtensions) - ex = UUID.randomUUID().toString(); - else - throw new Exception("Broken identifier - extension is blank"); - } else - ex = e.getAttribute("extension"); - - if (Utilities.noString(ex)) { - id.setSystem("urn:ietf:rfc:3986"); - if (isGuid(r)) - id.setValue("urn:uuid:"+r); - else if (UriForOid(r) != null) - id.setValue(UriForOid(r)); - else - id.setValue(UriForOid(r)); - } else { - if (isGuid(r)) - id.setSystem("urn:uuid:"+r); - else if (UriForOid(r) != null) - id.setSystem(UriForOid(r)); - else - id.setSystem("urn:oid:"+r); - id.setValue(ex); - } - return id; - } - - public String makeURIfromII(Element e) { - String r = e.getAttribute("root"); - if (Utilities.noString(e.getAttribute("extension"))) { - if (isGuid(r)) - return "urn:uuid:"+r; - else if (UriForOid(r) != null) - return UriForOid(r); - else - return UriForOid(r); - } else { - if (isGuid(r)) - return "urn:uuid:"+r+"::"+e.getAttribute("extension"); - else if (UriForOid(r) != null) - return UriForOid(r)+"::"+e.getAttribute("extension"); - else - return "urn:oid:"+r+"::"+e.getAttribute("extension"); - } - } - - private String UriForOid(String r) { - String uri = OIDUtils.getUriForOid(r); - if (uri != null) - return uri; - else { - oids.add(r); - return "urn:oid:"+r; - } - } - - public boolean isGuid(String r) { - return r.matches("[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}"); - } - - public InstantType makeInstantFromTS(Element child) throws Exception { - InstantType i = InstantType.parseV3(child.getAttribute("value")); - return i; - } - - public CodeableConcept makeCodeableConceptFromCD(Element cv) throws Exception { - if (cv == null) - return null; - CodeableConcept cc = new CodeableConcept(); - cc.addCoding(makeCodingFromCV(cv)); - for (Element e : cda.getChildren(cv, "translation")) - cc.addCoding(makeCodingFromCV(e)); - if (cda.getChild(cv, "originalText") != null) { - Element ote = cda.getChild(cv, "originalText"); -// if (cda.getChild(ote, "reference") != null) { -// if (cda.getChild(ote, "reference").getAttribute("value").startsWith("#")) { -// Element t = cda.getByXmlId(cda.getChild(ote, "reference").getAttribute("value").substring(1)); -// String ot = t.getTextContent().trim(); -// cc.setText(Utilities.noString(ot) ? null : ot); -// } else -// throw new Exception("external references not handled yet "+cda.getChild(ote, "reference").getAttribute("value")); -// } else { - String ot = ote.getTextContent().trim(); - cc.setText(Utilities.noString(ot) ? null : ot); - //} - } - return cc; - } - - public Coding makeCodingFromCV(Element cd) throws Exception { - if (cd == null || Utilities.noString(cd.getAttribute("code"))) - return null; - Coding c = new Coding(); - c.setCode(cd.getAttribute("code")); - c.setDisplay(cd.getAttribute("displayName")); - String r = cd.getAttribute("codeSystem"); - String uri = getUriForOID(r); - if (uri != null) - c.setSystem(uri); - else if (isGuid(r)) - c.setSystem("urn:uuid:"+r); - else if (UriForOid(r) != null) - c.setSystem(UriForOid(r)); - else - c.setSystem("urn:oid:"+r); - return c; - } - - private String getUriForOID(String r) { - if (r.equals("2.16.840.1.113883.6.1")) - return "http://loinc.org"; - if (r.equals("2.16.840.1.113883.6.96")) - return "http://snomed.info/sct"; - return null; - } - - public Address makeAddressFromAD(Element e) { - if (e == null) - return null; - Address a = new Address(); - String use = e.getAttribute("use"); - if (use != null) { - if (use.equals("H") || use.equals("HP") || use.equals("HV")) - a.setUse(AddressUse.HOME); - else if (use.equals("WP") || use.equals("DIR") || use.equals("PUB")) - a.setUse(AddressUse.WORK); - else if (use.equals("TMP")) - a.setUse(AddressUse.TEMP); - else if (use.equals("BAD")) - a.setUse(AddressUse.OLD); - } - Node n = e.getFirstChild(); - while (n != null) { - if (n.getNodeType() == Node.ELEMENT_NODE) { - String v = n.getTextContent(); - if (n.getLocalName().equals("additionalLocator")) - a.getLine().add(makeString(v)); -// else if (e.getLocalName().equals("unitID")) -// else if (e.getLocalName().equals("unitType")) - else if (n.getLocalName().equals("deliveryAddressLine")) - a.getLine().add(makeString(v)); -// else if (e.getLocalName().equals("deliveryInstallationType")) -// else if (e.getLocalName().equals("deliveryInstallationArea")) -// else if (e.getLocalName().equals("deliveryInstallationQualifier")) -// else if (e.getLocalName().equals("deliveryMode")) -// else if (e.getLocalName().equals("deliveryModeIdentifier")) - else if (n.getLocalName().equals("streetAddressLine")) - a.getLine().add(makeString(v)); -// else if (e.getLocalName().equals("houseNumber")) -// else if (e.getLocalName().equals("buildingNumberSuffix")) -// else if (e.getLocalName().equals("postBox")) -// else if (e.getLocalName().equals("houseNumberNumeric")) -// else if (e.getLocalName().equals("streetName")) -// else if (e.getLocalName().equals("streetNameBase")) -// else if (e.getLocalName().equals("streetNameType")) - else if (n.getLocalName().equals("direction")) - a.getLine().add(makeString(v)); - else if (n.getLocalName().equals("careOf")) - a.getLine().add(makeString(v)); -// else if (e.getLocalName().equals("censusTract")) - else if (n.getLocalName().equals("country")) - a.setCountry(v); - //else if (e.getLocalName().equals("county")) - else if (n.getLocalName().equals("city")) - a.setCity(v); -// else if (e.getLocalName().equals("delimiter")) -// else if (e.getLocalName().equals("precinct")) - else if (n.getLocalName().equals("state")) - a.setState(v); - else if (n.getLocalName().equals("postalCode")) - a.setPostalCode(v); - } - n = n.getNextSibling(); - } - return a; - } - - public StringType makeString(String v) { - StringType s = new StringType(); - s.setValue(v); - return s; - } - - public ContactPoint makeContactFromTEL(Element e) throws Exception { - if (e == null) - return null; - if (e.hasAttribute("nullFlavor")) - return null; - ContactPoint c = new ContactPoint(); - String use = e.getAttribute("use"); - if (use != null) { - if (use.equals("H") || use.equals("HP") || use.equals("HV")) - c.setUse(ContactPointUse.HOME); - else if (use.equals("WP") || use.equals("DIR") || use.equals("PUB")) - c.setUse(ContactPointUse.WORK); - else if (use.equals("TMP")) - c.setUse(ContactPointUse.TEMP); - else if (use.equals("BAD")) - c.setUse(ContactPointUse.OLD); - } - if (e.getAttribute("value") != null) { - String[] url = e.getAttribute("value").split(":"); - if (url.length == 1) { - c.setValue(url[0].trim()); - c.setSystem(ContactPointSystem.PHONE); - } else { - if (url[0].equals("tel")) - c.setSystem(ContactPointSystem.PHONE); - else if (url[0].equals("mailto")) - c.setSystem(ContactPointSystem.EMAIL); - else if (e.getAttribute("value").contains(":")) - c.setSystem(ContactPointSystem.OTHER); - else - c.setSystem(ContactPointSystem.PHONE); - c.setValue(url[1].trim()); - } - } - return c; - - } - - public HumanName makeNameFromEN(Element e) { - if (e == null) - return null; - HumanName hn = new HumanName(); - String use = e.getAttribute("use"); - if (use != null) { - if (use.equals("L")) - hn.setUse(NameUse.USUAL); - else if (use.equals("C")) - hn.setUse(NameUse.OFFICIAL); - else if (use.equals("P") || use.equals("A")) - hn.setUse(NameUse.ANONYMOUS); - else if (use.equals("TMP")) - hn.setUse(NameUse.TEMP); - else if (use.equals("BAD")) - hn.setUse(NameUse.OLD); - } - - Node n = e.getFirstChild(); - while (n != null) { - if (n.getNodeType() == Node.ELEMENT_NODE) { - String v = n.getTextContent(); - if (n.getLocalName().equals("family")) - hn.setFamilyElement(makeString(v)); - else if (n.getLocalName().equals("given")) - hn.getGiven().add(makeString(v)); - else if (n.getLocalName().equals("prefix")) - hn.getPrefix().add(makeString(v)); - else if (n.getLocalName().equals("suffix")) - hn.getSuffix().add(makeString(v)); - } - n = n.getNextSibling(); - } - return hn; - } - - public DateTimeType makeDateTimeFromTS(Element ts) throws Exception { - if (ts == null) - return null; - - String v = ts.getAttribute("value"); - if (Utilities.noString(v)) - return null; - - if (v.length() > 8 && !hasTimezone(v)) - v += defaultTimezone; - DateTimeType d = DateTimeType.parseV3(v); - return d; - } - - private boolean hasTimezone(String v) { - return v.contains("+") || v.contains("-") || v.endsWith("Z"); - } - - - public DateType makeDateFromTS(Element ts) throws Exception { - if (ts == null) - return null; - - String v = ts.getAttribute("value"); - if (Utilities.noString(v)) - return null; - DateType d = DateType.parseV3(v); - return d; - } - - public Period makePeriodFromIVL(Element ivl) throws Exception { - if (ivl == null) - return null; - Period p = new Period(); - Element low = cda.getChild(ivl, "low"); - if (low != null) - p.setStartElement(makeDateTimeFromTS(low)); - Element high = cda.getChild(ivl, "high"); - if (high != null) - p.setEndElement(makeDateTimeFromTS(high)); - - if (p.getStartElement() != null || p.getEndElement() != null) - return p; - else - return null; - } - - // this is a weird one - where CDA has an IVL, and FHIR has a date - public DateTimeType makeDateTimeFromIVL(Element ivl) throws Exception { - if (ivl == null) - return null; - if (ivl.hasAttribute("value")) - return makeDateTimeFromTS(ivl); - Element high = cda.getChild(ivl, "high"); - if (high != null) - return makeDateTimeFromTS(high); - Element low = cda.getChild(ivl, "low"); - if (low != null) - return makeDateTimeFromTS(low); - return null; - } - - public Type makeStringFromED(Element e) throws Exception { - if (e == null) - return null; - if (cda.getChild(e, "reference") != null) { - if (cda.getChild(e, "reference").getAttribute("value").startsWith("#")) { - Element t = cda.getByXmlId(cda.getChild(e, "reference").getAttribute("value").substring(1)); - String ot = t.getTextContent().trim(); - return Utilities.noString(ot) ? null : Factory.newString_(ot); - } else - throw new Exception("external references not handled yet "+cda.getChild(e, "reference").getAttribute("value")); - } - return Factory.newString_(e.getTextContent()); - } - - public Type makeTypeFromANY(Element e) throws Exception { - if (e == null) - return null; - String t = e.getAttributeNS("http://www.w3.org/2001/XMLSchema-instance", "type"); - if (Utilities.noString(t)) - throw new Exception("Missing type on RIM attribute with type any"); - if (t.equals("CD") || t.equals("CE")) - return makeCodeableConceptFromCD(e); - else if (t.equals("ST")) - return makeStringFromED(e); - else - throw new Exception("Not done yet (type = "+t+")"); - } - - public Type makeMatchingTypeFromIVL(Element ivl) throws Exception { - if (ivl == null) - return null; - if (ivl.getAttribute("value") != null) - return makeDateTimeFromIVL(ivl); - if (cda.getChild(ivl, "low") != null || cda.getChild(ivl, "high") != null ) - return makePeriodFromIVL(ivl); - throw new Exception("not handled yet"); - } - - public Type makeCodeableConceptFromNullFlavor(String nf) throws Exception { - // Some nullFlavors have explicit values in value sets. This can only be called where there aren't. - if (nf == null || "".equals(nf)) - return null; - if ("NI".equals(nf)) - return null; // there's no code for this - if ("NA".equals(nf)) - return Factory.newCodeableConcept("unsupported", "http://hl7.org/fhir/data-absent-reason", "Unsupported"); // todo: is this reasonable? Why else would you use N/A? - if ("UNK".equals(nf)) - return Factory.newCodeableConcept("unknown", "http://hl7.org/fhir/data-absent-reason", "Unknown"); - if ("ASKU".equals(nf)) - return Factory.newCodeableConcept("asked", "http://hl7.org/fhir/data-absent-reason", "Asked/Unknown"); - if ("NAV".equals(nf)) - return Factory.newCodeableConcept("temp", "http://hl7.org/fhir/data-absent-reason", "Temporarily Unavailable"); - if ("NASK".equals(nf)) - return Factory.newCodeableConcept("notasked", "http://hl7.org/fhir/data-absent-reason", "Not Asked"); - if ("MSK".equals(nf)) - return Factory.newCodeableConcept("masked", "http://hl7.org/fhir/data-absent-reason", "Masked"); - if ("OTH".equals(nf)) - return null; // well, what should be done? - return null; // well, what should be done? - - } - - public Range makeRangeFromIVLPQ(Element ivlpq) throws Exception { - if (ivlpq == null) - return null; - Element low = cda.getChild(ivlpq, "low"); - Element high = cda.getChild(ivlpq, "high"); - if (low == null && high == null) - return null; - Range r = new Range(); - r.setLow(makeSimpleQuantityFromPQ(low, ivlpq.getAttribute("unit"))); - r.setHigh(makeSimpleQuantityFromPQ(high, ivlpq.getAttribute("unit"))); - return r; - } - - public Quantity makeQuantityFromPQ(Element pq) throws Exception { - return makeQuantityFromPQ(pq, null); - } - - public Quantity makeQuantityFromPQ(Element pq, String units) throws Exception { - if (pq == null) - return null; - Quantity qty = new Quantity(); - String n = pq.getAttribute("value").replace(",", "").trim(); - try { - qty.setValue(new BigDecimal(n)); - } catch (Exception e) { - throw new Exception("Unable to process value '"+n+"'", e); - } - units = Utilities.noString(pq.getAttribute("unit")) ? units : pq.getAttribute("unit"); - if (!Utilities.noString(units)) { - if (ucumSvc == null || ucumSvc.validate(units) != null) - qty.setUnit(units); - else { - qty.setCode(units); - qty.setSystem("http://unitsofmeasure.org"); - qty.setUnit(ucumSvc.getCommonDisplay(units)); - } - } - return qty; - } - - public SimpleQuantity makeSimpleQuantityFromPQ(Element pq, String units) throws Exception { - if (pq == null) - return null; - SimpleQuantity qty = new SimpleQuantity(); - String n = pq.getAttribute("value").replace(",", "").trim(); - try { - qty.setValue(new BigDecimal(n)); - } catch (Exception e) { - throw new Exception("Unable to process value '"+n+"'", e); - } - units = Utilities.noString(pq.getAttribute("unit")) ? units : pq.getAttribute("unit"); - if (!Utilities.noString(units)) { - if (ucumSvc == null || ucumSvc.validate(units) != null) - qty.setUnit(units); - else { - qty.setCode(units); - qty.setSystem("http://unitsofmeasure.org"); - qty.setUnit(ucumSvc.getCommonDisplay(units)); - } - } - return qty; - } - - public AdministrativeGender makeGenderFromCD(Element cd) throws Exception { - String code = cd.getAttribute("code"); - String system = cd.getAttribute("codeSystem"); - if ("2.16.840.1.113883.5.1".equals(system)) { - if ("F".equals(code)) - return AdministrativeGender.FEMALE; - if ("M".equals(code)) - return AdministrativeGender.MALE; - } - throw new Exception("Unable to read Gender "+system+"::"+code); - } - - /* - /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:EIVL_TS]: 389 - /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:EIVL_TS]/event: 389 - /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:IVL_TS]: 33470 - /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:IVL_TS]/high: 20566 - /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:IVL_TS]/high[nullFlavor:NA]: 9581 - /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:IVL_TS]/low: 32501 - /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:IVL_TS]/low[nullFlavor:UNK]: 969 - /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:PIVL_TS]: 17911 - /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:PIVL_TS]/period: 17911 - */ - public Type makeSomethingFromGTS(List children) throws Exception { - if (children.isEmpty()) - return null; - if (children.size() == 1) { - String type = children.get(0).getAttribute("xsi:type"); - if (type.equals("IVL_TS")) - return makePeriodFromIVL(children.get(0)); - else - throw new Exception("Unknown GTS type '"+type+"'"); - } - CommaSeparatedStringBuilder t = new CommaSeparatedStringBuilder(); - for (Element c : children) - t.append(c.getAttribute("xsi:type")); - if (t.toString().equals("IVL_TS, PIVL_TS")) - return makeTimingFromBoundedPIVL(children.get(0), children.get(1)); - if (t.toString().equals("IVL_TS, EIVL_TS")) - return makeTimingFromBoundedEIVL(children.get(0), children.get(1)); - throw new Exception("Unknown GTS pattern '"+t.toString()+"'"); - } - - private Type makeTimingFromBoundedEIVL(Element ivl, Element eivl) throws Exception { - Timing t = new Timing(); - t.setRepeat(new TimingRepeatComponent()); - Element e = cda.getChild(eivl, "event"); - t.getRepeat().setBounds(makePeriodFromIVL(ivl)); - t.getRepeat().addWhen(convertEventTiming(e.getAttribute("code"))); - return t; - } - - private EventTiming convertEventTiming(String e) throws Exception { - if ("HS".equals(e)) - return EventTiming.HS; - throw new Exception("Unknown event "+e); - } - - private Timing makeTimingFromBoundedPIVL(Element ivl, Element pivl) throws Exception { - Timing t = new Timing(); - t.setRepeat(new TimingRepeatComponent()); - Element p = cda.getChild(pivl, "period"); - t.getRepeat().setBounds(makePeriodFromIVL(ivl)); - t.getRepeat().setPeriod(new BigDecimal(p.getAttribute("value"))); - t.getRepeat().setPeriodUnit(convertTimeUnit(p.getAttribute("unit"))); - return t; - } - - private UnitsOfTime convertTimeUnit(String u) throws Exception { - if ("h".equals(u)) - return UnitsOfTime.H; - if ("d".equals(u)) - return UnitsOfTime.D; - if ("w".equals(u)) - return UnitsOfTime.WK; - throw new Exception("Unknown unit of time "+u); - } - - public Set getOids() { - return oids; - } - - public boolean isGenerateMissingExtensions() { - return generateMissingExtensions; - } - - public void setGenerateMissingExtensions(boolean generateMissingExtensions) { - this.generateMissingExtensions = generateMissingExtensions; - } - - -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +*/ + + +import java.math.BigDecimal; +import java.util.HashSet; +import java.util.List; +import java.util.Set; +import java.util.UUID; + +import org.hl7.fhir.dstu3.model.Address; +import org.hl7.fhir.dstu3.model.Address.AddressUse; +import org.hl7.fhir.dstu3.model.CodeableConcept; +import org.hl7.fhir.dstu3.model.Coding; +import org.hl7.fhir.dstu3.model.ContactPoint; +import org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem; +import org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse; +import org.hl7.fhir.dstu3.model.DateTimeType; +import org.hl7.fhir.dstu3.model.DateType; +import org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender; +import org.hl7.fhir.dstu3.model.Factory; +import org.hl7.fhir.dstu3.model.HumanName; +import org.hl7.fhir.dstu3.model.HumanName.NameUse; +import org.hl7.fhir.dstu3.model.Identifier; +import org.hl7.fhir.dstu3.model.InstantType; +import org.hl7.fhir.dstu3.model.Period; +import org.hl7.fhir.dstu3.model.Quantity; +import org.hl7.fhir.dstu3.model.Range; +import org.hl7.fhir.dstu3.model.SimpleQuantity; +import org.hl7.fhir.dstu3.model.StringType; +import org.hl7.fhir.dstu3.model.Timing; +import org.hl7.fhir.dstu3.model.Timing.EventTiming; +import org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent; +import org.hl7.fhir.dstu3.model.Timing.UnitsOfTime; +import org.hl7.fhir.dstu3.model.Type; +import org.hl7.fhir.utilities.CommaSeparatedStringBuilder; +import org.hl7.fhir.utilities.OIDUtils; +import org.hl7.fhir.utilities.Utilities; +import org.hl7.fhir.utilities.ucum.UcumService; +import org.w3c.dom.Element; +import org.w3c.dom.Node; + +public class Convert { + + private CDAUtilities cda; + private UcumService ucumSvc; + private Set oids = new HashSet(); + private String defaultTimezone; + private boolean generateMissingExtensions; + + public Convert(CDAUtilities cda, UcumService ucumSvc, String defaultTimezone) { + super(); + this.cda = cda; + this.ucumSvc = ucumSvc; + this.defaultTimezone = defaultTimezone; + } + + public Identifier makeIdentifierFromII(Element e) throws Exception { + Identifier id = new Identifier(); + String r = e.getAttribute("root"); + String ex; + if (e.hasAttribute("extension") && Utilities.noString(e.getAttribute("extension"))) { + if (generateMissingExtensions) + ex = UUID.randomUUID().toString(); + else + throw new Exception("Broken identifier - extension is blank"); + } else + ex = e.getAttribute("extension"); + + if (Utilities.noString(ex)) { + id.setSystem("urn:ietf:rfc:3986"); + if (isGuid(r)) + id.setValue("urn:uuid:"+r); + else if (UriForOid(r) != null) + id.setValue(UriForOid(r)); + else + id.setValue(UriForOid(r)); + } else { + if (isGuid(r)) + id.setSystem("urn:uuid:"+r); + else if (UriForOid(r) != null) + id.setSystem(UriForOid(r)); + else + id.setSystem("urn:oid:"+r); + id.setValue(ex); + } + return id; + } + + public String makeURIfromII(Element e) { + String r = e.getAttribute("root"); + if (Utilities.noString(e.getAttribute("extension"))) { + if (isGuid(r)) + return "urn:uuid:"+r; + else if (UriForOid(r) != null) + return UriForOid(r); + else + return UriForOid(r); + } else { + if (isGuid(r)) + return "urn:uuid:"+r+"::"+e.getAttribute("extension"); + else if (UriForOid(r) != null) + return UriForOid(r)+"::"+e.getAttribute("extension"); + else + return "urn:oid:"+r+"::"+e.getAttribute("extension"); + } + } + + private String UriForOid(String r) { + String uri = OIDUtils.getUriForOid(r); + if (uri != null) + return uri; + else { + oids.add(r); + return "urn:oid:"+r; + } + } + + public boolean isGuid(String r) { + return r.matches("[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}"); + } + + public InstantType makeInstantFromTS(Element child) throws Exception { + InstantType i = InstantType.parseV3(child.getAttribute("value")); + return i; + } + + public CodeableConcept makeCodeableConceptFromCD(Element cv) throws Exception { + if (cv == null) + return null; + CodeableConcept cc = new CodeableConcept(); + cc.addCoding(makeCodingFromCV(cv)); + for (Element e : cda.getChildren(cv, "translation")) + cc.addCoding(makeCodingFromCV(e)); + if (cda.getChild(cv, "originalText") != null) { + Element ote = cda.getChild(cv, "originalText"); +// if (cda.getChild(ote, "reference") != null) { +// if (cda.getChild(ote, "reference").getAttribute("value").startsWith("#")) { +// Element t = cda.getByXmlId(cda.getChild(ote, "reference").getAttribute("value").substring(1)); +// String ot = t.getTextContent().trim(); +// cc.setText(Utilities.noString(ot) ? null : ot); +// } else +// throw new Exception("external references not handled yet "+cda.getChild(ote, "reference").getAttribute("value")); +// } else { + String ot = ote.getTextContent().trim(); + cc.setText(Utilities.noString(ot) ? null : ot); + //} + } + return cc; + } + + public Coding makeCodingFromCV(Element cd) throws Exception { + if (cd == null || Utilities.noString(cd.getAttribute("code"))) + return null; + Coding c = new Coding(); + c.setCode(cd.getAttribute("code")); + c.setDisplay(cd.getAttribute("displayName")); + String r = cd.getAttribute("codeSystem"); + String uri = getUriForOID(r); + if (uri != null) + c.setSystem(uri); + else if (isGuid(r)) + c.setSystem("urn:uuid:"+r); + else if (UriForOid(r) != null) + c.setSystem(UriForOid(r)); + else + c.setSystem("urn:oid:"+r); + return c; + } + + private String getUriForOID(String r) { + if (r.equals("2.16.840.1.113883.6.1")) + return "http://loinc.org"; + if (r.equals("2.16.840.1.113883.6.96")) + return "http://snomed.info/sct"; + return null; + } + + public Address makeAddressFromAD(Element e) { + if (e == null) + return null; + Address a = new Address(); + String use = e.getAttribute("use"); + if (use != null) { + if (use.equals("H") || use.equals("HP") || use.equals("HV")) + a.setUse(AddressUse.HOME); + else if (use.equals("WP") || use.equals("DIR") || use.equals("PUB")) + a.setUse(AddressUse.WORK); + else if (use.equals("TMP")) + a.setUse(AddressUse.TEMP); + else if (use.equals("BAD")) + a.setUse(AddressUse.OLD); + } + Node n = e.getFirstChild(); + while (n != null) { + if (n.getNodeType() == Node.ELEMENT_NODE) { + String v = n.getTextContent(); + if (n.getLocalName().equals("additionalLocator")) + a.getLine().add(makeString(v)); +// else if (e.getLocalName().equals("unitID")) +// else if (e.getLocalName().equals("unitType")) + else if (n.getLocalName().equals("deliveryAddressLine")) + a.getLine().add(makeString(v)); +// else if (e.getLocalName().equals("deliveryInstallationType")) +// else if (e.getLocalName().equals("deliveryInstallationArea")) +// else if (e.getLocalName().equals("deliveryInstallationQualifier")) +// else if (e.getLocalName().equals("deliveryMode")) +// else if (e.getLocalName().equals("deliveryModeIdentifier")) + else if (n.getLocalName().equals("streetAddressLine")) + a.getLine().add(makeString(v)); +// else if (e.getLocalName().equals("houseNumber")) +// else if (e.getLocalName().equals("buildingNumberSuffix")) +// else if (e.getLocalName().equals("postBox")) +// else if (e.getLocalName().equals("houseNumberNumeric")) +// else if (e.getLocalName().equals("streetName")) +// else if (e.getLocalName().equals("streetNameBase")) +// else if (e.getLocalName().equals("streetNameType")) + else if (n.getLocalName().equals("direction")) + a.getLine().add(makeString(v)); + else if (n.getLocalName().equals("careOf")) + a.getLine().add(makeString(v)); +// else if (e.getLocalName().equals("censusTract")) + else if (n.getLocalName().equals("country")) + a.setCountry(v); + //else if (e.getLocalName().equals("county")) + else if (n.getLocalName().equals("city")) + a.setCity(v); +// else if (e.getLocalName().equals("delimiter")) +// else if (e.getLocalName().equals("precinct")) + else if (n.getLocalName().equals("state")) + a.setState(v); + else if (n.getLocalName().equals("postalCode")) + a.setPostalCode(v); + } + n = n.getNextSibling(); + } + return a; + } + + public StringType makeString(String v) { + StringType s = new StringType(); + s.setValue(v); + return s; + } + + public ContactPoint makeContactFromTEL(Element e) throws Exception { + if (e == null) + return null; + if (e.hasAttribute("nullFlavor")) + return null; + ContactPoint c = new ContactPoint(); + String use = e.getAttribute("use"); + if (use != null) { + if (use.equals("H") || use.equals("HP") || use.equals("HV")) + c.setUse(ContactPointUse.HOME); + else if (use.equals("WP") || use.equals("DIR") || use.equals("PUB")) + c.setUse(ContactPointUse.WORK); + else if (use.equals("TMP")) + c.setUse(ContactPointUse.TEMP); + else if (use.equals("BAD")) + c.setUse(ContactPointUse.OLD); + } + if (e.getAttribute("value") != null) { + String[] url = e.getAttribute("value").split(":"); + if (url.length == 1) { + c.setValue(url[0].trim()); + c.setSystem(ContactPointSystem.PHONE); + } else { + if (url[0].equals("tel")) + c.setSystem(ContactPointSystem.PHONE); + else if (url[0].equals("mailto")) + c.setSystem(ContactPointSystem.EMAIL); + else if (e.getAttribute("value").contains(":")) + c.setSystem(ContactPointSystem.OTHER); + else + c.setSystem(ContactPointSystem.PHONE); + c.setValue(url[1].trim()); + } + } + return c; + + } + + public HumanName makeNameFromEN(Element e) { + if (e == null) + return null; + HumanName hn = new HumanName(); + String use = e.getAttribute("use"); + if (use != null) { + if (use.equals("L")) + hn.setUse(NameUse.USUAL); + else if (use.equals("C")) + hn.setUse(NameUse.OFFICIAL); + else if (use.equals("P") || use.equals("A")) + hn.setUse(NameUse.ANONYMOUS); + else if (use.equals("TMP")) + hn.setUse(NameUse.TEMP); + else if (use.equals("BAD")) + hn.setUse(NameUse.OLD); + } + + Node n = e.getFirstChild(); + while (n != null) { + if (n.getNodeType() == Node.ELEMENT_NODE) { + String v = n.getTextContent(); + if (n.getLocalName().equals("family")) + hn.setFamilyElement(makeString(v)); + else if (n.getLocalName().equals("given")) + hn.getGiven().add(makeString(v)); + else if (n.getLocalName().equals("prefix")) + hn.getPrefix().add(makeString(v)); + else if (n.getLocalName().equals("suffix")) + hn.getSuffix().add(makeString(v)); + } + n = n.getNextSibling(); + } + return hn; + } + + public DateTimeType makeDateTimeFromTS(Element ts) throws Exception { + if (ts == null) + return null; + + String v = ts.getAttribute("value"); + if (Utilities.noString(v)) + return null; + + if (v.length() > 8 && !hasTimezone(v)) + v += defaultTimezone; + DateTimeType d = DateTimeType.parseV3(v); + return d; + } + + private boolean hasTimezone(String v) { + return v.contains("+") || v.contains("-") || v.endsWith("Z"); + } + + + public DateType makeDateFromTS(Element ts) throws Exception { + if (ts == null) + return null; + + String v = ts.getAttribute("value"); + if (Utilities.noString(v)) + return null; + DateType d = DateType.parseV3(v); + return d; + } + + public Period makePeriodFromIVL(Element ivl) throws Exception { + if (ivl == null) + return null; + Period p = new Period(); + Element low = cda.getChild(ivl, "low"); + if (low != null) + p.setStartElement(makeDateTimeFromTS(low)); + Element high = cda.getChild(ivl, "high"); + if (high != null) + p.setEndElement(makeDateTimeFromTS(high)); + + if (p.getStartElement() != null || p.getEndElement() != null) + return p; + else + return null; + } + + // this is a weird one - where CDA has an IVL, and FHIR has a date + public DateTimeType makeDateTimeFromIVL(Element ivl) throws Exception { + if (ivl == null) + return null; + if (ivl.hasAttribute("value")) + return makeDateTimeFromTS(ivl); + Element high = cda.getChild(ivl, "high"); + if (high != null) + return makeDateTimeFromTS(high); + Element low = cda.getChild(ivl, "low"); + if (low != null) + return makeDateTimeFromTS(low); + return null; + } + + public Type makeStringFromED(Element e) throws Exception { + if (e == null) + return null; + if (cda.getChild(e, "reference") != null) { + if (cda.getChild(e, "reference").getAttribute("value").startsWith("#")) { + Element t = cda.getByXmlId(cda.getChild(e, "reference").getAttribute("value").substring(1)); + String ot = t.getTextContent().trim(); + return Utilities.noString(ot) ? null : Factory.newString_(ot); + } else + throw new Exception("external references not handled yet "+cda.getChild(e, "reference").getAttribute("value")); + } + return Factory.newString_(e.getTextContent()); + } + + public Type makeTypeFromANY(Element e) throws Exception { + if (e == null) + return null; + String t = e.getAttributeNS("http://www.w3.org/2001/XMLSchema-instance", "type"); + if (Utilities.noString(t)) + throw new Exception("Missing type on RIM attribute with type any"); + if (t.equals("CD") || t.equals("CE")) + return makeCodeableConceptFromCD(e); + else if (t.equals("ST")) + return makeStringFromED(e); + else + throw new Exception("Not done yet (type = "+t+")"); + } + + public Type makeMatchingTypeFromIVL(Element ivl) throws Exception { + if (ivl == null) + return null; + if (ivl.getAttribute("value") != null) + return makeDateTimeFromIVL(ivl); + if (cda.getChild(ivl, "low") != null || cda.getChild(ivl, "high") != null ) + return makePeriodFromIVL(ivl); + throw new Exception("not handled yet"); + } + + public Type makeCodeableConceptFromNullFlavor(String nf) throws Exception { + // Some nullFlavors have explicit values in value sets. This can only be called where there aren't. + if (nf == null || "".equals(nf)) + return null; + if ("NI".equals(nf)) + return null; // there's no code for this + if ("NA".equals(nf)) + return Factory.newCodeableConcept("unsupported", "http://hl7.org/fhir/data-absent-reason", "Unsupported"); // todo: is this reasonable? Why else would you use N/A? + if ("UNK".equals(nf)) + return Factory.newCodeableConcept("unknown", "http://hl7.org/fhir/data-absent-reason", "Unknown"); + if ("ASKU".equals(nf)) + return Factory.newCodeableConcept("asked", "http://hl7.org/fhir/data-absent-reason", "Asked/Unknown"); + if ("NAV".equals(nf)) + return Factory.newCodeableConcept("temp", "http://hl7.org/fhir/data-absent-reason", "Temporarily Unavailable"); + if ("NASK".equals(nf)) + return Factory.newCodeableConcept("notasked", "http://hl7.org/fhir/data-absent-reason", "Not Asked"); + if ("MSK".equals(nf)) + return Factory.newCodeableConcept("masked", "http://hl7.org/fhir/data-absent-reason", "Masked"); + if ("OTH".equals(nf)) + return null; // well, what should be done? + return null; // well, what should be done? + + } + + public Range makeRangeFromIVLPQ(Element ivlpq) throws Exception { + if (ivlpq == null) + return null; + Element low = cda.getChild(ivlpq, "low"); + Element high = cda.getChild(ivlpq, "high"); + if (low == null && high == null) + return null; + Range r = new Range(); + r.setLow(makeSimpleQuantityFromPQ(low, ivlpq.getAttribute("unit"))); + r.setHigh(makeSimpleQuantityFromPQ(high, ivlpq.getAttribute("unit"))); + return r; + } + + public Quantity makeQuantityFromPQ(Element pq) throws Exception { + return makeQuantityFromPQ(pq, null); + } + + public Quantity makeQuantityFromPQ(Element pq, String units) throws Exception { + if (pq == null) + return null; + Quantity qty = new Quantity(); + String n = pq.getAttribute("value").replace(",", "").trim(); + try { + qty.setValue(new BigDecimal(n)); + } catch (Exception e) { + throw new Exception("Unable to process value '"+n+"'", e); + } + units = Utilities.noString(pq.getAttribute("unit")) ? units : pq.getAttribute("unit"); + if (!Utilities.noString(units)) { + if (ucumSvc == null || ucumSvc.validate(units) != null) + qty.setUnit(units); + else { + qty.setCode(units); + qty.setSystem("http://unitsofmeasure.org"); + qty.setUnit(ucumSvc.getCommonDisplay(units)); + } + } + return qty; + } + + public SimpleQuantity makeSimpleQuantityFromPQ(Element pq, String units) throws Exception { + if (pq == null) + return null; + SimpleQuantity qty = new SimpleQuantity(); + String n = pq.getAttribute("value").replace(",", "").trim(); + try { + qty.setValue(new BigDecimal(n)); + } catch (Exception e) { + throw new Exception("Unable to process value '"+n+"'", e); + } + units = Utilities.noString(pq.getAttribute("unit")) ? units : pq.getAttribute("unit"); + if (!Utilities.noString(units)) { + if (ucumSvc == null || ucumSvc.validate(units) != null) + qty.setUnit(units); + else { + qty.setCode(units); + qty.setSystem("http://unitsofmeasure.org"); + qty.setUnit(ucumSvc.getCommonDisplay(units)); + } + } + return qty; + } + + public AdministrativeGender makeGenderFromCD(Element cd) throws Exception { + String code = cd.getAttribute("code"); + String system = cd.getAttribute("codeSystem"); + if ("2.16.840.1.113883.5.1".equals(system)) { + if ("F".equals(code)) + return AdministrativeGender.FEMALE; + if ("M".equals(code)) + return AdministrativeGender.MALE; + } + throw new Exception("Unable to read Gender "+system+"::"+code); + } + + /* + /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:EIVL_TS]: 389 + /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:EIVL_TS]/event: 389 + /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:IVL_TS]: 33470 + /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:IVL_TS]/high: 20566 + /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:IVL_TS]/high[nullFlavor:NA]: 9581 + /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:IVL_TS]/low: 32501 + /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:IVL_TS]/low[nullFlavor:UNK]: 969 + /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:PIVL_TS]: 17911 + /entry[COMP]/substanceAdministration[SBADM,EVN]/effectiveTime[type:PIVL_TS]/period: 17911 + */ + public Type makeSomethingFromGTS(List children) throws Exception { + if (children.isEmpty()) + return null; + if (children.size() == 1) { + String type = children.get(0).getAttribute("xsi:type"); + if (type.equals("IVL_TS")) + return makePeriodFromIVL(children.get(0)); + else + throw new Exception("Unknown GTS type '"+type+"'"); + } + CommaSeparatedStringBuilder t = new CommaSeparatedStringBuilder(); + for (Element c : children) + t.append(c.getAttribute("xsi:type")); + if (t.toString().equals("IVL_TS, PIVL_TS")) + return makeTimingFromBoundedPIVL(children.get(0), children.get(1)); + if (t.toString().equals("IVL_TS, EIVL_TS")) + return makeTimingFromBoundedEIVL(children.get(0), children.get(1)); + throw new Exception("Unknown GTS pattern '"+t.toString()+"'"); + } + + private Type makeTimingFromBoundedEIVL(Element ivl, Element eivl) throws Exception { + Timing t = new Timing(); + t.setRepeat(new TimingRepeatComponent()); + Element e = cda.getChild(eivl, "event"); + t.getRepeat().setBounds(makePeriodFromIVL(ivl)); + t.getRepeat().addWhen(convertEventTiming(e.getAttribute("code"))); + return t; + } + + private EventTiming convertEventTiming(String e) throws Exception { + if ("HS".equals(e)) + return EventTiming.HS; + throw new Exception("Unknown event "+e); + } + + private Timing makeTimingFromBoundedPIVL(Element ivl, Element pivl) throws Exception { + Timing t = new Timing(); + t.setRepeat(new TimingRepeatComponent()); + Element p = cda.getChild(pivl, "period"); + t.getRepeat().setBounds(makePeriodFromIVL(ivl)); + t.getRepeat().setPeriod(new BigDecimal(p.getAttribute("value"))); + t.getRepeat().setPeriodUnit(convertTimeUnit(p.getAttribute("unit"))); + return t; + } + + private UnitsOfTime convertTimeUnit(String u) throws Exception { + if ("h".equals(u)) + return UnitsOfTime.H; + if ("d".equals(u)) + return UnitsOfTime.D; + if ("w".equals(u)) + return UnitsOfTime.WK; + throw new Exception("Unknown unit of time "+u); + } + + public Set getOids() { + return oids; + } + + public boolean isGenerateMissingExtensions() { + return generateMissingExtensions; + } + + public void setGenerateMissingExtensions(boolean generateMissingExtensions) { + this.generateMissingExtensions = generateMissingExtensions; + } + + +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/ConverterBase.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/ConverterBase.java index 44998e1a9f2..55305b53272 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/ConverterBase.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/ConverterBase.java @@ -1,5 +1,26 @@ -package org.hl7.fhir.convertors; - -public class ConverterBase { - -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + +public class ConverterBase { + +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/ICPC2Importer.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/ICPC2Importer.java index f235714157d..4c71df93195 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/ICPC2Importer.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/ICPC2Importer.java @@ -1,188 +1,209 @@ -package org.hl7.fhir.convertors; - -import java.io.FileInputStream; -import java.io.FileOutputStream; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; - -import javax.xml.parsers.DocumentBuilder; -import javax.xml.parsers.DocumentBuilderFactory; - -import org.hl7.fhir.dstu3.formats.IParser.OutputStyle; -import org.hl7.fhir.dstu3.formats.XmlParser; -import org.hl7.fhir.dstu3.model.CodeSystem; -import org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning; -import org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent; -import org.hl7.fhir.dstu3.model.Coding; -import org.hl7.fhir.dstu3.model.DateTimeType; -import org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus; -import org.hl7.fhir.dstu3.model.Identifier; -import org.hl7.fhir.dstu3.model.ValueSet; -import org.hl7.fhir.dstu3.terminologies.CodeSystemUtilities; -import org.hl7.fhir.utilities.xml.XMLUtil; -import org.w3c.dom.Document; -import org.w3c.dom.Element; - - -/** - * This is defined as a prototype ClaML importer - * - * @author Grahame - * - */ - -public class ICPC2Importer { - - public static void main(String[] args) { - try { - ICPC2Importer r = new ICPC2Importer(); - r.setSourceFileName("c:\\temp\\ICPC-2e-v5.0.xml"); - r.setTargetFileNameCS("C:\\temp\\icpc2.xml"); - r.setTargetFileNameVS("C:\\temp\\icpc2-vs.xml"); - r.go(); - System.out.println("Completed OK"); - } catch (Exception e) { - e.printStackTrace(); - } - } - - private String sourceFileName; // the ICPC2 ClaML file - private String targetFileNameVS; // the value set to produce - private String targetFileNameCS; // the value set to produce - - public ICPC2Importer() { - super(); - } - public ICPC2Importer(String sourceFileName, String targetFileNameCS, String targetFileNameVS) { - super(); - this.sourceFileName = sourceFileName; - this.targetFileNameCS = targetFileNameCS; - this.targetFileNameVS = targetFileNameVS; - } - public String getSourceFileName() { - return sourceFileName; - } - public void setSourceFileName(String sourceFileName) { - this.sourceFileName = sourceFileName; - } - public String getTargetFileNameCS() { - return targetFileNameCS; - } - public void setTargetFileNameCS(String targetFileName) { - this.targetFileNameCS = targetFileName; - } - - public String getTargetFileNameVS() { - return targetFileNameVS; - } - public void setTargetFileNameVS(String targetFileName) { - this.targetFileNameVS = targetFileName; - } - - public void go() throws Exception { - DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); - factory.setNamespaceAware(false); - DocumentBuilder builder = factory.newDocumentBuilder(); - Document doc = builder.parse(new FileInputStream(sourceFileName)); - - ValueSet vs = new ValueSet(); - vs.setUrl("http://hl7.org/fhir/sid/icpc2/vs"); - Element title = XMLUtil.getNamedChild(doc.getDocumentElement(), "Title"); - vs.setVersion(title.getAttribute("version")); - vs.setName(title.getAttribute("name")); - vs.setImmutable(true); - Element identifier = XMLUtil.getNamedChild(doc.getDocumentElement(), "Identifier"); - vs.setPublisher(identifier.getAttribute("authority")); - vs.addIdentifier(new Identifier().setValue(identifier.getAttribute("uid"))); - List authors = new ArrayList(); - XMLUtil.getNamedChildren(XMLUtil.getNamedChild(doc.getDocumentElement(), "Authors"), "Author", authors); - for (Element a : authors) - if (!a.getAttribute("name").contains("+")) - vs.addContact().setName(a.getTextContent()); - vs.setCopyright("The copyright of ICPC, both in hard copy and in electronic form, is owned by Wonca. See http://www.kith.no/templates/kith_WebPage____1110.aspx"); - vs.setStatus(PublicationStatus.ACTIVE); - vs.setDateElement(new DateTimeType(title.getAttribute("date"))); - - vs.getCompose().addInclude().setSystem("http://hl7.org/fhir/sid/icpc2"); - CodeSystem cs = new CodeSystem(); - cs.setUrl("http://hl7.org/fhir/sid/icpc2"); - cs.setVersion(title.getAttribute("version")); - cs.setName(title.getAttribute("name")); - identifier = XMLUtil.getNamedChild(doc.getDocumentElement(), "Identifier"); - cs.setPublisher(identifier.getAttribute("authority")); - cs.setIdentifier(new Identifier().setValue(identifier.getAttribute("uid"))); - cs.setHierarchyMeaning(CodeSystemHierarchyMeaning.CLASSIFIEDWITH); - authors = new ArrayList(); - XMLUtil.getNamedChildren(XMLUtil.getNamedChild(doc.getDocumentElement(), "Authors"), "Author", authors); - for (Element a : authors) - if (!a.getAttribute("name").contains("+")) - cs.addContact().setName(a.getTextContent()); - cs.setCopyright("The copyright of ICPC, both in hard copy and in electronic form, is owned by Wonca. See http://www.kith.no/templates/kith_WebPage____1110.aspx"); - cs.setStatus(PublicationStatus.ACTIVE); - cs.setDateElement(new DateTimeType(title.getAttribute("date"))); - cs.setValueSet(vs.getUrl()); - - Map concepts = new HashMap(); - List classes = new ArrayList(); - XMLUtil.getNamedChildren(doc.getDocumentElement(), "Class", classes); - for (Element cls : classes) { - processClass(cls, concepts, cs); - } - - XmlParser xml = new XmlParser(); - xml.setOutputStyle(OutputStyle.PRETTY); - xml.compose(new FileOutputStream(targetFileNameVS), vs); - xml.compose(new FileOutputStream(targetFileNameCS), cs); - } - - private void processClass(Element cls, Map concepts, CodeSystem define) { - ConceptDefinitionComponent concept = new ConceptDefinitionComponent(); - concept.setCode(cls.getAttribute("code")); - concept.setDefinition(getRubric(cls, "preferred")); - String s = getRubric(cls, "shortTitle"); - if (s != null && !s.equals(concept.getDefinition())) - concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("shortTitle")).setValue(s); - s = getRubric(cls, "inclusion"); - if (s != null) - concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("inclusion")).setValue(s); - s = getRubric(cls, "exclusion"); - if (s != null) - concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("exclusion")).setValue(s); - s = getRubric(cls, "criteria"); - if (s != null) - concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("criteria")).setValue(s); - s = getRubric(cls, "consider"); - if (s != null) - concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("consider")).setValue(s); - s = getRubric(cls, "note"); - if (s != null) - concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("note")).setValue(s); - - concepts.put(concept.getCode(), concept); - List children = new ArrayList(); - XMLUtil.getNamedChildren(cls, "SubClass", children); - if (children.size() > 0) - CodeSystemUtilities.setNotSelectable(define, concept); - - Element parent = XMLUtil.getNamedChild(cls, "SuperClass"); - if (parent == null) { - define.addConcept(concept); - } else { - ConceptDefinitionComponent p = concepts.get(parent.getAttribute("code")); - p.getConcept().add(concept); - } - } - - private String getRubric(Element cls, String kind) { - List rubrics = new ArrayList(); - XMLUtil.getNamedChildren(cls, "Rubric", rubrics); - for (Element r : rubrics) { - if (r.getAttribute("kind").equals(kind)) - return XMLUtil.getNamedChild(r, "Label").getTextContent(); - } - return null; - } - -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + +import java.io.FileInputStream; +import java.io.FileOutputStream; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +import javax.xml.parsers.DocumentBuilder; +import javax.xml.parsers.DocumentBuilderFactory; + +import org.hl7.fhir.dstu3.formats.IParser.OutputStyle; +import org.hl7.fhir.dstu3.formats.XmlParser; +import org.hl7.fhir.dstu3.model.CodeSystem; +import org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning; +import org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent; +import org.hl7.fhir.dstu3.model.Coding; +import org.hl7.fhir.dstu3.model.DateTimeType; +import org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus; +import org.hl7.fhir.dstu3.model.Identifier; +import org.hl7.fhir.dstu3.model.ValueSet; +import org.hl7.fhir.dstu3.terminologies.CodeSystemUtilities; +import org.hl7.fhir.utilities.xml.XMLUtil; +import org.w3c.dom.Document; +import org.w3c.dom.Element; + + +/** + * This is defined as a prototype ClaML importer + * + * @author Grahame + * + */ + +public class ICPC2Importer { + + public static void main(String[] args) { + try { + ICPC2Importer r = new ICPC2Importer(); + r.setSourceFileName("c:\\temp\\ICPC-2e-v5.0.xml"); + r.setTargetFileNameCS("C:\\temp\\icpc2.xml"); + r.setTargetFileNameVS("C:\\temp\\icpc2-vs.xml"); + r.go(); + System.out.println("Completed OK"); + } catch (Exception e) { + e.printStackTrace(); + } + } + + private String sourceFileName; // the ICPC2 ClaML file + private String targetFileNameVS; // the value set to produce + private String targetFileNameCS; // the value set to produce + + public ICPC2Importer() { + super(); + } + public ICPC2Importer(String sourceFileName, String targetFileNameCS, String targetFileNameVS) { + super(); + this.sourceFileName = sourceFileName; + this.targetFileNameCS = targetFileNameCS; + this.targetFileNameVS = targetFileNameVS; + } + public String getSourceFileName() { + return sourceFileName; + } + public void setSourceFileName(String sourceFileName) { + this.sourceFileName = sourceFileName; + } + public String getTargetFileNameCS() { + return targetFileNameCS; + } + public void setTargetFileNameCS(String targetFileName) { + this.targetFileNameCS = targetFileName; + } + + public String getTargetFileNameVS() { + return targetFileNameVS; + } + public void setTargetFileNameVS(String targetFileName) { + this.targetFileNameVS = targetFileName; + } + + public void go() throws Exception { + DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); + factory.setNamespaceAware(false); + DocumentBuilder builder = factory.newDocumentBuilder(); + Document doc = builder.parse(new FileInputStream(sourceFileName)); + + ValueSet vs = new ValueSet(); + vs.setUrl("http://hl7.org/fhir/sid/icpc2/vs"); + Element title = XMLUtil.getNamedChild(doc.getDocumentElement(), "Title"); + vs.setVersion(title.getAttribute("version")); + vs.setName(title.getAttribute("name")); + vs.setImmutable(true); + Element identifier = XMLUtil.getNamedChild(doc.getDocumentElement(), "Identifier"); + vs.setPublisher(identifier.getAttribute("authority")); + vs.addIdentifier(new Identifier().setValue(identifier.getAttribute("uid"))); + List authors = new ArrayList(); + XMLUtil.getNamedChildren(XMLUtil.getNamedChild(doc.getDocumentElement(), "Authors"), "Author", authors); + for (Element a : authors) + if (!a.getAttribute("name").contains("+")) + vs.addContact().setName(a.getTextContent()); + vs.setCopyright("The copyright of ICPC, both in hard copy and in electronic form, is owned by Wonca. See http://www.kith.no/templates/kith_WebPage____1110.aspx"); + vs.setStatus(PublicationStatus.ACTIVE); + vs.setDateElement(new DateTimeType(title.getAttribute("date"))); + + vs.getCompose().addInclude().setSystem("http://hl7.org/fhir/sid/icpc2"); + CodeSystem cs = new CodeSystem(); + cs.setUrl("http://hl7.org/fhir/sid/icpc2"); + cs.setVersion(title.getAttribute("version")); + cs.setName(title.getAttribute("name")); + identifier = XMLUtil.getNamedChild(doc.getDocumentElement(), "Identifier"); + cs.setPublisher(identifier.getAttribute("authority")); + cs.setIdentifier(new Identifier().setValue(identifier.getAttribute("uid"))); + cs.setHierarchyMeaning(CodeSystemHierarchyMeaning.CLASSIFIEDWITH); + authors = new ArrayList(); + XMLUtil.getNamedChildren(XMLUtil.getNamedChild(doc.getDocumentElement(), "Authors"), "Author", authors); + for (Element a : authors) + if (!a.getAttribute("name").contains("+")) + cs.addContact().setName(a.getTextContent()); + cs.setCopyright("The copyright of ICPC, both in hard copy and in electronic form, is owned by Wonca. See http://www.kith.no/templates/kith_WebPage____1110.aspx"); + cs.setStatus(PublicationStatus.ACTIVE); + cs.setDateElement(new DateTimeType(title.getAttribute("date"))); + cs.setValueSet(vs.getUrl()); + + Map concepts = new HashMap(); + List classes = new ArrayList(); + XMLUtil.getNamedChildren(doc.getDocumentElement(), "Class", classes); + for (Element cls : classes) { + processClass(cls, concepts, cs); + } + + XmlParser xml = new XmlParser(); + xml.setOutputStyle(OutputStyle.PRETTY); + xml.compose(new FileOutputStream(targetFileNameVS), vs); + xml.compose(new FileOutputStream(targetFileNameCS), cs); + } + + private void processClass(Element cls, Map concepts, CodeSystem define) { + ConceptDefinitionComponent concept = new ConceptDefinitionComponent(); + concept.setCode(cls.getAttribute("code")); + concept.setDefinition(getRubric(cls, "preferred")); + String s = getRubric(cls, "shortTitle"); + if (s != null && !s.equals(concept.getDefinition())) + concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("shortTitle")).setValue(s); + s = getRubric(cls, "inclusion"); + if (s != null) + concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("inclusion")).setValue(s); + s = getRubric(cls, "exclusion"); + if (s != null) + concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("exclusion")).setValue(s); + s = getRubric(cls, "criteria"); + if (s != null) + concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("criteria")).setValue(s); + s = getRubric(cls, "consider"); + if (s != null) + concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("consider")).setValue(s); + s = getRubric(cls, "note"); + if (s != null) + concept.addDesignation().setUse(new Coding().setSystem("http://hl7.org/fhir/sid/icpc2/rubrics").setCode("note")).setValue(s); + + concepts.put(concept.getCode(), concept); + List children = new ArrayList(); + XMLUtil.getNamedChildren(cls, "SubClass", children); + if (children.size() > 0) + CodeSystemUtilities.setNotSelectable(define, concept); + + Element parent = XMLUtil.getNamedChild(cls, "SuperClass"); + if (parent == null) { + define.addConcept(concept); + } else { + ConceptDefinitionComponent p = concepts.get(parent.getAttribute("code")); + p.getConcept().add(concept); + } + } + + private String getRubric(Element cls, String kind) { + List rubrics = new ArrayList(); + XMLUtil.getNamedChildren(cls, "Rubric", rubrics); + for (Element r : rubrics) { + if (r.getAttribute("kind").equals(kind)) + return XMLUtil.getNamedChild(r, "Label").getTextContent(); + } + return null; + } + +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertorAdvisor30.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertorAdvisor30.java index 99b495d7815..146e718b7c5 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertorAdvisor30.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertorAdvisor30.java @@ -1,15 +1,36 @@ -package org.hl7.fhir.convertors; - -import org.hl7.fhir.exceptions.FHIRException; - -public interface VersionConvertorAdvisor30 { - boolean ignoreEntry(org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent src); - - // called ? - org.hl7.fhir.instance.model.Resource convert(org.hl7.fhir.dstu3.model.Resource resource) throws FHIRException; - - // called when an r2 value set has a codeSystem in it - void handleCodeSystem(org.hl7.fhir.dstu3.model.CodeSystem tgtcs, org.hl7.fhir.dstu3.model.ValueSet source); - - org.hl7.fhir.dstu3.model.CodeSystem getCodeSystem(org.hl7.fhir.dstu3.model.ValueSet src); -} \ No newline at end of file +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + +import org.hl7.fhir.exceptions.FHIRException; + +public interface VersionConvertorAdvisor30 { + boolean ignoreEntry(org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent src); + + // called ? + org.hl7.fhir.instance.model.Resource convert(org.hl7.fhir.dstu3.model.Resource resource) throws FHIRException; + + // called when an r2 value set has a codeSystem in it + void handleCodeSystem(org.hl7.fhir.dstu3.model.CodeSystem tgtcs, org.hl7.fhir.dstu3.model.ValueSet source); + + org.hl7.fhir.dstu3.model.CodeSystem getCodeSystem(org.hl7.fhir.dstu3.model.ValueSet src); +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertorAdvisor40.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertorAdvisor40.java index 84d1805da54..d6aceef0b7e 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertorAdvisor40.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertorAdvisor40.java @@ -1,16 +1,37 @@ -package org.hl7.fhir.convertors; - -import org.hl7.fhir.exceptions.FHIRException; - -public interface VersionConvertorAdvisor40 { - boolean ignoreEntry(org.hl7.fhir.r4.model.Bundle.BundleEntryComponent src); - - // called ? - org.hl7.fhir.instance.model.Resource convertR2(org.hl7.fhir.r4.model.Resource resource) throws FHIRException; - org.hl7.fhir.dstu3.model.Resource convertR3(org.hl7.fhir.r4.model.Resource resource) throws FHIRException; - - // called when an r2 value set has a codeSystem in it - void handleCodeSystem(org.hl7.fhir.r4.model.CodeSystem tgtcs, org.hl7.fhir.r4.model.ValueSet source); - - org.hl7.fhir.r4.model.CodeSystem getCodeSystem(org.hl7.fhir.r4.model.ValueSet src); -} \ No newline at end of file +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + +import org.hl7.fhir.exceptions.FHIRException; + +public interface VersionConvertorAdvisor40 { + boolean ignoreEntry(org.hl7.fhir.r4.model.Bundle.BundleEntryComponent src); + + // called ? + org.hl7.fhir.instance.model.Resource convertR2(org.hl7.fhir.r4.model.Resource resource) throws FHIRException; + org.hl7.fhir.dstu3.model.Resource convertR3(org.hl7.fhir.r4.model.Resource resource) throws FHIRException; + + // called when an r2 value set has a codeSystem in it + void handleCodeSystem(org.hl7.fhir.r4.model.CodeSystem tgtcs, org.hl7.fhir.r4.model.ValueSet source); + + org.hl7.fhir.r4.model.CodeSystem getCodeSystem(org.hl7.fhir.r4.model.ValueSet src); +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_10_30.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_10_30.java index 5057a532c11..7fe7ee0e0d9 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_10_30.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_10_30.java @@ -1,13102 +1,13123 @@ -package org.hl7.fhir.convertors; - -import java.util.ArrayList; -import java.util.List; - -import org.apache.commons.codec.binary.Base64; -import org.hl7.fhir.instance.model.CodeableConcept; -import org.hl7.fhir.instance.model.Reference; -import org.hl7.fhir.instance.utils.ToolingExtensions; -import org.hl7.fhir.dstu3.conformance.ProfileUtilities; -import org.hl7.fhir.dstu3.model.Annotation; -import org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction; -import org.hl7.fhir.dstu3.model.CodeSystem; -import org.hl7.fhir.dstu3.model.Coding; -import org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode; -import org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent; -import org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent; -import org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority; -import org.hl7.fhir.dstu3.model.ConceptMap; -import org.hl7.fhir.dstu3.model.ContactDetail; -import org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent; -import org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent; -import org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus; -import org.hl7.fhir.dstu3.model.Dosage; -import org.hl7.fhir.dstu3.model.ElementDefinition; -import org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent; -import org.hl7.fhir.dstu3.model.Enumeration; -import org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent; -import org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority; -import org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind; -import org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule; -import org.hl7.fhir.dstu3.model.Timing.EventTiming; -import org.hl7.fhir.dstu3.model.UriType; -import org.hl7.fhir.dstu3.terminologies.CodeSystemUtilities; -import org.hl7.fhir.exceptions.FHIRException; -import org.hl7.fhir.utilities.Utilities; - -/* - Copyright (c) 2011+, HL7, Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without modification, - are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of HL7 nor the names of its contributors may be used to - endorse or promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - - */ - -// Generated on Thu, Apr 7, 2016 02:14+1000 for FHIR v1.4.0 - - -public class VersionConvertor_10_30 { - - public VersionConvertorAdvisor30 advisor; - - public VersionConvertor_10_30(VersionConvertorAdvisor30 advisor) { - super(); - this.advisor = advisor; - } - - public void copyElement(org.hl7.fhir.instance.model.Element src, org.hl7.fhir.dstu3.model.Element tgt) throws FHIRException { - tgt.setId(src.getId()); - for (org.hl7.fhir.instance.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - public void copyElement(org.hl7.fhir.dstu3.model.Element src, org.hl7.fhir.instance.model.Element tgt) throws FHIRException { - tgt.setId(src.getId()); - for (org.hl7.fhir.dstu3.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - public void copyElement(org.hl7.fhir.dstu3.model.DomainResource src, org.hl7.fhir.instance.model.Element tgt) throws FHIRException { - tgt.setId(src.getId()); - for (org.hl7.fhir.dstu3.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - public void copyBackboneElement(org.hl7.fhir.instance.model.BackboneElement src, org.hl7.fhir.dstu3.model.BackboneElement tgt) throws FHIRException { - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Extension e : src.getModifierExtension()) { - tgt.addModifierExtension(convertExtension(e)); - } - } - - public void copyBackboneElement(org.hl7.fhir.dstu3.model.BackboneElement src, org.hl7.fhir.instance.model.BackboneElement tgt) throws FHIRException { - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Extension e : src.getModifierExtension()) { - tgt.addModifierExtension(convertExtension(e)); - } - } - - public org.hl7.fhir.dstu3.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.instance.model.Base64BinaryType src) throws FHIRException { - org.hl7.fhir.dstu3.model.Base64BinaryType tgt = new org.hl7.fhir.dstu3.model.Base64BinaryType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.dstu3.model.Base64BinaryType src) throws FHIRException { - org.hl7.fhir.instance.model.Base64BinaryType tgt = new org.hl7.fhir.instance.model.Base64BinaryType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.BooleanType convertBoolean(org.hl7.fhir.instance.model.BooleanType src) throws FHIRException { - org.hl7.fhir.dstu3.model.BooleanType tgt = new org.hl7.fhir.dstu3.model.BooleanType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.BooleanType convertBoolean(org.hl7.fhir.dstu3.model.BooleanType src) throws FHIRException { - org.hl7.fhir.instance.model.BooleanType tgt = new org.hl7.fhir.instance.model.BooleanType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CodeType convertCode(org.hl7.fhir.instance.model.CodeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.CodeType tgt = new org.hl7.fhir.dstu3.model.CodeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.CodeType convertCode(org.hl7.fhir.dstu3.model.CodeType src) throws FHIRException { - org.hl7.fhir.instance.model.CodeType tgt = new org.hl7.fhir.instance.model.CodeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.UriType convertCodeToUri(org.hl7.fhir.instance.model.CodeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.UriType tgt = new org.hl7.fhir.dstu3.model.UriType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.CodeType convertUriToCode(org.hl7.fhir.dstu3.model.UriType src) throws FHIRException { - org.hl7.fhir.instance.model.CodeType tgt = new org.hl7.fhir.instance.model.CodeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DateType convertDate(org.hl7.fhir.instance.model.DateType src) throws FHIRException { - org.hl7.fhir.dstu3.model.DateType tgt = new org.hl7.fhir.dstu3.model.DateType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DateType convertDate(org.hl7.fhir.instance.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.DateType tgt = new org.hl7.fhir.dstu3.model.DateType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.DateType convertDate(org.hl7.fhir.dstu3.model.DateType src) throws FHIRException { - org.hl7.fhir.instance.model.DateType tgt = new org.hl7.fhir.instance.model.DateType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.DateType convertDate(org.hl7.fhir.dstu3.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.instance.model.DateType tgt = new org.hl7.fhir.instance.model.DateType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DateTimeType convertDateTime(org.hl7.fhir.instance.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.DateTimeType tgt = new org.hl7.fhir.dstu3.model.DateTimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.DateTimeType convertDateTime(org.hl7.fhir.dstu3.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.instance.model.DateTimeType tgt = new org.hl7.fhir.instance.model.DateTimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DecimalType convertDecimal(org.hl7.fhir.instance.model.DecimalType src) throws FHIRException { - org.hl7.fhir.dstu3.model.DecimalType tgt = new org.hl7.fhir.dstu3.model.DecimalType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.DecimalType convertDecimal(org.hl7.fhir.dstu3.model.DecimalType src) throws FHIRException { - org.hl7.fhir.instance.model.DecimalType tgt = new org.hl7.fhir.instance.model.DecimalType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.IdType convertId(org.hl7.fhir.instance.model.IdType src) throws FHIRException { - org.hl7.fhir.dstu3.model.IdType tgt = new org.hl7.fhir.dstu3.model.IdType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.IdType convertId(org.hl7.fhir.dstu3.model.IdType src) throws FHIRException { - org.hl7.fhir.instance.model.IdType tgt = new org.hl7.fhir.instance.model.IdType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.InstantType convertInstant(org.hl7.fhir.instance.model.InstantType src) throws FHIRException { - org.hl7.fhir.dstu3.model.InstantType tgt = new org.hl7.fhir.dstu3.model.InstantType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.InstantType convertInstant(org.hl7.fhir.dstu3.model.InstantType src) throws FHIRException { - org.hl7.fhir.instance.model.InstantType tgt = new org.hl7.fhir.instance.model.InstantType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.IntegerType convertInteger(org.hl7.fhir.instance.model.IntegerType src) throws FHIRException { - org.hl7.fhir.dstu3.model.IntegerType tgt = new org.hl7.fhir.dstu3.model.IntegerType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.IntegerType convertInteger(org.hl7.fhir.dstu3.model.IntegerType src) throws FHIRException { - org.hl7.fhir.instance.model.IntegerType tgt = new org.hl7.fhir.instance.model.IntegerType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.MarkdownType convertMarkdown(org.hl7.fhir.instance.model.MarkdownType src) throws FHIRException { - org.hl7.fhir.dstu3.model.MarkdownType tgt = new org.hl7.fhir.dstu3.model.MarkdownType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.MarkdownType convertMarkdown(org.hl7.fhir.dstu3.model.MarkdownType src) throws FHIRException { - org.hl7.fhir.instance.model.MarkdownType tgt = new org.hl7.fhir.instance.model.MarkdownType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.OidType convertOid(org.hl7.fhir.instance.model.OidType src) throws FHIRException { - org.hl7.fhir.dstu3.model.OidType tgt = new org.hl7.fhir.dstu3.model.OidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.OidType convertOid(org.hl7.fhir.dstu3.model.OidType src) throws FHIRException { - org.hl7.fhir.instance.model.OidType tgt = new org.hl7.fhir.instance.model.OidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.PositiveIntType convertPositiveInt(org.hl7.fhir.instance.model.PositiveIntType src) throws FHIRException { - org.hl7.fhir.dstu3.model.PositiveIntType tgt = new org.hl7.fhir.dstu3.model.PositiveIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.PositiveIntType convertPositiveInt(org.hl7.fhir.dstu3.model.PositiveIntType src) throws FHIRException { - org.hl7.fhir.instance.model.PositiveIntType tgt = new org.hl7.fhir.instance.model.PositiveIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.StringType convertString(org.hl7.fhir.instance.model.StringType src) throws FHIRException { - org.hl7.fhir.dstu3.model.StringType tgt = new org.hl7.fhir.dstu3.model.StringType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.StringType convertString(org.hl7.fhir.dstu3.model.StringType src) throws FHIRException { - org.hl7.fhir.instance.model.StringType tgt = new org.hl7.fhir.instance.model.StringType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TimeType convertTime(org.hl7.fhir.instance.model.TimeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.TimeType tgt = new org.hl7.fhir.dstu3.model.TimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.TimeType convertTime(org.hl7.fhir.dstu3.model.TimeType src) throws FHIRException { - org.hl7.fhir.instance.model.TimeType tgt = new org.hl7.fhir.instance.model.TimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.instance.model.UnsignedIntType src) throws FHIRException { - org.hl7.fhir.dstu3.model.UnsignedIntType tgt = new org.hl7.fhir.dstu3.model.UnsignedIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.dstu3.model.UnsignedIntType src) throws FHIRException { - org.hl7.fhir.instance.model.UnsignedIntType tgt = new org.hl7.fhir.instance.model.UnsignedIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.UriType convertUri(org.hl7.fhir.instance.model.UriType src) throws FHIRException { - org.hl7.fhir.dstu3.model.UriType tgt = new org.hl7.fhir.dstu3.model.UriType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.UriType convertUri(org.hl7.fhir.dstu3.model.UriType src) throws FHIRException { - org.hl7.fhir.instance.model.UriType tgt = new org.hl7.fhir.instance.model.UriType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.UuidType convertUuid(org.hl7.fhir.instance.model.UuidType src) throws FHIRException { - org.hl7.fhir.dstu3.model.UuidType tgt = new org.hl7.fhir.dstu3.model.UuidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.UuidType convertUuid(org.hl7.fhir.dstu3.model.UuidType src) throws FHIRException { - org.hl7.fhir.instance.model.UuidType tgt = new org.hl7.fhir.instance.model.UuidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Extension convertExtension(org.hl7.fhir.instance.model.Extension src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Extension tgt = new org.hl7.fhir.dstu3.model.Extension(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public org.hl7.fhir.instance.model.Extension convertExtension(org.hl7.fhir.dstu3.model.Extension src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Extension tgt = new org.hl7.fhir.instance.model.Extension(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Narrative convertNarrative(org.hl7.fhir.instance.model.Narrative src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Narrative tgt = new org.hl7.fhir.dstu3.model.Narrative(); - copyElement(src, tgt); - tgt.setStatus(convertNarrativeStatus(src.getStatus())); - tgt.setDiv(src.getDiv()); - return tgt; - } - - public org.hl7.fhir.instance.model.Narrative convertNarrative(org.hl7.fhir.dstu3.model.Narrative src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Narrative tgt = new org.hl7.fhir.instance.model.Narrative(); - copyElement(src, tgt); - tgt.setStatus(convertNarrativeStatus(src.getStatus())); - tgt.setDiv(src.getDiv()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.instance.model.Narrative.NarrativeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GENERATED: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.GENERATED; - case EXTENSIONS: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EXTENSIONS; - case ADDITIONAL: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.ADDITIONAL; - case EMPTY: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EMPTY; - default: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GENERATED: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.GENERATED; - case EXTENSIONS: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.EXTENSIONS; - case ADDITIONAL: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.ADDITIONAL; - case EMPTY: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.EMPTY; - default: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Annotation convertAnnotation(org.hl7.fhir.instance.model.Annotation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Annotation tgt = new org.hl7.fhir.dstu3.model.Annotation(); - copyElement(src, tgt); - tgt.setAuthor(convertType(src.getAuthor())); - tgt.setTime(src.getTime()); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.instance.model.Annotation convertAnnotation(org.hl7.fhir.dstu3.model.Annotation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Annotation tgt = new org.hl7.fhir.instance.model.Annotation(); - copyElement(src, tgt); - tgt.setAuthor(convertType(src.getAuthor())); - tgt.setTime(src.getTime()); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Attachment convertAttachment(org.hl7.fhir.instance.model.Attachment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Attachment tgt = new org.hl7.fhir.dstu3.model.Attachment(); - copyElement(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setLanguage(src.getLanguage()); - tgt.setData(src.getData()); - tgt.setUrl(src.getUrl()); - tgt.setSize(src.getSize()); - tgt.setHash(src.getHash()); - tgt.setTitle(src.getTitle()); - tgt.setCreation(src.getCreation()); - return tgt; - } - - public org.hl7.fhir.instance.model.Attachment convertAttachment(org.hl7.fhir.dstu3.model.Attachment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Attachment tgt = new org.hl7.fhir.instance.model.Attachment(); - copyElement(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setLanguage(src.getLanguage()); - tgt.setData(src.getData()); - tgt.setUrl(src.getUrl()); - tgt.setSize(src.getSize()); - tgt.setHash(src.getHash()); - tgt.setTitle(src.getTitle()); - tgt.setCreation(src.getCreation()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.instance.model.CodeableConcept src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CodeableConcept tgt = new org.hl7.fhir.dstu3.model.CodeableConcept(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Coding t : src.getCoding()) - tgt.addCoding(convertCoding(t)); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.instance.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.dstu3.model.CodeableConcept src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CodeableConcept tgt = new org.hl7.fhir.instance.model.CodeableConcept(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCoding()) - tgt.addCoding(convertCoding(t)); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Coding convertCoding(org.hl7.fhir.instance.model.Coding src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Coding tgt = new org.hl7.fhir.dstu3.model.Coding(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setVersion(src.getVersion()); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - tgt.setUserSelected(src.getUserSelected()); - return tgt; - } - - public org.hl7.fhir.instance.model.Coding convertCoding(org.hl7.fhir.dstu3.model.Coding src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Coding tgt = new org.hl7.fhir.instance.model.Coding(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setVersion(src.getVersion()); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - tgt.setUserSelected(src.getUserSelected()); - return tgt; - } - - - - public org.hl7.fhir.dstu3.model.Identifier convertIdentifier(org.hl7.fhir.instance.model.Identifier src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Identifier tgt = new org.hl7.fhir.dstu3.model.Identifier(); - copyElement(src, tgt); - tgt.setUse(convertIdentifierUse(src.getUse())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setSystem(src.getSystem()); - tgt.setValue(src.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setAssigner(convertReference(src.getAssigner())); - return tgt; - } - - public org.hl7.fhir.instance.model.Identifier convertIdentifier(org.hl7.fhir.dstu3.model.Identifier src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Identifier tgt = new org.hl7.fhir.instance.model.Identifier(); - copyElement(src, tgt); - if (src.hasUse()) - tgt.setUse(convertIdentifierUse(src.getUse())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasAssigner()) - tgt.setAssigner(convertReference(src.getAssigner())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.instance.model.Identifier.IdentifierUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.USUAL; - case OFFICIAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.OFFICIAL; - case TEMP: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.TEMP; - case SECONDARY: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.SECONDARY; - default: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.NULL; - } - } - - public org.hl7.fhir.instance.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.dstu3.model.Identifier.IdentifierUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.USUAL; - case OFFICIAL: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.OFFICIAL; - case TEMP: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.TEMP; - case SECONDARY: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.SECONDARY; - default: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Period convertPeriod(org.hl7.fhir.instance.model.Period src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Period tgt = new org.hl7.fhir.dstu3.model.Period(); - copyElement(src, tgt); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - return tgt; - } - - public org.hl7.fhir.instance.model.Period convertPeriod(org.hl7.fhir.dstu3.model.Period src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Period tgt = new org.hl7.fhir.instance.model.Period(); - copyElement(src, tgt); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Quantity convertQuantity(org.hl7.fhir.instance.model.Quantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Quantity tgt = new org.hl7.fhir.dstu3.model.Quantity(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Quantity convertQuantity(org.hl7.fhir.dstu3.model.Quantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Quantity tgt = new org.hl7.fhir.instance.model.Quantity(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.instance.model.Quantity.QuantityComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LESS_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_THAN; - case LESS_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_OR_EQUAL; - case GREATER_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; - case GREATER_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_THAN; - default: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.NULL; - } - } - - public org.hl7.fhir.instance.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.dstu3.model.Quantity.QuantityComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LESS_THAN: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.LESS_THAN; - case LESS_OR_EQUAL: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.LESS_OR_EQUAL; - case GREATER_OR_EQUAL: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; - case GREATER_THAN: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.GREATER_THAN; - default: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Range convertRange(org.hl7.fhir.instance.model.Range src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Range tgt = new org.hl7.fhir.dstu3.model.Range(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - return tgt; - } - - public org.hl7.fhir.instance.model.Range convertRange(org.hl7.fhir.dstu3.model.Range src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Range tgt = new org.hl7.fhir.instance.model.Range(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Ratio convertRatio(org.hl7.fhir.instance.model.Ratio src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Ratio tgt = new org.hl7.fhir.dstu3.model.Ratio(); - copyElement(src, tgt); - tgt.setNumerator(convertQuantity(src.getNumerator())); - tgt.setDenominator(convertQuantity(src.getDenominator())); - return tgt; - } - - public org.hl7.fhir.instance.model.Ratio convertRatio(org.hl7.fhir.dstu3.model.Ratio src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Ratio tgt = new org.hl7.fhir.instance.model.Ratio(); - copyElement(src, tgt); - tgt.setNumerator(convertQuantity(src.getNumerator())); - tgt.setDenominator(convertQuantity(src.getDenominator())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Reference convertReference(org.hl7.fhir.instance.model.Reference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Reference tgt = new org.hl7.fhir.dstu3.model.Reference(); - copyElement(src, tgt); - tgt.setReference(src.getReference()); - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public org.hl7.fhir.instance.model.Reference convertReference(org.hl7.fhir.dstu3.model.Reference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Reference tgt = new org.hl7.fhir.instance.model.Reference(); - copyElement(src, tgt); - tgt.setReference(src.getReference()); - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.SampledData convertSampledData(org.hl7.fhir.instance.model.SampledData src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.SampledData tgt = new org.hl7.fhir.dstu3.model.SampledData(); - copyElement(src, tgt); - tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); - tgt.setPeriod(src.getPeriod()); - tgt.setFactor(src.getFactor()); - tgt.setLowerLimit(src.getLowerLimit()); - tgt.setUpperLimit(src.getUpperLimit()); - tgt.setDimensions(src.getDimensions()); - tgt.setData(src.getData()); - return tgt; - } - - public org.hl7.fhir.instance.model.SampledData convertSampledData(org.hl7.fhir.dstu3.model.SampledData src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SampledData tgt = new org.hl7.fhir.instance.model.SampledData(); - copyElement(src, tgt); - tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); - tgt.setPeriod(src.getPeriod()); - tgt.setFactor(src.getFactor()); - tgt.setLowerLimit(src.getLowerLimit()); - tgt.setUpperLimit(src.getUpperLimit()); - tgt.setDimensions(src.getDimensions()); - tgt.setData(src.getData()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Signature convertSignature(org.hl7.fhir.instance.model.Signature src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Signature tgt = new org.hl7.fhir.dstu3.model.Signature(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - tgt.setWhen(src.getWhen()); - tgt.setWho(convertType(src.getWho())); - tgt.setContentType(src.getContentType()); - tgt.setBlob(src.getBlob()); - return tgt; - } - - public org.hl7.fhir.instance.model.Signature convertSignature(org.hl7.fhir.dstu3.model.Signature src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Signature tgt = new org.hl7.fhir.instance.model.Signature(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - tgt.setWhen(src.getWhen()); - tgt.setWho(convertType(src.getWho())); - tgt.setContentType(src.getContentType()); - tgt.setBlob(src.getBlob()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Address convertAddress(org.hl7.fhir.instance.model.Address src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Address tgt = new org.hl7.fhir.dstu3.model.Address(); - copyElement(src, tgt); - tgt.setUse(convertAddressUse(src.getUse())); - tgt.setType(convertAddressType(src.getType())); - tgt.setText(src.getText()); - for (org.hl7.fhir.instance.model.StringType t : src.getLine()) - tgt.addLine(t.getValue()); - tgt.setCity(src.getCity()); - tgt.setDistrict(src.getDistrict()); - tgt.setState(src.getState()); - tgt.setPostalCode(src.getPostalCode()); - tgt.setCountry(src.getCountry()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.Address convertAddress(org.hl7.fhir.dstu3.model.Address src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Address tgt = new org.hl7.fhir.instance.model.Address(); - copyElement(src, tgt); - tgt.setUse(convertAddressUse(src.getUse())); - tgt.setType(convertAddressType(src.getType())); - tgt.setText(src.getText()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getLine()) - tgt.addLine(t.getValue()); - tgt.setCity(src.getCity()); - tgt.setDistrict(src.getDistrict()); - tgt.setState(src.getState()); - tgt.setPostalCode(src.getPostalCode()); - tgt.setCountry(src.getCountry()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Address.AddressUse convertAddressUse(org.hl7.fhir.instance.model.Address.AddressUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.dstu3.model.Address.AddressUse.HOME; - case WORK: return org.hl7.fhir.dstu3.model.Address.AddressUse.WORK; - case TEMP: return org.hl7.fhir.dstu3.model.Address.AddressUse.TEMP; - case OLD: return org.hl7.fhir.dstu3.model.Address.AddressUse.OLD; - default: return org.hl7.fhir.dstu3.model.Address.AddressUse.NULL; - } - } - - public org.hl7.fhir.instance.model.Address.AddressUse convertAddressUse(org.hl7.fhir.dstu3.model.Address.AddressUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.instance.model.Address.AddressUse.HOME; - case WORK: return org.hl7.fhir.instance.model.Address.AddressUse.WORK; - case TEMP: return org.hl7.fhir.instance.model.Address.AddressUse.TEMP; - case OLD: return org.hl7.fhir.instance.model.Address.AddressUse.OLD; - default: return org.hl7.fhir.instance.model.Address.AddressUse.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Address.AddressType convertAddressType(org.hl7.fhir.instance.model.Address.AddressType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case POSTAL: return org.hl7.fhir.dstu3.model.Address.AddressType.POSTAL; - case PHYSICAL: return org.hl7.fhir.dstu3.model.Address.AddressType.PHYSICAL; - case BOTH: return org.hl7.fhir.dstu3.model.Address.AddressType.BOTH; - default: return org.hl7.fhir.dstu3.model.Address.AddressType.NULL; - } - } - - public org.hl7.fhir.instance.model.Address.AddressType convertAddressType(org.hl7.fhir.dstu3.model.Address.AddressType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case POSTAL: return org.hl7.fhir.instance.model.Address.AddressType.POSTAL; - case PHYSICAL: return org.hl7.fhir.instance.model.Address.AddressType.PHYSICAL; - case BOTH: return org.hl7.fhir.instance.model.Address.AddressType.BOTH; - default: return org.hl7.fhir.instance.model.Address.AddressType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ContactPoint convertContactPoint(org.hl7.fhir.instance.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactPoint tgt = new org.hl7.fhir.dstu3.model.ContactPoint(); - copyElement(src, tgt); - tgt.setSystem(convertContactPointSystem(src.getSystem())); - tgt.setValue(src.getValue()); - tgt.setUse(convertContactPointUse(src.getUse())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.ContactPoint convertContactPoint(org.hl7.fhir.dstu3.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ContactPoint tgt = new org.hl7.fhir.instance.model.ContactPoint(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(convertContactPointSystem(src.getSystem())); - tgt.setValue(src.getValue()); - tgt.setUse(convertContactPointUse(src.getUse())); - tgt.setRank(src.getRank()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHONE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PHONE; - case FAX: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.FAX; - case EMAIL: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.EMAIL; - case PAGER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PAGER; - case OTHER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.OTHER; - default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.NULL; - } - } - - public org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHONE: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.PHONE; - case FAX: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.FAX; - case EMAIL: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.EMAIL; - case PAGER: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.PAGER; - case OTHER: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.OTHER; - case URL: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.OTHER; - default: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.instance.model.ContactPoint.ContactPointUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.HOME; - case WORK: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.WORK; - case TEMP: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.TEMP; - case OLD: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.OLD; - case MOBILE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.MOBILE; - default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.NULL; - } - } - - public org.hl7.fhir.instance.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.HOME; - case WORK: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.WORK; - case TEMP: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.TEMP; - case OLD: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.OLD; - case MOBILE: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.MOBILE; - default: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ElementDefinition convertElementDefinition(org.hl7.fhir.instance.model.ElementDefinition src, List slicePaths) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition tgt = new org.hl7.fhir.dstu3.model.ElementDefinition(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - for (org.hl7.fhir.instance.model.Enumeration t : src.getRepresentation()) - tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); - if (src.hasName()) { - if (slicePaths.contains(src.getPath())) - tgt.setSliceName(src.getName()); - tgt.setId(src.getName()); - } - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - for (org.hl7.fhir.instance.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - if (src.hasSlicing()) - tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); - if (src.hasShort()) - tgt.setShort(src.getShort()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasComments()) - tgt.setComment(src.getComments()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - for (org.hl7.fhir.instance.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasBase()) - tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); - if (src.hasNameReference()) - tgt.setContentReference("#"+src.getNameReference()); - for (org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent t : src.getType()) - tgt.addType(convertElementDefinitionTypeComponent(t)); - if (src.hasDefaultValue()) - tgt.setDefaultValue(convertType(src.getDefaultValue())); - if (src.hasMeaningWhenMissing()) - tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); - if (src.hasFixed()) - tgt.setFixed(convertType(src.getFixed())); - if (src.hasPattern()) - tgt.setPattern(convertType(src.getPattern())); - if (src.hasExample()) - tgt.addExample().setLabel("General").setValue(convertType(src.getExample())); - if (src.hasMinValue()) - tgt.setMinValue(convertType(src.getMinValue())); - if (src.hasMaxValue()) - tgt.setMaxValue(convertType(src.getMaxValue())); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - for (org.hl7.fhir.instance.model.IdType t : src.getCondition()) - tgt.addCondition(t.getValue()); - for (org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) - tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); - if (src.hasMustSupport()) - tgt.setMustSupport(src.getMustSupport()); - if (src.hasIsModifier()) - tgt.setIsModifier(src.getIsModifier()); - if (src.hasIsSummary()) - tgt.setIsSummary(src.getIsSummary()); - if (src.hasBinding()) - tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); - for (org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertElementDefinitionMappingComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition convertElementDefinition(org.hl7.fhir.dstu3.model.ElementDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition tgt = new org.hl7.fhir.instance.model.ElementDefinition(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getRepresentation()) - tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); - if (src.hasSliceName()) - tgt.setName(src.getSliceName()); - else - tgt.setName(src.getId()); - tgt.setLabel(src.getLabel()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - if (src.hasSlicing()) - tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); - tgt.setShort(src.getShort()); - tgt.setDefinition(src.getDefinition()); - tgt.setComments(src.getComment()); - tgt.setRequirements(src.getRequirements()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - if (src.hasBase()) - tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); - if (src.hasContentReference()) - tgt.setNameReference(src.getContentReference().substring(1)); - for (org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent t : src.getType()) - tgt.addType(convertElementDefinitionTypeComponent(t)); - tgt.setDefaultValue(convertType(src.getDefaultValue())); - tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); - tgt.setFixed(convertType(src.getFixed())); - tgt.setPattern(convertType(src.getPattern())); - if (src.hasExample()) - tgt.setExample(convertType(src.getExampleFirstRep().getValue())); - tgt.setMinValue(convertType(src.getMinValue())); - tgt.setMaxValue(convertType(src.getMaxValue())); - tgt.setMaxLength(src.getMaxLength()); - for (org.hl7.fhir.dstu3.model.IdType t : src.getCondition()) - tgt.addCondition(t.getValue()); - for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) - tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); - tgt.setMustSupport(src.getMustSupport()); - tgt.setIsModifier(src.getIsModifier()); - tgt.setIsSummary(src.getIsSummary()); - if (src.hasBinding()) - tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); - for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertElementDefinitionMappingComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XMLATTR: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XMLATTR; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.NULL; - } - } - - public org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XMLATTR: return org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation.XMLATTR; - default: return org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.StringType t : src.getDiscriminator()) - tgt.addDiscriminator(ProfileUtilities.interpretR2Discriminator(t.getValue())); - tgt.setDescription(src.getDescription()); - tgt.setOrdered(src.getOrdered()); - tgt.setRules(convertSlicingRules(src.getRules())); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent(); - copyElement(src, tgt); - for (ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) - tgt.addDiscriminator(ProfileUtilities.buildR2Discriminator(t)); - tgt.setDescription(src.getDescription()); - tgt.setOrdered(src.getOrdered()); - tgt.setRules(convertSlicingRules(src.getRules())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.instance.model.ElementDefinition.SlicingRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLOSED: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.CLOSED; - case OPEN: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPEN; - case OPENATEND: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPENATEND; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.NULL; - } - } - - public org.hl7.fhir.instance.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLOSED: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.CLOSED; - case OPEN: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.OPEN; - case OPENATEND: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.OPENATEND; - default: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent convertElementDefinitionTypeComponent(org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent(); - copyElement(src, tgt); - tgt.setCodeElement(convertCodeToUri(src.getCodeElement())); - for (org.hl7.fhir.instance.model.UriType t : src.getProfile()) - if (src.hasCode() && "Reference".equals(src.getCode())) - tgt.setTargetProfile(t.getValueAsString()); - else - tgt.setProfile(t.getValue()); - for (org.hl7.fhir.instance.model.Enumeration t : src.getAggregation()) - tgt.addAggregation(convertAggregationMode(t.getValue())); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent convertElementDefinitionTypeComponent(org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent(); - copyElement(src, tgt); - tgt.setCodeElement(convertUriToCode(src.getCodeElement())); - if (src.hasCode() && "Reference".equals(src.getCode())) { - if (src.hasTargetProfile()) - tgt.addProfile(src.getTargetProfile()); - } else if (src.hasProfile()) - tgt.addProfile(src.getProfile()); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getAggregation()) - tgt.addAggregation(convertAggregationMode(t.getValue())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.instance.model.ElementDefinition.AggregationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONTAINED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.CONTAINED; - case REFERENCED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.REFERENCED; - case BUNDLED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.BUNDLED; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.NULL; - } - } - - public org.hl7.fhir.instance.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONTAINED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.CONTAINED; - case REFERENCED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.REFERENCED; - case BUNDLED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.BUNDLED; - default: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent(); - copyElement(src, tgt); - tgt.setKey(src.getKey()); - tgt.setRequirements(src.getRequirements()); - tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); - tgt.setHuman(src.getHuman()); - tgt.setExpression(ToolingExtensions.readStringExtension(src, ToolingExtensions.EXT_EXPRESSION)); - tgt.setXpath(src.getXpath()); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent(); - copyElement(src, tgt); - tgt.setKey(src.getKey()); - tgt.setRequirements(src.getRequirements()); - tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); - tgt.setHuman(src.getHuman()); - if (src.hasExpression()) - ToolingExtensions.addStringExtension(tgt, ToolingExtensions.EXT_EXPRESSION, src.getExpression()); - tgt.setXpath(src.getXpath()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ERROR: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.ERROR; - case WARNING: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.WARNING; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.NULL; - } - } - - public org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ERROR: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.ERROR; - case WARNING: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.WARNING; - default: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setDescription(src.getDescription()); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setDescription(src.getDescription()); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.instance.model.Enumerations.BindingStrength src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.REQUIRED; - case EXTENSIBLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXTENSIBLE; - case PREFERRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.PREFERRED; - case EXAMPLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXAMPLE; - default: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.dstu3.model.Enumerations.BindingStrength src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.REQUIRED; - case EXTENSIBLE: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.EXTENSIBLE; - case PREFERRED: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.PREFERRED; - case EXAMPLE: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.EXAMPLE; - default: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setLanguage(src.getLanguage()); - tgt.setMap(src.getMap()); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setLanguage(src.getLanguage()); - tgt.setMap(src.getMap()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.HumanName convertHumanName(org.hl7.fhir.instance.model.HumanName src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.HumanName tgt = new org.hl7.fhir.dstu3.model.HumanName(); - copyElement(src, tgt); - tgt.setUse(convertNameUse(src.getUse())); - tgt.setText(src.getText()); - for (org.hl7.fhir.instance.model.StringType t : src.getFamily()) - tgt.setFamily(t.getValue()); - for (org.hl7.fhir.instance.model.StringType t : src.getGiven()) - tgt.addGiven(t.getValue()); - for (org.hl7.fhir.instance.model.StringType t : src.getPrefix()) - tgt.addPrefix(t.getValue()); - for (org.hl7.fhir.instance.model.StringType t : src.getSuffix()) - tgt.addSuffix(t.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.HumanName convertHumanName(org.hl7.fhir.dstu3.model.HumanName src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.HumanName tgt = new org.hl7.fhir.instance.model.HumanName(); - copyElement(src, tgt); - tgt.setUse(convertNameUse(src.getUse())); - tgt.setText(src.getText()); - if (src.hasFamily()) - tgt.addFamily(src.getFamily()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getGiven()) - tgt.addGiven(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getPrefix()) - tgt.addPrefix(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getSuffix()) - tgt.addSuffix(t.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.HumanName.NameUse convertNameUse(org.hl7.fhir.instance.model.HumanName.NameUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.USUAL; - case OFFICIAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OFFICIAL; - case TEMP: return org.hl7.fhir.dstu3.model.HumanName.NameUse.TEMP; - case NICKNAME: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NICKNAME; - case ANONYMOUS: return org.hl7.fhir.dstu3.model.HumanName.NameUse.ANONYMOUS; - case OLD: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OLD; - case MAIDEN: return org.hl7.fhir.dstu3.model.HumanName.NameUse.MAIDEN; - default: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NULL; - } - } - - public org.hl7.fhir.instance.model.HumanName.NameUse convertNameUse(org.hl7.fhir.dstu3.model.HumanName.NameUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.instance.model.HumanName.NameUse.USUAL; - case OFFICIAL: return org.hl7.fhir.instance.model.HumanName.NameUse.OFFICIAL; - case TEMP: return org.hl7.fhir.instance.model.HumanName.NameUse.TEMP; - case NICKNAME: return org.hl7.fhir.instance.model.HumanName.NameUse.NICKNAME; - case ANONYMOUS: return org.hl7.fhir.instance.model.HumanName.NameUse.ANONYMOUS; - case OLD: return org.hl7.fhir.instance.model.HumanName.NameUse.OLD; - case MAIDEN: return org.hl7.fhir.instance.model.HumanName.NameUse.MAIDEN; - default: return org.hl7.fhir.instance.model.HumanName.NameUse.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Meta convertMeta(org.hl7.fhir.instance.model.Meta src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Meta tgt = new org.hl7.fhir.dstu3.model.Meta(); - copyElement(src, tgt); - tgt.setVersionId(src.getVersionId()); - tgt.setLastUpdated(src.getLastUpdated()); - for (org.hl7.fhir.instance.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.instance.model.Coding t : src.getSecurity()) - tgt.addSecurity(convertCoding(t)); - for (org.hl7.fhir.instance.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Meta convertMeta(org.hl7.fhir.dstu3.model.Meta src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Meta tgt = new org.hl7.fhir.instance.model.Meta(); - copyElement(src, tgt); - tgt.setVersionId(src.getVersionId()); - tgt.setLastUpdated(src.getLastUpdated()); - for (org.hl7.fhir.dstu3.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurity()) - tgt.addSecurity(convertCoding(t)); - for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Timing convertTiming(org.hl7.fhir.instance.model.Timing src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Timing tgt = new org.hl7.fhir.dstu3.model.Timing(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.DateTimeType t : src.getEvent()) - tgt.addEvent(t.getValue()); - tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public org.hl7.fhir.instance.model.Timing convertTiming(org.hl7.fhir.dstu3.model.Timing src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Timing tgt = new org.hl7.fhir.instance.model.Timing(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.DateTimeType t : src.getEvent()) - tgt.addEvent(t.getValue()); - tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.instance.model.Timing.TimingRepeatComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent(); - copyElement(src, tgt); - tgt.setBounds(convertType(src.getBounds())); - tgt.setCount(src.getCount()); - tgt.setDuration(src.getDuration()); - tgt.setDurationMax(src.getDurationMax()); - tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnits())); - tgt.setFrequency(src.getFrequency()); - tgt.setFrequencyMax(src.getFrequencyMax()); - tgt.setPeriod(src.getPeriod()); - tgt.setPeriodMax(src.getPeriodMax()); - tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnits())); - tgt.addWhen(convertEventTiming(src.getWhen())); - return tgt; - } - - public org.hl7.fhir.instance.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.instance.model.Timing.TimingRepeatComponent(); - copyElement(src, tgt); - tgt.setBounds(convertType(src.getBounds())); - tgt.setCount(src.getCount()); - tgt.setDuration(src.getDuration()); - tgt.setDurationMax(src.getDurationMax()); - tgt.setDurationUnits(convertUnitsOfTime(src.getDurationUnit())); - tgt.setFrequency(src.getFrequency()); - tgt.setFrequencyMax(src.getFrequencyMax()); - tgt.setPeriod(src.getPeriod()); - tgt.setPeriodMax(src.getPeriodMax()); - tgt.setPeriodUnits(convertUnitsOfTime(src.getPeriodUnit())); - for (Enumeration t : src.getWhen()) - tgt.setWhen(convertEventTiming(t.getValue())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.instance.model.Timing.UnitsOfTime src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case S: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.S; - case MIN: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MIN; - case H: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.H; - case D: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.D; - case WK: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.WK; - case MO: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MO; - case A: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.A; - default: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.NULL; - } - } - - public org.hl7.fhir.instance.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.dstu3.model.Timing.UnitsOfTime src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case S: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.S; - case MIN: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.MIN; - case H: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.H; - case D: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.D; - case WK: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.WK; - case MO: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.MO; - case A: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.A; - default: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.instance.model.Timing.EventTiming src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HS: return org.hl7.fhir.dstu3.model.Timing.EventTiming.HS; - case WAKE: return org.hl7.fhir.dstu3.model.Timing.EventTiming.WAKE; - case C: return org.hl7.fhir.dstu3.model.Timing.EventTiming.C; - case CM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CM; - case CD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CD; - case CV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CV; - case AC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.AC; - case ACM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACM; - case ACD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACD; - case ACV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACV; - case PC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PC; - case PCM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCM; - case PCD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCD; - case PCV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCV; - default: return org.hl7.fhir.dstu3.model.Timing.EventTiming.NULL; - } - } - - public org.hl7.fhir.instance.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.dstu3.model.Timing.EventTiming src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HS: return org.hl7.fhir.instance.model.Timing.EventTiming.HS; - case WAKE: return org.hl7.fhir.instance.model.Timing.EventTiming.WAKE; - case C: return org.hl7.fhir.instance.model.Timing.EventTiming.C; - case CM: return org.hl7.fhir.instance.model.Timing.EventTiming.CM; - case CD: return org.hl7.fhir.instance.model.Timing.EventTiming.CD; - case CV: return org.hl7.fhir.instance.model.Timing.EventTiming.CV; - case AC: return org.hl7.fhir.instance.model.Timing.EventTiming.AC; - case ACM: return org.hl7.fhir.instance.model.Timing.EventTiming.ACM; - case ACD: return org.hl7.fhir.instance.model.Timing.EventTiming.ACD; - case ACV: return org.hl7.fhir.instance.model.Timing.EventTiming.ACV; - case PC: return org.hl7.fhir.instance.model.Timing.EventTiming.PC; - case PCM: return org.hl7.fhir.instance.model.Timing.EventTiming.PCM; - case PCD: return org.hl7.fhir.instance.model.Timing.EventTiming.PCD; - case PCV: return org.hl7.fhir.instance.model.Timing.EventTiming.PCV; - default: return org.hl7.fhir.instance.model.Timing.EventTiming.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Age convertAge(org.hl7.fhir.instance.model.Age src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Age tgt = new org.hl7.fhir.dstu3.model.Age(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Age convertAge(org.hl7.fhir.dstu3.model.Age src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Age tgt = new org.hl7.fhir.instance.model.Age(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Count convertCount(org.hl7.fhir.instance.model.Count src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Count tgt = new org.hl7.fhir.dstu3.model.Count(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Count convertCount(org.hl7.fhir.dstu3.model.Count src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Count tgt = new org.hl7.fhir.instance.model.Count(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Distance convertDistance(org.hl7.fhir.instance.model.Distance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Distance tgt = new org.hl7.fhir.dstu3.model.Distance(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Distance convertDistance(org.hl7.fhir.dstu3.model.Distance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Distance tgt = new org.hl7.fhir.instance.model.Distance(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Duration convertDuration(org.hl7.fhir.instance.model.Duration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Duration tgt = new org.hl7.fhir.dstu3.model.Duration(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Duration convertDuration(org.hl7.fhir.dstu3.model.Duration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Duration tgt = new org.hl7.fhir.instance.model.Duration(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Money convertMoney(org.hl7.fhir.instance.model.Money src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Money tgt = new org.hl7.fhir.dstu3.model.Money(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Money convertMoney(org.hl7.fhir.dstu3.model.Money src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Money tgt = new org.hl7.fhir.instance.model.Money(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.instance.model.SimpleQuantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.SimpleQuantity tgt = new org.hl7.fhir.dstu3.model.SimpleQuantity(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.dstu3.model.SimpleQuantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SimpleQuantity tgt = new org.hl7.fhir.instance.model.SimpleQuantity(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Type convertType(org.hl7.fhir.instance.model.Type src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.instance.model.Base64BinaryType) - return convertBase64Binary((org.hl7.fhir.instance.model.Base64BinaryType) src); - if (src instanceof org.hl7.fhir.instance.model.BooleanType) - return convertBoolean((org.hl7.fhir.instance.model.BooleanType) src); - if (src instanceof org.hl7.fhir.instance.model.CodeType) - return convertCode((org.hl7.fhir.instance.model.CodeType) src); - if (src instanceof org.hl7.fhir.instance.model.DateType) - return convertDate((org.hl7.fhir.instance.model.DateType) src); - if (src instanceof org.hl7.fhir.instance.model.DateTimeType) - return convertDateTime((org.hl7.fhir.instance.model.DateTimeType) src); - if (src instanceof org.hl7.fhir.instance.model.DecimalType) - return convertDecimal((org.hl7.fhir.instance.model.DecimalType) src); - if (src instanceof org.hl7.fhir.instance.model.IdType) - return convertId((org.hl7.fhir.instance.model.IdType) src); - if (src instanceof org.hl7.fhir.instance.model.InstantType) - return convertInstant((org.hl7.fhir.instance.model.InstantType) src); - if (src instanceof org.hl7.fhir.instance.model.IntegerType) - return convertInteger((org.hl7.fhir.instance.model.IntegerType) src); - if (src instanceof org.hl7.fhir.instance.model.MarkdownType) - return convertMarkdown((org.hl7.fhir.instance.model.MarkdownType) src); - if (src instanceof org.hl7.fhir.instance.model.OidType) - return convertOid((org.hl7.fhir.instance.model.OidType) src); - if (src instanceof org.hl7.fhir.instance.model.PositiveIntType) - return convertPositiveInt((org.hl7.fhir.instance.model.PositiveIntType) src); - if (src instanceof org.hl7.fhir.instance.model.StringType) - return convertString((org.hl7.fhir.instance.model.StringType) src); - if (src instanceof org.hl7.fhir.instance.model.TimeType) - return convertTime((org.hl7.fhir.instance.model.TimeType) src); - if (src instanceof org.hl7.fhir.instance.model.UnsignedIntType) - return convertUnsignedInt((org.hl7.fhir.instance.model.UnsignedIntType) src); - if (src instanceof org.hl7.fhir.instance.model.UriType) - return convertUri((org.hl7.fhir.instance.model.UriType) src); - if (src instanceof org.hl7.fhir.instance.model.UuidType) - return convertUuid((org.hl7.fhir.instance.model.UuidType) src); - if (src instanceof org.hl7.fhir.instance.model.Extension) - return convertExtension((org.hl7.fhir.instance.model.Extension) src); - if (src instanceof org.hl7.fhir.instance.model.Narrative) - return convertNarrative((org.hl7.fhir.instance.model.Narrative) src); - if (src instanceof org.hl7.fhir.instance.model.Annotation) - return convertAnnotation((org.hl7.fhir.instance.model.Annotation) src); - if (src instanceof org.hl7.fhir.instance.model.Attachment) - return convertAttachment((org.hl7.fhir.instance.model.Attachment) src); - if (src instanceof org.hl7.fhir.instance.model.CodeableConcept) - return convertCodeableConcept((org.hl7.fhir.instance.model.CodeableConcept) src); - if (src instanceof org.hl7.fhir.instance.model.Coding) - return convertCoding((org.hl7.fhir.instance.model.Coding) src); - if (src instanceof org.hl7.fhir.instance.model.Identifier) - return convertIdentifier((org.hl7.fhir.instance.model.Identifier) src); - if (src instanceof org.hl7.fhir.instance.model.Period) - return convertPeriod((org.hl7.fhir.instance.model.Period) src); - if (src instanceof org.hl7.fhir.instance.model.Quantity) - return convertQuantity((org.hl7.fhir.instance.model.Quantity) src); - if (src instanceof org.hl7.fhir.instance.model.Range) - return convertRange((org.hl7.fhir.instance.model.Range) src); - if (src instanceof org.hl7.fhir.instance.model.Ratio) - return convertRatio((org.hl7.fhir.instance.model.Ratio) src); - if (src instanceof org.hl7.fhir.instance.model.Reference) - return convertReference((org.hl7.fhir.instance.model.Reference) src); - if (src instanceof org.hl7.fhir.instance.model.SampledData) - return convertSampledData((org.hl7.fhir.instance.model.SampledData) src); - if (src instanceof org.hl7.fhir.instance.model.Signature) - return convertSignature((org.hl7.fhir.instance.model.Signature) src); - if (src instanceof org.hl7.fhir.instance.model.Address) - return convertAddress((org.hl7.fhir.instance.model.Address) src); - if (src instanceof org.hl7.fhir.instance.model.ContactPoint) - return convertContactPoint((org.hl7.fhir.instance.model.ContactPoint) src); - if (src instanceof org.hl7.fhir.instance.model.ElementDefinition) - return convertElementDefinition((org.hl7.fhir.instance.model.ElementDefinition) src, new ArrayList()); - if (src instanceof org.hl7.fhir.instance.model.HumanName) - return convertHumanName((org.hl7.fhir.instance.model.HumanName) src); - if (src instanceof org.hl7.fhir.instance.model.Meta) - return convertMeta((org.hl7.fhir.instance.model.Meta) src); - if (src instanceof org.hl7.fhir.instance.model.Timing) - return convertTiming((org.hl7.fhir.instance.model.Timing) src); - if (src instanceof org.hl7.fhir.instance.model.Age) - return convertAge((org.hl7.fhir.instance.model.Age) src); - if (src instanceof org.hl7.fhir.instance.model.Count) - return convertCount((org.hl7.fhir.instance.model.Count) src); - if (src instanceof org.hl7.fhir.instance.model.Distance) - return convertDistance((org.hl7.fhir.instance.model.Distance) src); - if (src instanceof org.hl7.fhir.instance.model.Duration) - return convertDuration((org.hl7.fhir.instance.model.Duration) src); - if (src instanceof org.hl7.fhir.instance.model.Money) - return convertMoney((org.hl7.fhir.instance.model.Money) src); - if (src instanceof org.hl7.fhir.instance.model.SimpleQuantity) - return convertSimpleQuantity((org.hl7.fhir.instance.model.SimpleQuantity) src); - throw new Error("Unknown type "+src.fhirType()); - } - - public org.hl7.fhir.instance.model.Type convertType(org.hl7.fhir.dstu3.model.Type src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.dstu3.model.Base64BinaryType) - return convertBase64Binary((org.hl7.fhir.dstu3.model.Base64BinaryType) src); - if (src instanceof org.hl7.fhir.dstu3.model.BooleanType) - return convertBoolean((org.hl7.fhir.dstu3.model.BooleanType) src); - if (src instanceof org.hl7.fhir.dstu3.model.CodeType) - return convertCode((org.hl7.fhir.dstu3.model.CodeType) src); - if (src instanceof org.hl7.fhir.dstu3.model.DateType) - return convertDate((org.hl7.fhir.dstu3.model.DateType) src); - if (src instanceof org.hl7.fhir.dstu3.model.DateTimeType) - return convertDateTime((org.hl7.fhir.dstu3.model.DateTimeType) src); - if (src instanceof org.hl7.fhir.dstu3.model.DecimalType) - return convertDecimal((org.hl7.fhir.dstu3.model.DecimalType) src); - if (src instanceof org.hl7.fhir.dstu3.model.IdType) - return convertId((org.hl7.fhir.dstu3.model.IdType) src); - if (src instanceof org.hl7.fhir.dstu3.model.InstantType) - return convertInstant((org.hl7.fhir.dstu3.model.InstantType) src); - if (src instanceof org.hl7.fhir.dstu3.model.IntegerType) - return convertInteger((org.hl7.fhir.dstu3.model.IntegerType) src); - if (src instanceof org.hl7.fhir.dstu3.model.MarkdownType) - return convertMarkdown((org.hl7.fhir.dstu3.model.MarkdownType) src); - if (src instanceof org.hl7.fhir.dstu3.model.OidType) - return convertOid((org.hl7.fhir.dstu3.model.OidType) src); - if (src instanceof org.hl7.fhir.dstu3.model.PositiveIntType) - return convertPositiveInt((org.hl7.fhir.dstu3.model.PositiveIntType) src); - if (src instanceof org.hl7.fhir.dstu3.model.StringType) - return convertString((org.hl7.fhir.dstu3.model.StringType) src); - if (src instanceof org.hl7.fhir.dstu3.model.TimeType) - return convertTime((org.hl7.fhir.dstu3.model.TimeType) src); - if (src instanceof org.hl7.fhir.dstu3.model.UnsignedIntType) - return convertUnsignedInt((org.hl7.fhir.dstu3.model.UnsignedIntType) src); - if (src instanceof org.hl7.fhir.dstu3.model.UriType) - return convertUri((org.hl7.fhir.dstu3.model.UriType) src); - if (src instanceof org.hl7.fhir.dstu3.model.UuidType) - return convertUuid((org.hl7.fhir.dstu3.model.UuidType) src); - if (src instanceof org.hl7.fhir.dstu3.model.Extension) - return convertExtension((org.hl7.fhir.dstu3.model.Extension) src); - if (src instanceof org.hl7.fhir.dstu3.model.Narrative) - return convertNarrative((org.hl7.fhir.dstu3.model.Narrative) src); - if (src instanceof org.hl7.fhir.dstu3.model.Annotation) - return convertAnnotation((org.hl7.fhir.dstu3.model.Annotation) src); - if (src instanceof org.hl7.fhir.dstu3.model.Attachment) - return convertAttachment((org.hl7.fhir.dstu3.model.Attachment) src); - if (src instanceof org.hl7.fhir.dstu3.model.CodeableConcept) - return convertCodeableConcept((org.hl7.fhir.dstu3.model.CodeableConcept) src); - if (src instanceof org.hl7.fhir.dstu3.model.Coding) - return convertCoding((org.hl7.fhir.dstu3.model.Coding) src); - if (src instanceof org.hl7.fhir.dstu3.model.Identifier) - return convertIdentifier((org.hl7.fhir.dstu3.model.Identifier) src); - if (src instanceof org.hl7.fhir.dstu3.model.Period) - return convertPeriod((org.hl7.fhir.dstu3.model.Period) src); - if (src instanceof org.hl7.fhir.dstu3.model.Quantity) - return convertQuantity((org.hl7.fhir.dstu3.model.Quantity) src); - if (src instanceof org.hl7.fhir.dstu3.model.Range) - return convertRange((org.hl7.fhir.dstu3.model.Range) src); - if (src instanceof org.hl7.fhir.dstu3.model.Ratio) - return convertRatio((org.hl7.fhir.dstu3.model.Ratio) src); - if (src instanceof org.hl7.fhir.dstu3.model.Reference) - return convertReference((org.hl7.fhir.dstu3.model.Reference) src); - if (src instanceof org.hl7.fhir.dstu3.model.SampledData) - return convertSampledData((org.hl7.fhir.dstu3.model.SampledData) src); - if (src instanceof org.hl7.fhir.dstu3.model.Signature) - return convertSignature((org.hl7.fhir.dstu3.model.Signature) src); - if (src instanceof org.hl7.fhir.dstu3.model.Address) - return convertAddress((org.hl7.fhir.dstu3.model.Address) src); - if (src instanceof org.hl7.fhir.dstu3.model.ContactPoint) - return convertContactPoint((org.hl7.fhir.dstu3.model.ContactPoint) src); - if (src instanceof org.hl7.fhir.dstu3.model.ElementDefinition) - return convertElementDefinition((org.hl7.fhir.dstu3.model.ElementDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.HumanName) - return convertHumanName((org.hl7.fhir.dstu3.model.HumanName) src); - if (src instanceof org.hl7.fhir.dstu3.model.Meta) - return convertMeta((org.hl7.fhir.dstu3.model.Meta) src); - if (src instanceof org.hl7.fhir.dstu3.model.Timing) - return convertTiming((org.hl7.fhir.dstu3.model.Timing) src); - if (src instanceof org.hl7.fhir.dstu3.model.Age) - return convertAge((org.hl7.fhir.dstu3.model.Age) src); - if (src instanceof org.hl7.fhir.dstu3.model.Count) - return convertCount((org.hl7.fhir.dstu3.model.Count) src); - if (src instanceof org.hl7.fhir.dstu3.model.Distance) - return convertDistance((org.hl7.fhir.dstu3.model.Distance) src); - if (src instanceof org.hl7.fhir.dstu3.model.Duration) - return convertDuration((org.hl7.fhir.dstu3.model.Duration) src); - if (src instanceof org.hl7.fhir.dstu3.model.Money) - return convertMoney((org.hl7.fhir.dstu3.model.Money) src); - if (src instanceof org.hl7.fhir.dstu3.model.SimpleQuantity) - return convertSimpleQuantity((org.hl7.fhir.dstu3.model.SimpleQuantity) src); - throw new Error("Unknown type "+src.fhirType()); - } - - public void copyDomainResource(org.hl7.fhir.instance.model.DomainResource src, org.hl7.fhir.dstu3.model.DomainResource tgt) throws FHIRException { - copyResource(src, tgt); - tgt.setText(convertNarrative(src.getText())); - for (org.hl7.fhir.instance.model.Resource t : src.getContained()) - tgt.addContained(convertResource(t)); - for (org.hl7.fhir.instance.model.Extension t : src.getExtension()) - tgt.addExtension(convertExtension(t)); - for (org.hl7.fhir.instance.model.Extension t : src.getModifierExtension()) - tgt.addModifierExtension(convertExtension(t)); - } - public void copyDomainResource(org.hl7.fhir.dstu3.model.DomainResource src, org.hl7.fhir.instance.model.DomainResource tgt) throws FHIRException { - copyResource(src, tgt); - tgt.setText(convertNarrative(src.getText())); - for (org.hl7.fhir.dstu3.model.Resource t : src.getContained()) - tgt.addContained(convertResource(t)); - for (org.hl7.fhir.dstu3.model.Extension t : src.getExtension()) - tgt.addExtension(convertExtension(t)); - for (org.hl7.fhir.dstu3.model.Extension t : src.getModifierExtension()) - tgt.addModifierExtension(convertExtension(t)); - } - - public org.hl7.fhir.dstu3.model.Parameters convertParameters(org.hl7.fhir.instance.model.Parameters src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Parameters tgt = new org.hl7.fhir.dstu3.model.Parameters(); - copyResource(src, tgt); - for (org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent t : src.getParameter()) - tgt.addParameter(convertParametersParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Parameters convertParameters(org.hl7.fhir.dstu3.model.Parameters src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Parameters tgt = new org.hl7.fhir.instance.model.Parameters(); - copyResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getParameter()) - tgt.addParameter(convertParametersParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - tgt.setResource(convertResource(src.getResource())); - for (org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent t : src.getPart()) - tgt.addPart(convertParametersParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - tgt.setResource(convertResource(src.getResource())); - for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getPart()) - tgt.addPart(convertParametersParameterComponent(t)); - return tgt; - } - - public void copyResource(org.hl7.fhir.instance.model.Resource src, org.hl7.fhir.dstu3.model.Resource tgt) throws FHIRException { - tgt.setId(src.getId()); - tgt.setMeta(convertMeta(src.getMeta())); - tgt.setImplicitRules(src.getImplicitRules()); - tgt.setLanguage(src.getLanguage()); - } - public void copyResource(org.hl7.fhir.dstu3.model.Resource src, org.hl7.fhir.instance.model.Resource tgt) throws FHIRException { - tgt.setId(src.getId()); - if (src.hasMeta()) - tgt.setMeta(convertMeta(src.getMeta())); - if (src.hasImplicitRules()) - tgt.setImplicitRules(src.getImplicitRules()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - } - - public org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.instance.model.Enumerations.AdministrativeGender src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MALE: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.MALE; - case FEMALE: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.FEMALE; - case OTHER: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.OTHER; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MALE: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.MALE; - case FEMALE: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.FEMALE; - case OTHER: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.OTHER; - case UNKNOWN: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.UNKNOWN; - default: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.instance.model.Enumerations.SearchParamType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NUMBER: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NUMBER; - case DATE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.DATE; - case STRING: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.STRING; - case TOKEN: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.TOKEN; - case REFERENCE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.REFERENCE; - case COMPOSITE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.COMPOSITE; - case QUANTITY: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.QUANTITY; - case URI: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.URI; - default: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.dstu3.model.Enumerations.SearchParamType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NUMBER: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.NUMBER; - case DATE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.DATE; - case STRING: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.STRING; - case TOKEN: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.TOKEN; - case REFERENCE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.REFERENCE; - case COMPOSITE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.COMPOSITE; - case QUANTITY: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.QUANTITY; - case URI: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.URI; - default: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Account convertAccount(org.hl7.fhir.instance.model.Account src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Account tgt = new org.hl7.fhir.dstu3.model.Account(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setStatus(convertAccountStatus(src.getStatus())); - tgt.setActive(convertPeriod(src.getActivePeriod())); - tgt.setBalance(convertMoney(src.getBalance())); -// tgt.setCoveragePeriod(convertPeriod(src.getCoveragePeriod())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setOwner(convertReference(src.getOwner())); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.instance.model.Account convertAccount(org.hl7.fhir.dstu3.model.Account src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Account tgt = new org.hl7.fhir.instance.model.Account(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setName(src.getName()); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setStatus(convertAccountStatus(src.getStatus())); - tgt.setActivePeriod(convertPeriod(src.getActive())); - tgt.setBalance(convertMoney(src.getBalance())); -// tgt.setCoveragePeriod(convertPeriod(src.getCoveragePeriod())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setOwner(convertReference(src.getOwner())); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.instance.model.Account.AccountStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Account.AccountStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.dstu3.model.Account.AccountStatus.INACTIVE; - default: return org.hl7.fhir.dstu3.model.Account.AccountStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.dstu3.model.Account.AccountStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.Account.AccountStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.instance.model.Account.AccountStatus.INACTIVE; - default: return org.hl7.fhir.instance.model.Account.AccountStatus.NULL; - } - } - - - public org.hl7.fhir.dstu3.model.Appointment convertAppointment(org.hl7.fhir.instance.model.Appointment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Appointment tgt = new org.hl7.fhir.dstu3.model.Appointment(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertAppointmentStatus(src.getStatus())); - if (src.hasType()) - tgt.addServiceType(convertCodeableConcept(src.getType())); -// tgt.setReason(convertCodeableConcept(src.getReason())); - tgt.setPriority(src.getPriority()); - tgt.setDescription(src.getDescription()); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - tgt.setMinutesDuration(src.getMinutesDuration()); - for (org.hl7.fhir.instance.model.Reference t : src.getSlot()) - tgt.addSlot(convertReference(t)); - tgt.setComment(src.getComment()); - for (org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertAppointmentParticipantComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Appointment convertAppointment(org.hl7.fhir.dstu3.model.Appointment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Appointment tgt = new org.hl7.fhir.instance.model.Appointment(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertAppointmentStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) - tgt.setType(convertCodeableConcept(t)); -// tgt.setReason(convertCodeableConcept(src.getReason())); - tgt.setPriority(src.getPriority()); - tgt.setDescription(src.getDescription()); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - tgt.setMinutesDuration(src.getMinutesDuration()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSlot()) - tgt.addSlot(convertReference(t)); - tgt.setComment(src.getComment()); - for (org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertAppointmentParticipantComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.instance.model.Appointment.AppointmentStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.PROPOSED; - case PENDING: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.PENDING; - case BOOKED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.BOOKED; - case ARRIVED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.ARRIVED; - case FULFILLED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.FULFILLED; - case CANCELLED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.CANCELLED; - case NOSHOW: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.NOSHOW; - default: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.PROPOSED; - case PENDING: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.PENDING; - case BOOKED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.BOOKED; - case ARRIVED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.ARRIVED; - case FULFILLED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.FULFILLED; - case CANCELLED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.CANCELLED; - case NOSHOW: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.NOSHOW; - default: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setActor(convertReference(src.getActor())); - tgt.setRequired(convertParticipantRequired(src.getRequired())); - tgt.setStatus(convertParticipationStatus(src.getStatus())); - return tgt; - } - - public org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setActor(convertReference(src.getActor())); - tgt.setRequired(convertParticipantRequired(src.getRequired())); - tgt.setStatus(convertParticipationStatus(src.getStatus())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.instance.model.Appointment.ParticipantRequired src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.REQUIRED; - case OPTIONAL: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.OPTIONAL; - case INFORMATIONONLY: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.INFORMATIONONLY; - default: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.NULL; - } - } - - public org.hl7.fhir.instance.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.REQUIRED; - case OPTIONAL: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.OPTIONAL; - case INFORMATIONONLY: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.INFORMATIONONLY; - default: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.instance.model.Appointment.ParticipationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.TENTATIVE; - case NEEDSACTION: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.NEEDSACTION; - default: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.TENTATIVE; - case NEEDSACTION: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.NEEDSACTION; - default: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.instance.model.AppointmentResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.AppointmentResponse tgt = new org.hl7.fhir.dstu3.model.AppointmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setAppointment(convertReference(src.getAppointment())); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getParticipantType()) - tgt.addParticipantType(convertCodeableConcept(t)); - tgt.setActor(convertReference(src.getActor())); - tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); - tgt.setComment(src.getComment()); - return tgt; - } - - private org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus src) { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.TENTATIVE; - case INPROCESS: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.ACCEPTED; - case COMPLETED: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.ACCEPTED; - case NEEDSACTION: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; - default: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.NULL; - } - } - - private org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus src) { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.TENTATIVE; - case NEEDSACTION: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; - default: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.dstu3.model.AppointmentResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AppointmentResponse tgt = new org.hl7.fhir.instance.model.AppointmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setAppointment(convertReference(src.getAppointment())); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getParticipantType()) - tgt.addParticipantType(convertCodeableConcept(t)); - tgt.setActor(convertReference(src.getActor())); - tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); - tgt.setComment(src.getComment()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.AuditEvent convertAuditEvent(org.hl7.fhir.instance.model.AuditEvent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.AuditEvent tgt = new org.hl7.fhir.dstu3.model.AuditEvent(); - copyDomainResource(src, tgt); - if (src.hasEvent()) { - tgt.setType(convertCoding(src.getEvent().getType())); - for (org.hl7.fhir.instance.model.Coding t : src.getEvent().getSubtype()) - tgt.addSubtype(convertCoding(t)); - tgt.setAction(convertAuditEventAction(src.getEvent().getAction())); - tgt.setRecorded(src.getEvent().getDateTime()); - tgt.setOutcome(convertAuditEventOutcome(src.getEvent().getOutcome())); - tgt.setOutcomeDesc(src.getEvent().getOutcomeDesc()); - for (org.hl7.fhir.instance.model.Coding t : src.getEvent().getPurposeOfEvent()) - tgt.addPurposeOfEvent().addCoding(convertCoding(t)); - } - for (org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent t : src.getParticipant()) - tgt.addAgent(convertAuditEventAgentComponent(t)); - tgt.setSource(convertAuditEventSourceComponent(src.getSource())); - for (org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent t : src.getObject()) - tgt.addEntity(convertAuditEventEntityComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent convertAuditEvent(org.hl7.fhir.dstu3.model.AuditEvent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent tgt = new org.hl7.fhir.instance.model.AuditEvent(); - copyDomainResource(src, tgt); - tgt.getEvent().setType(convertCoding(src.getType())); - for (org.hl7.fhir.dstu3.model.Coding t : src.getSubtype()) - tgt.getEvent().addSubtype(convertCoding(t)); - tgt.getEvent().setAction(convertAuditEventAction(src.getAction())); - tgt.getEvent().setDateTime(src.getRecorded()); - tgt.getEvent().setOutcome(convertAuditEventOutcome(src.getOutcome())); - tgt.getEvent().setOutcomeDesc(src.getOutcomeDesc()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPurposeOfEvent()) - for (org.hl7.fhir.dstu3.model.Coding cc : t.getCoding()) - tgt.getEvent().addPurposeOfEvent(convertCoding(cc)); - for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) - tgt.addParticipant(convertAuditEventAgentComponent(t)); - tgt.setSource(convertAuditEventSourceComponent(src.getSource())); - for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent t : src.getEntity()) - tgt.addObject(convertAuditEventEntityComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.instance.model.AuditEvent.AuditEventAction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case C: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.C; - case R: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.R; - case U: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.U; - case D: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.D; - case E: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.E; - default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.NULL; - } - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case C: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.C; - case R: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.R; - case U: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.U; - case D: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.D; - case E: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.E; - default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.NULL; - } - } - - public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _0: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._0; - case _4: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._4; - case _8: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._8; - case _12: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._12; - default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome.NULL; - } - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _0: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._0; - case _4: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._4; - case _8: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._8; - case _12: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._12; - default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome.NULL; - } - } - - public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent convertAuditEventAgentComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - tgt.setReference(convertReference(src.getReference())); - tgt.setUserId(convertIdentifier(src.getUserId())); - tgt.setAltId(src.getAltId()); - tgt.setName(src.getName()); - tgt.setRequestor(src.getRequestor()); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.instance.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - tgt.setMedia(convertCoding(src.getMedia())); - tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); - for (org.hl7.fhir.instance.model.Coding t : src.getPurposeOfUse()) - tgt.addPurposeOfUse().addCoding(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent convertAuditEventAgentComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - tgt.setReference(convertReference(src.getReference())); - tgt.setUserId(convertIdentifier(src.getUserId())); - tgt.setAltId(src.getAltId()); - tgt.setName(src.getName()); - tgt.setRequestor(src.getRequestor()); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.dstu3.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - tgt.setMedia(convertCoding(src.getMedia())); - tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPurposeOfUse()) - for (org.hl7.fhir.dstu3.model.Coding cc : t.getCoding()) - tgt.addPurposeOfUse(convertCoding(cc)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent(); - copyElement(src, tgt); - tgt.setAddress(src.getAddress()); - tgt.setType(convertAuditEventParticipantNetworkType(src.getType())); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent(); - copyElement(src, tgt); - tgt.setAddress(src.getAddress()); - tgt.setType(convertAuditEventParticipantNetworkType(src.getType())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType convertAuditEventParticipantNetworkType(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _1: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._1; - case _2: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._2; - case _3: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._3; - case _4: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._4; - case _5: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._5; - default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType.NULL; - } - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType convertAuditEventParticipantNetworkType(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _1: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._1; - case _2: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._2; - case _3: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._3; - case _4: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._4; - case _5: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._5; - default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent(); - copyElement(src, tgt); - tgt.setSite(src.getSite()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.instance.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent(); - copyElement(src, tgt); - tgt.setSite(src.getSite()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent convertAuditEventEntityComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setReference(convertReference(src.getReference())); - tgt.setType(convertCoding(src.getType())); - tgt.setRole(convertCoding(src.getRole())); - tgt.setLifecycle(convertCoding(src.getLifecycle())); - for (org.hl7.fhir.instance.model.Coding t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCoding(t)); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setQuery(src.getQuery()); - for (org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent t : src.getDetail()) - tgt.addDetail(convertAuditEventEntityDetailComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent convertAuditEventEntityComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setReference(convertReference(src.getReference())); - tgt.setType(convertCoding(src.getType())); - tgt.setRole(convertCoding(src.getRole())); - tgt.setLifecycle(convertCoding(src.getLifecycle())); - for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCoding(t)); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setQuery(src.getQuery()); - for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent t : src.getDetail()) - tgt.addDetail(convertAuditEventEntityDetailComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Basic convertBasic(org.hl7.fhir.instance.model.Basic src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Basic tgt = new org.hl7.fhir.dstu3.model.Basic(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setCreated(src.getCreated()); - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public org.hl7.fhir.instance.model.Basic convertBasic(org.hl7.fhir.dstu3.model.Basic src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Basic tgt = new org.hl7.fhir.instance.model.Basic(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setCreated(src.getCreated()); - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Binary convertBinary(org.hl7.fhir.instance.model.Binary src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Binary tgt = new org.hl7.fhir.dstu3.model.Binary(); - copyResource(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setContent(src.getContent()); - return tgt; - } - - public org.hl7.fhir.instance.model.Binary convertBinary(org.hl7.fhir.dstu3.model.Binary src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Binary tgt = new org.hl7.fhir.instance.model.Binary(); - copyResource(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setContent(src.getContent()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Bundle convertBundle(org.hl7.fhir.instance.model.Bundle src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle tgt = new org.hl7.fhir.dstu3.model.Bundle(); - copyResource(src, tgt); - tgt.setType(convertBundleType(src.getType())); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - for (org.hl7.fhir.instance.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - for (org.hl7.fhir.instance.model.Bundle.BundleEntryComponent t : src.getEntry()) - tgt.addEntry(convertBundleEntryComponent(t)); - tgt.setSignature(convertSignature(src.getSignature())); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle convertBundle(org.hl7.fhir.dstu3.model.Bundle src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Bundle tgt = new org.hl7.fhir.instance.model.Bundle(); - copyResource(src, tgt); - tgt.setType(convertBundleType(src.getType())); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - for (org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent t : src.getEntry()) - tgt.addEntry(convertBundleEntryComponent(t)); - if (src.hasSignature()) - tgt.setSignature(convertSignature(src.getSignature())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Bundle.BundleType convertBundleType(org.hl7.fhir.instance.model.Bundle.BundleType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENT: return org.hl7.fhir.dstu3.model.Bundle.BundleType.DOCUMENT; - case MESSAGE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.MESSAGE; - case TRANSACTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTION; - case TRANSACTIONRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTIONRESPONSE; - case BATCH: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCH; - case BATCHRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCHRESPONSE; - case HISTORY: return org.hl7.fhir.dstu3.model.Bundle.BundleType.HISTORY; - case SEARCHSET: return org.hl7.fhir.dstu3.model.Bundle.BundleType.SEARCHSET; - case COLLECTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.COLLECTION; - default: return org.hl7.fhir.dstu3.model.Bundle.BundleType.NULL; - } - } - - public org.hl7.fhir.instance.model.Bundle.BundleType convertBundleType(org.hl7.fhir.dstu3.model.Bundle.BundleType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENT: return org.hl7.fhir.instance.model.Bundle.BundleType.DOCUMENT; - case MESSAGE: return org.hl7.fhir.instance.model.Bundle.BundleType.MESSAGE; - case TRANSACTION: return org.hl7.fhir.instance.model.Bundle.BundleType.TRANSACTION; - case TRANSACTIONRESPONSE: return org.hl7.fhir.instance.model.Bundle.BundleType.TRANSACTIONRESPONSE; - case BATCH: return org.hl7.fhir.instance.model.Bundle.BundleType.BATCH; - case BATCHRESPONSE: return org.hl7.fhir.instance.model.Bundle.BundleType.BATCHRESPONSE; - case HISTORY: return org.hl7.fhir.instance.model.Bundle.BundleType.HISTORY; - case SEARCHSET: return org.hl7.fhir.instance.model.Bundle.BundleType.SEARCHSET; - case COLLECTION: return org.hl7.fhir.instance.model.Bundle.BundleType.COLLECTION; - default: return org.hl7.fhir.instance.model.Bundle.BundleType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.instance.model.Bundle.BundleLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent(); - copyElement(src, tgt); - tgt.setRelation(src.getRelation()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleLinkComponent(); - copyElement(src, tgt); - tgt.setRelation(src.getRelation()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - tgt.setFullUrl(src.getFullUrl()); - tgt.setResource(convertResource(src.getResource())); - tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); - tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); - tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (advisor.ignoreEntry(src)) - return null; - - org.hl7.fhir.instance.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - tgt.setFullUrl(src.getFullUrl()); - org.hl7.fhir.instance.model.Resource res = advisor.convert(src.getResource()); - if (res == null) - res = convertResource(src.getResource()); - tgt.setResource(res); - if (src.hasSearch()) - tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); - if (src.hasRequest()) - tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent(); - copyElement(src, tgt); - tgt.setMode(convertSearchEntryMode(src.getMode())); - tgt.setScore(src.getScore()); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent(); - copyElement(src, tgt); - tgt.setMode(convertSearchEntryMode(src.getMode())); - tgt.setScore(src.getScore()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.instance.model.Bundle.SearchEntryMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MATCH: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.MATCH; - case INCLUDE: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.INCLUDE; - case OUTCOME: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.OUTCOME; - default: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MATCH: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.MATCH; - case INCLUDE: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.INCLUDE; - case OUTCOME: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.OUTCOME; - default: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent(); - copyElement(src, tgt); - tgt.setMethod(convertHTTPVerb(src.getMethod())); - tgt.setUrl(src.getUrl()); - tgt.setIfNoneMatch(src.getIfNoneMatch()); - tgt.setIfModifiedSince(src.getIfModifiedSince()); - tgt.setIfMatch(src.getIfMatch()); - tgt.setIfNoneExist(src.getIfNoneExist()); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent(); - copyElement(src, tgt); - tgt.setMethod(convertHTTPVerb(src.getMethod())); - tgt.setUrl(src.getUrl()); - tgt.setIfNoneMatch(src.getIfNoneMatch()); - tgt.setIfModifiedSince(src.getIfModifiedSince()); - tgt.setIfMatch(src.getIfMatch()); - tgt.setIfNoneExist(src.getIfNoneExist()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.instance.model.Bundle.HTTPVerb src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GET: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.GET; - case POST: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.POST; - case PUT: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.PUT; - case DELETE: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.DELETE; - default: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.NULL; - } - } - - public org.hl7.fhir.instance.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.dstu3.model.Bundle.HTTPVerb src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GET: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.GET; - case POST: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.POST; - case PUT: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.PUT; - case DELETE: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.DELETE; - default: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent(); - copyElement(src, tgt); - tgt.setStatus(src.getStatus()); - tgt.setLocation(src.getLocation()); - tgt.setEtag(src.getEtag()); - tgt.setLastModified(src.getLastModified()); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent(); - copyElement(src, tgt); - tgt.setStatus(src.getStatus()); - tgt.setLocation(src.getLocation()); - tgt.setEtag(src.getEtag()); - tgt.setLastModified(src.getLastModified()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CarePlan convertCarePlan(org.hl7.fhir.instance.model.CarePlan src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CarePlan tgt = new org.hl7.fhir.dstu3.model.CarePlan(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setStatus(convertCarePlanStatus(src.getStatus())); - tgt.setContext(convertReference(src.getContext())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); -// tgt.setModified(src.getModified()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.Reference t : src.getAddresses()) - tgt.addAddresses(convertReference(t)); -// for (org.hl7.fhir.instance.model.Reference t : src.getSupport()) -// tgt.addSupport(convertReference(t)); -// for (org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent t : src.getRelatedPlan()) -// tgt.addRelatedPlan(convertCarePlanRelatedPlanComponent(t)); -// for (org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent t : src.getParticipant()) -// tgt.addParticipant(convertCarePlanParticipantComponent(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - for (org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) - tgt.addActivity(convertCarePlanActivityComponent(t)); -// tgt.setNote(convertAnnotation(src.getNote())); - return tgt; - } - - public org.hl7.fhir.instance.model.CarePlan convertCarePlan(org.hl7.fhir.dstu3.model.CarePlan src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CarePlan tgt = new org.hl7.fhir.instance.model.CarePlan(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setStatus(convertCarePlanStatus(src.getStatus())); - tgt.setContext(convertReference(src.getContext())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); -// tgt.setModified(src.getModified()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAddresses()) - tgt.addAddresses(convertReference(t)); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getSupport()) -// tgt.addSupport(convertReference(t)); -// for (org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelatedPlanComponent t : src.getRelatedPlan()) -// tgt.addRelatedPlan(convertCarePlanRelatedPlanComponent(t)); -// for (org.hl7.fhir.dstu3.model.CarePlan.CarePlanParticipantComponent t : src.getParticipant()) -// tgt.addParticipant(convertCarePlanParticipantComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) - tgt.addActivity(convertCarePlanActivityComponent(t)); -// tgt.setNote(convertAnnotation(src.getNote())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.instance.model.CarePlan.CarePlanStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.DRAFT; - case DRAFT: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.CANCELLED; - default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { -// case PROPOSED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.PROPOSED; - case DRAFT: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.CANCELLED; - default: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.NULL; - } - } - -// public org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelatedPlanComponent convertCarePlanRelatedPlanComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelatedPlanComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelatedPlanComponent(); -// copyElement(src, tgt); -// tgt.setCode(convertCarePlanRelationship(src.getCode())); -// tgt.setPlan(convertReference(src.getPlan())); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent convertCarePlanRelatedPlanComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelatedPlanComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent(); -// copyElement(src, tgt); -// tgt.setCode(convertCarePlanRelationship(src.getCode())); -// tgt.setPlan(convertReference(src.getPlan())); -// return tgt; -// } - -// public org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship convertCarePlanRelationship(org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case INCLUDES: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship.INCLUDES; -// case REPLACES: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship.REPLACES; -// case FULFILLS: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship.FULFILLS; -// default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship.NULL; -// } -// } - -// public org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship convertCarePlanRelationship(org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case INCLUDES: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.INCLUDES; -// case REPLACES: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.REPLACES; -// case FULFILLS: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.FULFILLS; -// default: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.NULL; -// } -// } - -// public org.hl7.fhir.dstu3.model.CarePlan.CarePlanParticipantComponent convertCarePlanParticipantComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.CarePlan.CarePlanParticipantComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanParticipantComponent(); -// copyElement(src, tgt); -// tgt.setRole(convertCodeableConcept(src.getRole())); -// tgt.setMember(convertReference(src.getMember())); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent convertCarePlanParticipantComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanParticipantComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent(); -// copyElement(src, tgt); -// tgt.setRole(convertCodeableConcept(src.getRole())); -// tgt.setMember(convertReference(src.getMember())); -// return tgt; -// } -// - public org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent(); - copyElement(src, tgt); -// for (org.hl7.fhir.instance.model.Reference t : src.getActionResulting()) -// tgt.addActionResulting(convertReference(t)); - for (org.hl7.fhir.instance.model.Annotation t : src.getProgress()) - tgt.addProgress(convertAnnotation(t)); - tgt.setReference(convertReference(src.getReference())); - tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); - return tgt; - } - - public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent(); - copyElement(src, tgt); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getActionResulting()) -// tgt.addActionResulting(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getProgress()) - tgt.addProgress(convertAnnotation(t)); - tgt.setReference(convertReference(src.getReference())); - tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent(); - copyElement(src, tgt); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); -// tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); - tgt.setProhibited(src.getProhibited()); - tgt.setScheduled(convertType(src.getScheduled())); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.instance.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - tgt.setProduct(convertType(src.getProduct())); - tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent(); - copyElement(src, tgt); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); -// tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); - tgt.setProhibited(src.getProhibited()); - tgt.setScheduled(convertType(src.getScheduled())); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - tgt.setProduct(convertType(src.getProduct())); - tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSTARTED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; - case SCHEDULED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.SCHEDULED; - case INPROGRESS: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.CANCELLED; - default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSTARTED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; - case SCHEDULED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.SCHEDULED; - case INPROGRESS: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.CANCELLED; - default: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.instance.model.ClinicalImpression src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ClinicalImpression tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression(); - copyDomainResource(src, tgt); - tgt.setSubject(convertReference(src.getPatient())); - tgt.setAssessor(convertReference(src.getAssessor())); - tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - tgt.setPrevious(convertReference(src.getPrevious())); - for (org.hl7.fhir.instance.model.Reference t : src.getProblem()) - tgt.addProblem(convertReference(t)); -// for (org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent t : src.getInvestigations()) -// tgt.addInvestigations(convertClinicalImpressionInvestigationsComponent(t)); - tgt.addProtocol(src.getProtocol()); - tgt.setSummary(src.getSummary()); - for (org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) - tgt.addFinding(convertClinicalImpressionFindingComponent(t)); - if (src.hasPrognosis()) - tgt.addPrognosisCodeableConcept ().setText(src.getPrognosis()); -// for (org.hl7.fhir.instance.model.Reference t : src.getPlan()) -// tgt.addPlan(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getAction()) - tgt.addAction(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.dstu3.model.ClinicalImpression src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ClinicalImpression tgt = new org.hl7.fhir.instance.model.ClinicalImpression(); - copyDomainResource(src, tgt); - tgt.setPatient(convertReference(src.getSubject())); - tgt.setAssessor(convertReference(src.getAssessor())); - tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - tgt.setPrevious(convertReference(src.getPrevious())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProblem()) - tgt.addProblem(convertReference(t)); -// for (org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent t : src.getInvestigations()) -// tgt.addInvestigations(convertClinicalImpressionInvestigationsComponent(t)); - for (UriType t : src.getProtocol()) - tgt.setProtocol(t.asStringValue()); - tgt.setSummary(src.getSummary()); - for (org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) - tgt.addFinding(convertClinicalImpressionFindingComponent(t)); - tgt.setPrognosis(src.getPrognosisCodeableConceptFirstRep().getText()); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getPlan()) -// tgt.addPlan(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAction()) - tgt.addAction(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.DRAFT; - case COMPLETED: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.NULL; - } - } - -// public org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent convertClinicalImpressionInvestigationsComponent(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent(); -// copyElement(src, tgt); -// tgt.setCode(convertCodeableConcept(src.getCode())); -// for (org.hl7.fhir.instance.model.Reference t : src.getItem()) -// tgt.addItem(convertReference(t)); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent convertClinicalImpressionInvestigationsComponent(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent tgt = new org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent(); -// copyElement(src, tgt); -// tgt.setCode(convertCodeableConcept(src.getCode())); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getItem()) -// tgt.addItem(convertReference(t)); -// return tgt; -// } - - public org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent(); - copyElement(src, tgt); - tgt.setItem(convertCodeableConcept(src.getItem())); -// tgt.setCause(src.getCause()); - return tgt; - } - - public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent(); - copyElement(src, tgt); - if (src.hasItemCodeableConcept()) - try { - tgt.setItem(convertCodeableConcept(src.getItemCodeableConcept())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - } -// tgt.setCause(src.getCause()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Communication convertCommunication(org.hl7.fhir.instance.model.Communication src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Communication tgt = new org.hl7.fhir.dstu3.model.Communication(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.addCategory(convertCodeableConcept(src.getCategory())); - tgt.setSender(convertReference(src.getSender())); - for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationPayloadComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - tgt.setStatus(convertCommunicationStatus(src.getStatus())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setSent(src.getSent()); - tgt.setReceived(src.getReceived()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - tgt.addReasonCode(convertCodeableConcept(t)); - tgt.setSubject(convertReference(src.getSubject())); - return tgt; - } - - public org.hl7.fhir.instance.model.Communication convertCommunication(org.hl7.fhir.dstu3.model.Communication src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Communication tgt = new org.hl7.fhir.instance.model.Communication(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); - tgt.setSender(convertReference(src.getSender())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationPayloadComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - tgt.setStatus(convertCommunicationStatus(src.getStatus())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setSent(src.getSent()); - tgt.setReceived(src.getReceived()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReason(convertCodeableConcept(t)); - tgt.setSubject(convertReference(src.getSubject())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.instance.model.Communication.CommunicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.SUSPENDED; - case REJECTED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.ENTEREDINERROR; - case FAILED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.ABORTED; - default: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.dstu3.model.Communication.CommunicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.SUSPENDED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.REJECTED; - case ABORTED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.FAILED; - default: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.instance.model.CommunicationRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CommunicationRequest tgt = new org.hl7.fhir.dstu3.model.CommunicationRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.addCategory(convertCodeableConcept(src.getCategory())); - tgt.setSender(convertReference(src.getSender())); - for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - tgt.getRequester().setAgent(convertReference(src.getRequester())); - tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setOccurrence(convertType(src.getScheduled())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - tgt.addReasonCode(convertCodeableConcept(t)); - tgt.setAuthoredOn(src.getRequestedOn()); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setPriority(convertPriorityCode(src.getPriority())); - return tgt; - } - - private org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority convertPriorityCode(org.hl7.fhir.instance.model.CodeableConcept priority) { - for (org.hl7.fhir.instance.model.Coding c : priority.getCoding()) { - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "routine".equals(c.getCode())) - return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.ROUTINE; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "urgent".equals(c.getCode())) - return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.URGENT; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "stat".equals(c.getCode())) - return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.STAT; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "asap".equals(c.getCode())) - return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.ASAP; - } - return null; - } - - public org.hl7.fhir.instance.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.dstu3.model.CommunicationRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CommunicationRequest tgt = new org.hl7.fhir.instance.model.CommunicationRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); - tgt.setSender(convertReference(src.getSender())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - tgt.setRequester(convertReference(src.getRequester().getAgent())); - tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setScheduled(convertType(src.getOccurrence())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReason(convertCodeableConcept(t)); - tgt.setRequestedOn(src.getAuthoredOn()); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setPriority(convertPriorityCode(src.getPriority())); - return tgt; - } - - private org.hl7.fhir.instance.model.CodeableConcept convertPriorityCode(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority priority) { - org.hl7.fhir.instance.model.CodeableConcept cc = new org.hl7.fhir.instance.model.CodeableConcept(); - switch (priority) { - case ROUTINE: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("routine"); break; - case URGENT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("urgent"); break; - case STAT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("stat"); break; - case ASAP: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("asap"); break; - default: return null; - } - return cc; - } - - public org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.DRAFT; - case PLANNED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case REQUESTED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case RECEIVED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case ACCEPTED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case INPROGRESS: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; - case REJECTED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ENTEREDINERROR; -// case FAILED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.FAILED; - default: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.PROPOSED; -// case PLANNED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.PLANNED; -// case REQUESTED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.REQUESTED; -// case RECEIVED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.RECEIVED; -// case ACCEPTED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.ACCEPTED; - case ACTIVE: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.REJECTED; -// case FAILED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.FAILED; - default: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Composition convertComposition(org.hl7.fhir.instance.model.Composition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Composition tgt = new org.hl7.fhir.dstu3.model.Composition(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setClass_(convertCodeableConcept(src.getClass_())); - tgt.setTitle(src.getTitle()); - tgt.setStatus(convertCompositionStatus(src.getStatus())); - try { - tgt.setConfidentiality(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.fromCode(src.getConfidentiality())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - for (org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent t : src.getAttester()) - tgt.addAttester(convertCompositionAttesterComponent(t)); - tgt.setCustodian(convertReference(src.getCustodian())); - for (org.hl7.fhir.instance.model.Composition.CompositionEventComponent t : src.getEvent()) - tgt.addEvent(convertCompositionEventComponent(t)); - tgt.setEncounter(convertReference(src.getEncounter())); - for (org.hl7.fhir.instance.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Composition convertComposition(org.hl7.fhir.dstu3.model.Composition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Composition tgt = new org.hl7.fhir.instance.model.Composition(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setClass_(convertCodeableConcept(src.getClass_())); - tgt.setTitle(src.getTitle()); - tgt.setStatus(convertCompositionStatus(src.getStatus())); - tgt.setConfidentiality(src.getConfidentiality().toCode()); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent t : src.getAttester()) - tgt.addAttester(convertCompositionAttesterComponent(t)); - tgt.setCustodian(convertReference(src.getCustodian())); - for (org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent t : src.getEvent()) - tgt.addEvent(convertCompositionEventComponent(t)); - tgt.setEncounter(convertReference(src.getEncounter())); - for (org.hl7.fhir.dstu3.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.instance.model.Composition.CompositionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRELIMINARY: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.FINAL; - case AMENDED: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.AMENDED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.dstu3.model.Composition.CompositionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRELIMINARY: return org.hl7.fhir.instance.model.Composition.CompositionStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.instance.model.Composition.CompositionStatus.FINAL; - case AMENDED: return org.hl7.fhir.instance.model.Composition.CompositionStatus.AMENDED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Composition.CompositionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.Composition.CompositionStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Enumeration t : src.getMode()) - tgt.addMode(convertCompositionAttestationMode(t.getValue())); - tgt.setTime(src.getTime()); - tgt.setParty(convertReference(src.getParty())); - return tgt; - } - - public org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getMode()) - tgt.addMode(convertCompositionAttestationMode(t.getValue())); - tgt.setTime(src.getTime()); - tgt.setParty(convertReference(src.getParty())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.instance.model.Composition.CompositionAttestationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSONAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.PERSONAL; - case PROFESSIONAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.PROFESSIONAL; - case LEGAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.LEGAL; - case OFFICIAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.OFFICIAL; - default: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSONAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.PERSONAL; - case PROFESSIONAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.PROFESSIONAL; - case LEGAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.LEGAL; - case OFFICIAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.OFFICIAL; - default: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.instance.model.Composition.CompositionEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.instance.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.instance.model.Composition.CompositionEventComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.instance.model.Composition.SectionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Composition.SectionComponent tgt = new org.hl7.fhir.dstu3.model.Composition.SectionComponent(); - copyElement(src, tgt); - tgt.setTitle(src.getTitle()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setText(convertNarrative(src.getText())); - try { - tgt.setMode(org.hl7.fhir.dstu3.model.Composition.SectionMode.fromCode(src.getMode())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - for (org.hl7.fhir.instance.model.Reference t : src.getEntry()) - tgt.addEntry(convertReference(t)); - tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); - for (org.hl7.fhir.instance.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.dstu3.model.Composition.SectionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Composition.SectionComponent tgt = new org.hl7.fhir.instance.model.Composition.SectionComponent(); - copyElement(src, tgt); - tgt.setTitle(src.getTitle()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setText(convertNarrative(src.getText())); - tgt.setMode(src.getMode().toCode()); - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEntry()) - tgt.addEntry(convertReference(t)); - tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); - for (org.hl7.fhir.dstu3.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - private class SourceElementComponentWrapper { - public SourceElementComponentWrapper(SourceElementComponent comp, String source, String target) { - super(); - this.source = source; - this.target = target; - this.comp = comp; - } - private String source; - private String target; - private org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent comp; - - } - - public org.hl7.fhir.dstu3.model.ConceptMap convertConceptMap(org.hl7.fhir.instance.model.ConceptMap src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ConceptMap tgt = new org.hl7.fhir.dstu3.model.ConceptMap(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent t : src.getContact()) - tgt.addContact(convertConceptMapContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setPurpose(src.getRequirements()); - tgt.setCopyright(src.getCopyright()); - tgt.setSource(convertType(src.getSource())); - tgt.setTarget(convertType(src.getTarget())); - for (org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent t : src.getElement()) { - List ws = convertSourceElementComponent(t); - for (SourceElementComponentWrapper w : ws) - getGroup(tgt, w.source, w.target).addElement(w.comp); - } - return tgt; - } - - public org.hl7.fhir.dstu3.model.UsageContext convertCodeableConceptToUsageContext(org.hl7.fhir.instance.model.CodeableConcept t) throws FHIRException { - org.hl7.fhir.dstu3.model.UsageContext result = new org.hl7.fhir.dstu3.model.UsageContext(); - // todo: set type.. - result.setValue(convertCodeableConcept(t)); - return result; - } - - - private ConceptMapGroupComponent getGroup(ConceptMap map, String srcs, String tgts) { - for (ConceptMapGroupComponent grp : map.getGroup()) { - if (grp.getSource().equals(srcs) && grp.getTarget().equals(tgts)) - return grp; - } - ConceptMapGroupComponent grp = map.addGroup(); - grp.setSource(srcs); - grp.setTarget(tgts); - return grp; - } - - - public org.hl7.fhir.instance.model.ConceptMap convertConceptMap(org.hl7.fhir.dstu3.model.ConceptMap src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ConceptMap tgt = new org.hl7.fhir.instance.model.ConceptMap(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertConceptMapContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setRequirements(src.getPurpose()); - tgt.setCopyright(src.getCopyright()); - tgt.setSource(convertType(src.getSource())); - tgt.setTarget(convertType(src.getTarget())); - for (org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g : src.getGroup()) - for (org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent t : g.getElement()) - tgt.addElement(convertSourceElementComponent(t, g)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus convertConformanceResourceStatus(org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.RETIRED; - default: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus convertConformanceResourceStatus(org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.RETIRED; - default: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ContactDetail convertConceptMapContactComponent(org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent convertConceptMapContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public List convertSourceElementComponent(org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent src) throws FHIRException { - List res = new ArrayList(); - if (src == null || src.isEmpty()) - return res; - for (org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent t : src.getTarget()) { - org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.addTarget(convertTargetElementComponent(t)); - res.add(new SourceElementComponentWrapper(tgt, src.getCodeSystem(), t.getCodeSystem())); - } - return res; - } - - public org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent src, org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent(); - copyElement(src, tgt); - tgt.setCodeSystem(g.getSource()); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent t : src.getTarget()) - tgt.addTarget(convertTargetElementComponent(t, g)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); - tgt.setComment(src.getComments()); - for (org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) - tgt.addDependsOn(convertOtherElementComponent(t)); - for (org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent t : src.getProduct()) - tgt.addProduct(convertOtherElementComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent src, org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent(); - copyElement(src, tgt); - tgt.setCodeSystem(g.getTarget()); - tgt.setCode(src.getCode()); - tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); - tgt.setComments(src.getComment()); - for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) - tgt.addDependsOn(convertOtherElementComponent(t)); - for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getProduct()) - tgt.addProduct(convertOtherElementComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUIVALENT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; - case EQUAL: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUAL; - case WIDER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.WIDER; - case SUBSUMES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SUBSUMES; - case NARROWER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NARROWER; - case SPECIALIZES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; - case INEXACT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.INEXACT; - case UNMATCHED: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.UNMATCHED; - case DISJOINT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.DISJOINT; - default: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUIVALENT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; - case EQUAL: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.EQUAL; - case WIDER: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.WIDER; - case SUBSUMES: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.SUBSUMES; - case NARROWER: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.NARROWER; - case SPECIALIZES: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; - case INEXACT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.INEXACT; - case UNMATCHED: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.UNMATCHED; - case DISJOINT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.DISJOINT; - default: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getElement()); - tgt.setSystem(src.getCodeSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent(); - copyElement(src, tgt); - tgt.setElement(src.getProperty()); - tgt.setCodeSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Condition convertCondition(org.hl7.fhir.instance.model.Condition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Condition tgt = new org.hl7.fhir.dstu3.model.Condition(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getPatient())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setAsserter(convertReference(src.getAsserter())); - if (src.hasDateRecorded()) - tgt.setAssertedDate(src.getDateRecorded()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.addCategory(convertCodeableConcept(src.getCategory())); - try { - tgt.setClinicalStatus(org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.fromCode(src.getClinicalStatus())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); - tgt.setSeverity(convertCodeableConcept(src.getSeverity())); - tgt.setOnset(convertType(src.getOnset())); - tgt.setAbatement(convertType(src.getAbatement())); - tgt.setStage(convertConditionStageComponent(src.getStage())); - for (org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) - tgt.addEvidence(convertConditionEvidenceComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); -// tgt.setNotes(src.getNotes()); - return tgt; - } - - public org.hl7.fhir.instance.model.Condition convertCondition(org.hl7.fhir.dstu3.model.Condition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Condition tgt = new org.hl7.fhir.instance.model.Condition(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setAsserter(convertReference(src.getAsserter())); - if (src.hasAssertedDate()) - tgt.setDateRecorded(src.getAssertedDate()); - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.setCategory(convertCodeableConcept(t)); - tgt.setClinicalStatus(src.getClinicalStatus().toCode()); - tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); - tgt.setSeverity(convertCodeableConcept(src.getSeverity())); - tgt.setOnset(convertType(src.getOnset())); - tgt.setAbatement(convertType(src.getAbatement())); - tgt.setStage(convertConditionStageComponent(src.getStage())); - for (org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) - tgt.addEvidence(convertConditionEvidenceComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); -// tgt.setNotes(src.getNotes()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROVISIONAL: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.PROVISIONAL; - case DIFFERENTIAL: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; - case CONFIRMED: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.CONFIRMED; - case REFUTED: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.REFUTED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROVISIONAL: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.PROVISIONAL; - case DIFFERENTIAL: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; - case CONFIRMED: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.CONFIRMED; - case REFUTED: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.REFUTED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.UNKNOWN; - default: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.instance.model.Condition.ConditionStageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent(); - copyElement(src, tgt); - tgt.setSummary(convertCodeableConcept(src.getSummary())); - for (org.hl7.fhir.instance.model.Reference t : src.getAssessment()) - tgt.addAssessment(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.instance.model.Condition.ConditionStageComponent(); - copyElement(src, tgt); - tgt.setSummary(convertCodeableConcept(src.getSummary())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAssessment()) - tgt.addAssessment(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent(); - copyElement(src, tgt); - tgt.addCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.instance.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept cc : src.getCode()) - tgt.setCode(convertCodeableConcept(cc)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement convertConformance(org.hl7.fhir.instance.model.Conformance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent t : src.getContact()) - tgt.addContact(convertConformanceContactComponent(t)); - tgt.setDescription(src.getDescription()); - tgt.setPurpose(src.getRequirements()); - tgt.setCopyright(src.getCopyright()); - tgt.setKind(convertConformanceStatementKind(src.getKind())); - tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); - tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); - tgt.setFhirVersion(src.getFhirVersion()); - tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); - for (org.hl7.fhir.instance.model.CodeType t : src.getFormat()) - tgt.addFormat(t.getValue()); - for (org.hl7.fhir.instance.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent t : src.getRest()) - tgt.addRest(convertConformanceRestComponent(t)); - for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent t : src.getMessaging()) - tgt.addMessaging(convertConformanceMessagingComponent(t)); - for (org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent t : src.getDocument()) - tgt.addDocument(convertConformanceDocumentComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance convertConformance(org.hl7.fhir.dstu3.model.CapabilityStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance tgt = new org.hl7.fhir.instance.model.Conformance(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertConformanceContactComponent(t)); - tgt.setDescription(src.getDescription()); - tgt.setRequirements(src.getPurpose()); - tgt.setCopyright(src.getCopyright()); - tgt.setKind(convertConformanceStatementKind(src.getKind())); - tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); - if (src.hasImplementation()) - tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); - tgt.setFhirVersion(src.getFhirVersion()); - tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getFormat()) - tgt.addFormat(t.getValue()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) - tgt.addRest(convertConformanceRestComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) - tgt.addMessaging(convertConformanceMessagingComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) - tgt.addDocument(convertConformanceDocumentComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind convertConformanceStatementKind(org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; - case CAPABILITY: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; - case REQUIREMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind convertConformanceStatementKind(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.INSTANCE; - case CAPABILITY: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.CAPABILITY; - case REQUIREMENTS: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.REQUIREMENTS; - default: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.NULL; - } - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.instance.model.Conformance.UnknownContentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NO: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NO; - case EXTENSIONS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; - case ELEMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.ELEMENTS; - case BOTH: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.BOTH; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NO: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.NO; - case EXTENSIONS: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.EXTENSIONS; - case ELEMENTS: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.ELEMENTS; - case BOTH: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.BOTH; - default: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ContactDetail convertConformanceContactComponent(org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent convertConformanceContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setVersion(src.getVersion()); - tgt.setReleaseDate(src.getReleaseDate()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setVersion(src.getVersion()); - tgt.setReleaseDate(src.getReleaseDate()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent convertConformanceRestComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent(); - copyElement(src, tgt); - tgt.setMode(convertRestfulConformanceMode(src.getMode())); - tgt.setDocumentation(src.getDocumentation()); - tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent t : src.getResource()) - tgt.addResource(convertConformanceRestResourceComponent(t)); - for (org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertSystemInteractionComponent(t)); - if (src.getTransactionMode() == org.hl7.fhir.instance.model.Conformance.TransactionMode.BATCH || src.getTransactionMode() == org.hl7.fhir.instance.model.Conformance.TransactionMode.BOTH) - tgt.addInteraction().setCode(SystemRestfulInteraction.BATCH); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent t : src.getOperation()) - tgt.addOperation(convertConformanceRestOperationComponent(t)); - for (org.hl7.fhir.instance.model.UriType t : src.getCompartment()) - tgt.addCompartment(t.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent convertConformanceRestComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent(); - copyElement(src, tgt); - tgt.setMode(convertRestfulConformanceMode(src.getMode())); - tgt.setDocumentation(src.getDocumentation()); - tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) - tgt.addResource(convertConformanceRestResourceComponent(t)); - boolean batch = false; - boolean transaction = false; - for (org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) { - if (t.getCode().equals(SystemRestfulInteraction.BATCH)) - batch = true; - else - tgt.addInteraction(convertSystemInteractionComponent(t)); - if (t.getCode().equals(SystemRestfulInteraction.TRANSACTION)) - transaction = true; - } - if (batch) - tgt.setTransactionMode(transaction ? org.hl7.fhir.instance.model.Conformance.TransactionMode.BOTH : org.hl7.fhir.instance.model.Conformance.TransactionMode.BATCH); - else - tgt.setTransactionMode(transaction ? org.hl7.fhir.instance.model.Conformance.TransactionMode.TRANSACTION : org.hl7.fhir.instance.model.Conformance.TransactionMode.NOTSUPPORTED); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) - tgt.addOperation(convertConformanceRestOperationComponent(t)); - for (org.hl7.fhir.dstu3.model.UriType t : src.getCompartment()) - tgt.addCompartment(t.getValue()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode convertRestfulConformanceMode(org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLIENT: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; - case SERVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.SERVER; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode convertRestfulConformanceMode(org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLIENT: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.CLIENT; - case SERVER: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.SERVER; - default: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.NULL; - } - } - - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); - copyElement(src, tgt); - tgt.setCors(src.getCors()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getService()) - tgt.addService(convertCodeableConcept(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent t : src.getCertificate()) - tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent(); - copyElement(src, tgt); - tgt.setCors(src.getCors()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getService()) - tgt.addService(convertCodeableConcept(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) - tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setBlob(src.getBlob()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setBlob(src.getBlob()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - for (org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertResourceInteractionComponent(t)); - tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); - tgt.setReadHistory(src.getReadHistory()); - tgt.setUpdateCreate(src.getUpdateCreate()); - tgt.setConditionalCreate(src.getConditionalCreate()); - tgt.setConditionalUpdate(src.getConditionalUpdate()); - tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); - for (org.hl7.fhir.instance.model.StringType t : src.getSearchInclude()) - tgt.addSearchInclude(t.getValue()); - for (org.hl7.fhir.instance.model.StringType t : src.getSearchRevInclude()) - tgt.addSearchRevInclude(t.getValue()); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertResourceInteractionComponent(t)); - tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); - tgt.setReadHistory(src.getReadHistory()); - tgt.setUpdateCreate(src.getUpdateCreate()); - tgt.setConditionalCreate(src.getConditionalCreate()); - tgt.setConditionalUpdate(src.getConditionalUpdate()); - tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); - for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchInclude()) - tgt.addSearchInclude(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchRevInclude()) - tgt.addSearchRevInclude(t.getValue()); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOVERSION: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; - case VERSIONED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; - case VERSIONEDUPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOVERSION: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.NOVERSION; - case VERSIONED: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.VERSIONED; - case VERSIONEDUPDATE: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.VERSIONEDUPDATE; - default: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.NULL; - } - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; - case SINGLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; - case MULTIPLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.NOTSUPPORTED; - case SINGLE: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.SINGLE; - case MULTIPLE: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.MULTIPLE; - default: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertTypeRestfulInteraction(src.getCode())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent tgt = new org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertTypeRestfulInteraction(src.getCode())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case READ: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.READ; - case VREAD: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.VREAD; - case UPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; - case DELETE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.DELETE; - case HISTORYINSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; - case HISTORYTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; - case CREATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.CREATE; - case SEARCHTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case READ: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.READ; - case VREAD: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.VREAD; - case UPDATE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.UPDATE; - case DELETE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.DELETE; - case HISTORYINSTANCE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.HISTORYINSTANCE; - case HISTORYTYPE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.HISTORYTYPE; - case CREATE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.CREATE; - case SEARCHTYPE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.SEARCHTYPE; - default: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.NULL; - } - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(src.getDefinition()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(src.getDefinition()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertSystemRestfulInteraction(src.getCode())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent tgt = new org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertSystemRestfulInteraction(src.getCode())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TRANSACTION: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; - case SEARCHSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; - case HISTORYSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TRANSACTION: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.TRANSACTION; - case SEARCHSYSTEM: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.SEARCHSYSTEM; - case HISTORYSYSTEM: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.HISTORYSYSTEM; - default: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.NULL; - } - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent t : src.getEndpoint()) - tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); - tgt.setReliableCache(src.getReliableCache()); - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent t : src.getEvent()) - tgt.addEvent(convertConformanceMessagingEventComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) - tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); - tgt.setReliableCache(src.getReliableCache()); - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) - tgt.addEvent(convertConformanceMessagingEventComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); - copyElement(src, tgt); - tgt.setProtocol(convertCoding(src.getProtocol())); - tgt.setAddress(src.getAddress()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent(); - copyElement(src, tgt); - tgt.setProtocol(convertCoding(src.getProtocol())); - tgt.setAddress(src.getAddress()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); - copyElement(src, tgt); - tgt.setCode(convertCoding(src.getCode())); - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - tgt.setMode(convertConformanceEventMode(src.getMode())); - tgt.setFocus(src.getFocus()); - tgt.setRequest(convertReference(src.getRequest())); - tgt.setResponse(convertReference(src.getResponse())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent(); - copyElement(src, tgt); - tgt.setCode(convertCoding(src.getCode())); - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - tgt.setMode(convertConformanceEventMode(src.getMode())); - tgt.setFocus(src.getFocus()); - tgt.setRequest(convertReference(src.getRequest())); - tgt.setResponse(convertReference(src.getResponse())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.NULL; - } - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode convertConformanceEventMode(org.hl7.fhir.instance.model.Conformance.ConformanceEventMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SENDER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.SENDER; - case RECEIVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.RECEIVER; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceEventMode convertConformanceEventMode(org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SENDER: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.SENDER; - case RECEIVER: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.RECEIVER; - default: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.NULL; - } - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent(); - copyElement(src, tgt); - tgt.setMode(convertDocumentMode(src.getMode())); - tgt.setDocumentation(src.getDocumentation()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent(); - copyElement(src, tgt); - tgt.setMode(convertDocumentMode(src.getMode())); - tgt.setDocumentation(src.getDocumentation()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.instance.model.Conformance.DocumentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRODUCER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.PRODUCER; - case CONSUMER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.CONSUMER; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.DocumentMode convertDocumentMode(org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRODUCER: return org.hl7.fhir.instance.model.Conformance.DocumentMode.PRODUCER; - case CONSUMER: return org.hl7.fhir.instance.model.Conformance.DocumentMode.CONSUMER; - default: return org.hl7.fhir.instance.model.Conformance.DocumentMode.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Contract convertContract(org.hl7.fhir.instance.model.Contract src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Contract tgt = new org.hl7.fhir.dstu3.model.Contract(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setIssued(src.getIssued()); - tgt.setApplies(convertPeriod(src.getApplies())); - for (org.hl7.fhir.instance.model.Reference t : src.getSubject()) - tgt.addSubject(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthority()) - tgt.addAuthority(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getDomain()) - tgt.addDomain(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSubType()) - tgt.addSubType(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getAction()) - tgt.addAction(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getActionReason()) - tgt.addActionReason(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Contract.ActorComponent t : src.getActor()) - tgt.addAgent(convertAgentComponent(t)); - for (org.hl7.fhir.instance.model.Contract.SignatoryComponent t : src.getSigner()) - tgt.addSigner(convertSignatoryComponent(t)); - for (org.hl7.fhir.instance.model.Contract.ValuedItemComponent t : src.getValuedItem()) - tgt.addValuedItem(convertValuedItemComponent(t)); - for (org.hl7.fhir.instance.model.Contract.TermComponent t : src.getTerm()) - tgt.addTerm(convertTermComponent(t)); - tgt.setBinding(convertType(src.getBinding())); - for (org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) - tgt.addFriendly(convertFriendlyLanguageComponent(t)); - for (org.hl7.fhir.instance.model.Contract.LegalLanguageComponent t : src.getLegal()) - tgt.addLegal(convertLegalLanguageComponent(t)); - for (org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent t : src.getRule()) - tgt.addRule(convertComputableLanguageComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract convertContract(org.hl7.fhir.dstu3.model.Contract src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract tgt = new org.hl7.fhir.instance.model.Contract(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setIssued(src.getIssued()); - tgt.setApplies(convertPeriod(src.getApplies())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSubject()) - tgt.addSubject(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthority()) - tgt.addAuthority(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDomain()) - tgt.addDomain(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubType()) - tgt.addSubType(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAction()) - tgt.addAction(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getActionReason()) - tgt.addActionReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Contract.AgentComponent t : src.getAgent()) - tgt.addActor(convertAgentComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.SignatoryComponent t : src.getSigner()) - tgt.addSigner(convertSignatoryComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent t : src.getValuedItem()) - tgt.addValuedItem(convertValuedItemComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.TermComponent t : src.getTerm()) - tgt.addTerm(convertTermComponent(t)); - tgt.setBinding(convertType(src.getBinding())); - for (org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) - tgt.addFriendly(convertFriendlyLanguageComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent t : src.getLegal()) - tgt.addLegal(convertLegalLanguageComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent t : src.getRule()) - tgt.addRule(convertComputableLanguageComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Contract.AgentComponent convertAgentComponent(org.hl7.fhir.instance.model.Contract.ActorComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Contract.AgentComponent tgt = new org.hl7.fhir.dstu3.model.Contract.AgentComponent(); - copyElement(src, tgt); - tgt.setActor(convertReference(src.getEntity())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.ActorComponent convertAgentComponent(org.hl7.fhir.dstu3.model.Contract.AgentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.ActorComponent tgt = new org.hl7.fhir.instance.model.Contract.ActorComponent(); - copyElement(src, tgt); - tgt.setEntity(convertReference(src.getActor())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.instance.model.Contract.SignatoryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.dstu3.model.Contract.SignatoryComponent(); - copyElement(src, tgt); - tgt.setType(convertCoding(src.getType())); - tgt.setParty(convertReference(src.getParty())); - if (src.hasSignature()) - tgt.addSignature(new org.hl7.fhir.dstu3.model.Signature().setBlob(src.getSignature().getBytes())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.dstu3.model.Contract.SignatoryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.instance.model.Contract.SignatoryComponent(); - copyElement(src, tgt); - tgt.setType(convertCoding(src.getType())); - tgt.setParty(convertReference(src.getParty())); - for (org.hl7.fhir.dstu3.model.Signature t : src.getSignature()) - tgt.setSignature(Base64.encodeBase64String(t.getBlob())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.instance.model.Contract.ValuedItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent(); - copyElement(src, tgt); - tgt.setEntity(convertType(src.getEntity())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setEffectiveTime(src.getEffectiveTime()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - tgt.setFactor(src.getFactor()); - tgt.setPoints(src.getPoints()); - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.instance.model.Contract.ValuedItemComponent(); - copyElement(src, tgt); - tgt.setEntity(convertType(src.getEntity())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setEffectiveTime(src.getEffectiveTime()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - tgt.setFactor(src.getFactor()); - tgt.setPoints(src.getPoints()); - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.instance.model.Contract.TermComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Contract.TermComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setIssued(src.getIssued()); - tgt.setApplies(convertPeriod(src.getApplies())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setSubType(convertCodeableConcept(src.getSubType())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getAction()) - tgt.addAction(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getActionReason()) - tgt.addActionReason(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Contract.TermActorComponent t : src.getActor()) - tgt.addAgent(convertTermAgentComponent(t)); - tgt.setText(src.getText()); - for (org.hl7.fhir.instance.model.Contract.TermValuedItemComponent t : src.getValuedItem()) - tgt.addValuedItem(convertTermValuedItemComponent(t)); - for (org.hl7.fhir.instance.model.Contract.TermComponent t : src.getGroup()) - tgt.addGroup(convertTermComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.dstu3.model.Contract.TermComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.TermComponent tgt = new org.hl7.fhir.instance.model.Contract.TermComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setIssued(src.getIssued()); - tgt.setApplies(convertPeriod(src.getApplies())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setSubType(convertCodeableConcept(src.getSubType())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAction()) - tgt.addAction(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getActionReason()) - tgt.addActionReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Contract.TermAgentComponent t : src.getAgent()) - tgt.addActor(convertTermAgentComponent(t)); - tgt.setText(src.getText()); - for (org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent t : src.getValuedItem()) - tgt.addValuedItem(convertTermValuedItemComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.TermComponent t : src.getGroup()) - tgt.addGroup(convertTermComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Contract.TermAgentComponent convertTermAgentComponent(org.hl7.fhir.instance.model.Contract.TermActorComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Contract.TermAgentComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermAgentComponent(); - copyElement(src, tgt); - tgt.setActor(convertReference(src.getEntity())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.TermActorComponent convertTermAgentComponent(org.hl7.fhir.dstu3.model.Contract.TermAgentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.TermActorComponent tgt = new org.hl7.fhir.instance.model.Contract.TermActorComponent(); - copyElement(src, tgt); - tgt.setEntity(convertReference(src.getActor())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.instance.model.Contract.TermValuedItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent(); - copyElement(src, tgt); - tgt.setEntity(convertType(src.getEntity())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setEffectiveTime(src.getEffectiveTime()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - tgt.setFactor(src.getFactor()); - tgt.setPoints(src.getPoints()); - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.TermValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.TermValuedItemComponent tgt = new org.hl7.fhir.instance.model.Contract.TermValuedItemComponent(); - copyElement(src, tgt); - tgt.setEntity(convertType(src.getEntity())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setEffectiveTime(src.getEffectiveTime()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - tgt.setFactor(src.getFactor()); - tgt.setPoints(src.getPoints()); - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.instance.model.Contract.LegalLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.LegalLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - - public org.hl7.fhir.dstu3.model.DataElement convertDataElement(org.hl7.fhir.instance.model.DataElement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DataElement tgt = new org.hl7.fhir.dstu3.model.DataElement(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.DataElement.DataElementContactComponent t : src.getContact()) - tgt.addContact(convertDataElementContactComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setCopyright(src.getCopyright()); - tgt.setStringency(convertDataElementStringency(src.getStringency())); - for (org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent t : src.getMapping()) - tgt.addMapping(convertDataElementMappingComponent(t)); - List slicePaths = new ArrayList(); - for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { - if (t.hasSlicing()) - slicePaths.add(t.getPath()); - tgt.addElement(convertElementDefinition(t, slicePaths)); - } - return tgt; - } - - public org.hl7.fhir.instance.model.DataElement convertDataElement(org.hl7.fhir.dstu3.model.DataElement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DataElement tgt = new org.hl7.fhir.instance.model.DataElement(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertDataElementContactComponent(t)); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setCopyright(src.getCopyright()); - tgt.setStringency(convertDataElementStringency(src.getStringency())); - for (org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent t : src.getMapping()) - tgt.addMapping(convertDataElementMappingComponent(t)); - for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.instance.model.DataElement.DataElementStringency src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPARABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.COMPARABLE; - case FULLYSPECIFIED: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FULLYSPECIFIED; - case EQUIVALENT: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.EQUIVALENT; - case CONVERTABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.CONVERTABLE; - case SCALEABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.SCALEABLE; - case FLEXIBLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FLEXIBLE; - default: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.NULL; - } - } - - public org.hl7.fhir.instance.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.dstu3.model.DataElement.DataElementStringency src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPARABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.COMPARABLE; - case FULLYSPECIFIED: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.FULLYSPECIFIED; - case EQUIVALENT: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.EQUIVALENT; - case CONVERTABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.CONVERTABLE; - case SCALEABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.SCALEABLE; - case FLEXIBLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.FLEXIBLE; - default: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ContactDetail convertDataElementContactComponent(org.hl7.fhir.instance.model.DataElement.DataElementContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DataElement.DataElementContactComponent convertDataElementContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DataElement.DataElementContactComponent tgt = new org.hl7.fhir.instance.model.DataElement.DataElementContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setUri(src.getUri()); - tgt.setName(src.getName()); - tgt.setComment(src.getComments()); - return tgt; - } - - public org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setUri(src.getUri()); - tgt.setName(src.getName()); - tgt.setComments(src.getComment()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.instance.model.DetectedIssue src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DetectedIssue tgt = new org.hl7.fhir.dstu3.model.DetectedIssue(); - copyDomainResource(src, tgt); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); - for (org.hl7.fhir.instance.model.Reference t : src.getImplicated()) - tgt.addImplicated(convertReference(t)); - tgt.setDetail(src.getDetail()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setReference(src.getReference()); - for (org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) - tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.dstu3.model.DetectedIssue src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DetectedIssue tgt = new org.hl7.fhir.instance.model.DetectedIssue(); - copyDomainResource(src, tgt); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getImplicated()) - tgt.addImplicated(convertReference(t)); - tgt.setDetail(src.getDetail()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setReference(src.getReference()); - for (org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) - tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HIGH: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.HIGH; - case MODERATE: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.MODERATE; - case LOW: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.LOW; - default: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.NULL; - } - } - - public org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HIGH: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.HIGH; - case MODERATE: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.MODERATE; - case LOW: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.LOW; - default: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent(); - copyElement(src, tgt); - tgt.setAction(convertCodeableConcept(src.getAction())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent(); - copyElement(src, tgt); - tgt.setAction(convertCodeableConcept(src.getAction())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Device convertDevice(org.hl7.fhir.instance.model.Device src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Device tgt = new org.hl7.fhir.dstu3.model.Device(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setUdi((new org.hl7.fhir.dstu3.model.Device.DeviceUdiComponent()).setDeviceIdentifier(src.getUdi())); - tgt.setStatus(convertDeviceStatus(src.getStatus())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setLotNumber(src.getLotNumber()); - tgt.setManufacturer(src.getManufacturer()); - tgt.setManufactureDate(src.getManufactureDate()); - tgt.setExpirationDate(src.getExpiry()); - tgt.setModel(src.getModel()); - tgt.setVersion(src.getVersion()); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setOwner(convertReference(src.getOwner())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.instance.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Device convertDevice(org.hl7.fhir.dstu3.model.Device src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Device tgt = new org.hl7.fhir.instance.model.Device(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasUdi()) - tgt.setUdi(src.getUdi().getDeviceIdentifier()); - tgt.setStatus(convertDeviceStatus(src.getStatus())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setLotNumber(src.getLotNumber()); - tgt.setManufacturer(src.getManufacturer()); - tgt.setManufactureDate(src.getManufactureDate()); - tgt.setExpiry(src.getExpirationDate()); - tgt.setModel(src.getModel()); - tgt.setVersion(src.getVersion()); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setOwner(convertReference(src.getOwner())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus convertDeviceStatus(org.hl7.fhir.instance.model.Device.DeviceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case AVAILABLE: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.ACTIVE; - case NOTAVAILABLE: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Device.DeviceStatus convertDeviceStatus(org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.Device.DeviceStatus.AVAILABLE; - case INACTIVE: return org.hl7.fhir.instance.model.Device.DeviceStatus.NOTAVAILABLE; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Device.DeviceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.Device.DeviceStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.instance.model.DeviceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DeviceComponent tgt = new org.hl7.fhir.dstu3.model.DeviceComponent(); - copyDomainResource(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setLastSystemChange(src.getLastSystemChange()); - tgt.setSource(convertReference(src.getSource())); - tgt.setParent(convertReference(src.getParent())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getOperationalStatus()) - tgt.addOperationalStatus(convertCodeableConcept(t)); - tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); - tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); - for (org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) - tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); - tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); - return tgt; - } - - public org.hl7.fhir.instance.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.dstu3.model.DeviceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DeviceComponent tgt = new org.hl7.fhir.instance.model.DeviceComponent(); - copyDomainResource(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setLastSystemChange(src.getLastSystemChange()); - tgt.setSource(convertReference(src.getSource())); - tgt.setParent(convertReference(src.getParent())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getOperationalStatus()) - tgt.addOperationalStatus(convertCodeableConcept(t)); - tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); - tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); - for (org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) - tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); - tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OTHER: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.OTHER; - case CHEMICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; - case ELECTRICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; - case IMPEDANCE: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; - case NUCLEAR: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; - case OPTICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.OPTICAL; - case THERMAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.THERMAL; - case BIOLOGICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; - case MECHANICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; - case ACOUSTICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; - case MANUAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.MANUAL; - default: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OTHER: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.OTHER; - case CHEMICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; - case ELECTRICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; - case IMPEDANCE: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; - case NUCLEAR: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; - case OPTICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.OPTICAL; - case THERMAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.THERMAL; - case BIOLOGICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; - case MECHANICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; - case ACOUSTICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; - case MANUAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.MANUAL; - default: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); - copyElement(src, tgt); - tgt.setSpecType(convertCodeableConcept(src.getSpecType())); - tgt.setComponentId(convertIdentifier(src.getComponentId())); - tgt.setProductionSpec(src.getProductionSpec()); - return tgt; - } - - public org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); - copyElement(src, tgt); - tgt.setSpecType(convertCodeableConcept(src.getSpecType())); - tgt.setComponentId(convertIdentifier(src.getComponentId())); - tgt.setProductionSpec(src.getProductionSpec()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.instance.model.DeviceMetric src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DeviceMetric tgt = new org.hl7.fhir.dstu3.model.DeviceMetric(); - copyDomainResource(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setUnit(convertCodeableConcept(src.getUnit())); - tgt.setSource(convertReference(src.getSource())); - tgt.setParent(convertReference(src.getParent())); - tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); - tgt.setColor(convertDeviceMetricColor(src.getColor())); - tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); - tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); - for (org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) - tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.dstu3.model.DeviceMetric src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DeviceMetric tgt = new org.hl7.fhir.instance.model.DeviceMetric(); - copyDomainResource(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setUnit(convertCodeableConcept(src.getUnit())); - tgt.setSource(convertReference(src.getSource())); - tgt.setParent(convertReference(src.getParent())); - tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); - tgt.setColor(convertDeviceMetricColor(src.getColor())); - tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); - tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); - for (org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) - tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ON: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.ON; - case OFF: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; - case STANDBY: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; - default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ON: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.ON; - case OFF: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; - case STANDBY: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; - default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BLACK: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.BLACK; - case RED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.RED; - case GREEN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.GREEN; - case YELLOW: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.YELLOW; - case BLUE: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.BLUE; - case MAGENTA: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.MAGENTA; - case CYAN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.CYAN; - case WHITE: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.WHITE; - default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BLACK: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.BLACK; - case RED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.RED; - case GREEN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.GREEN; - case YELLOW: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.YELLOW; - case BLUE: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.BLUE; - case MAGENTA: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.MAGENTA; - case CYAN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.CYAN; - case WHITE: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.WHITE; - default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MEASUREMENT: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; - case SETTING: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.SETTING; - case CALCULATION: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.CALCULATION; - case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; - default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MEASUREMENT: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; - case SETTING: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.SETTING; - case CALCULATION: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.CALCULATION; - case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; - default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent(); - copyElement(src, tgt); - tgt.setType(convertDeviceMetricCalibrationType(src.getType())); - tgt.setState(convertDeviceMetricCalibrationState(src.getState())); - tgt.setTime(src.getTime()); - return tgt; - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent(); - copyElement(src, tgt); - tgt.setType(convertDeviceMetricCalibrationType(src.getType())); - tgt.setState(convertDeviceMetricCalibrationState(src.getState())); - tgt.setTime(src.getTime()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; - case OFFSET: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; - case GAIN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; - case TWOPOINT: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; - default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; - case OFFSET: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; - case GAIN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; - case TWOPOINT: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; - default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTCALIBRATED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; - case CALIBRATIONREQUIRED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; - case CALIBRATED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; - case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; - default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTCALIBRATED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; - case CALIBRATIONREQUIRED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; - case CALIBRATED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; - case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; - default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.instance.model.DeviceUseStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DeviceUseStatement tgt = new org.hl7.fhir.dstu3.model.DeviceUseStatement(); - copyDomainResource(src, tgt); - if (src.hasBodySiteCodeableConcept()) - tgt.setBodySite(convertCodeableConcept(src.getBodySiteCodeableConcept())); - tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getIndication()) - tgt.addIndication(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.StringType t : src.getNotes()) - tgt.addNote().setText(t.getValue()); - tgt.setRecordedOn(src.getRecordedOn()); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setTiming(convertType(src.getTiming())); - return tgt; - } - - public org.hl7.fhir.instance.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.dstu3.model.DeviceUseStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DeviceUseStatement tgt = new org.hl7.fhir.instance.model.DeviceUseStatement(); - copyDomainResource(src, tgt); - tgt.setBodySite(convertType(src.getBodySite())); - tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getIndication()) - tgt.addIndication(convertCodeableConcept(t)); - for (Annotation t : src.getNote()) - tgt.addNotes(t.getText()); - tgt.setRecordedOn(src.getRecordedOn()); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setTiming(convertType(src.getTiming())); - return tgt; - } - -// public org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus convertDiagnosticOrderStatus(org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus src) throws FHIRException { -// if (src ==/* null || src.isEmpty()*/) -// return null; -// switch (src) { -// case PROPOSED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.PROPOSED; -// case DRAFT: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.DRAFT; -// case PLANNED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.PLANNED; -// case REQUESTED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.REQUESTED; -// case RECEIVED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.RECEIVED; -// case ACCEPTED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.ACCEPTED; -// case INPROGRESS: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.INPROGRESS; -// case REVIEW: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.REVIEW; -// case COMPLETED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.COMPLETED; -// case CANCELLED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.CANCELLED; -// case SUSPENDED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.SUSPENDED; -// case REJECTED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.REJECTED; -// case FAILED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.FAILED; -// default: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.NULL; -// } -// } -// -// public org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus convertDiagnosticOrderStatus(org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus src) throws FHIRException { -// if (src ==/* null || src.isEmpty()*/) -// return null; -// switch (src) { -// case PROPOSED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.PROPOSED; -// case DRAFT: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.DRAFT; -// case PLANNED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.PLANNED; -// case REQUESTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REQUESTED; -// case RECEIVED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.RECEIVED; -// case ACCEPTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.ACCEPTED; -// case INPROGRESS: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.INPROGRESS; -// case REVIEW: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REVIEW; -// case COMPLETED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.COMPLETED; -// case CANCELLED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.CANCELLED; -// case SUSPENDED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.SUSPENDED; -// case REJECTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REJECTED; -// case FAILED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.FAILED; -// default: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.NULL; -// } -// } - - - public org.hl7.fhir.dstu3.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.instance.model.DiagnosticReport src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DiagnosticReport tgt = new org.hl7.fhir.dstu3.model.DiagnosticReport(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setIssued(src.getIssued()); -// tgt.setPerformer(convertReference(src.getPerformer())); -// for (org.hl7.fhir.instance.model.Reference t : src.getRequest()) -// tgt.addRequest(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getSpecimen()) - tgt.addSpecimen(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getResult()) - tgt.addResult(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getImagingStudy()) - tgt.addImagingStudy(convertReference(t)); - for (org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) - tgt.addImage(convertDiagnosticReportImageComponent(t)); - tgt.setConclusion(src.getConclusion()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCodedDiagnosis()) - tgt.addCodedDiagnosis(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Attachment t : src.getPresentedForm()) - tgt.addPresentedForm(convertAttachment(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.dstu3.model.DiagnosticReport src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DiagnosticReport tgt = new org.hl7.fhir.instance.model.DiagnosticReport(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setIssued(src.getIssued()); -// tgt.setPerformer(convertReference(src.getPerformer())); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getRequest()) -// tgt.addRequest(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSpecimen()) - tgt.addSpecimen(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getResult()) - tgt.addResult(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getImagingStudy()) - tgt.addImagingStudy(convertReference(t)); - for (org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) - tgt.addImage(convertDiagnosticReportImageComponent(t)); - tgt.setConclusion(src.getConclusion()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCodedDiagnosis()) - tgt.addCodedDiagnosis(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getPresentedForm()) - tgt.addPresentedForm(convertAttachment(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; - case PARTIAL: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; - case FINAL: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.FINAL; - case CORRECTED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; - case APPENDED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; - case CANCELLED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; - case PARTIAL: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; - case FINAL: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.FINAL; - case CORRECTED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; - case APPENDED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; - case CANCELLED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent(); - copyElement(src, tgt); - tgt.setComment(src.getComment()); - tgt.setLink(convertReference(src.getLink())); - return tgt; - } - - public org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent(); - copyElement(src, tgt); - tgt.setComment(src.getComment()); - tgt.setLink(convertReference(src.getLink())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.instance.model.DocumentManifest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DocumentManifest tgt = new org.hl7.fhir.dstu3.model.DocumentManifest(); - copyDomainResource(src, tgt); - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - tgt.setCreated(src.getCreated()); - tgt.setSource(src.getSource()); - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) - tgt.addContent(convertDocumentManifestContentComponent(t)); - for (org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentManifestRelatedComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.dstu3.model.DocumentManifest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentManifest tgt = new org.hl7.fhir.instance.model.DocumentManifest(); - copyDomainResource(src, tgt); - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - tgt.setCreated(src.getCreated()); - tgt.setSource(src.getSource()); - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) - tgt.addContent(convertDocumentManifestContentComponent(t)); - for (org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentManifestRelatedComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.CURRENT; - case SUPERSEDED: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.CURRENT; - case SUPERSEDED: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent(); - copyElement(src, tgt); - tgt.setP(convertType(src.getP())); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent(); - copyElement(src, tgt); - tgt.setP(convertType(src.getP())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DocumentReference convertDocumentReference(org.hl7.fhir.instance.model.DocumentReference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DocumentReference tgt = new org.hl7.fhir.dstu3.model.DocumentReference(); - copyDomainResource(src, tgt); - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setClass_(convertCodeableConcept(src.getClass_())); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - tgt.setCustodian(convertReference(src.getCustodian())); - tgt.setAuthenticator(convertReference(src.getAuthenticator())); - tgt.setCreated(src.getCreated()); - tgt.setIndexed(src.getIndexed()); - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - tgt.setDocStatus(convertDocStatus(src.getDocStatus())); - for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) - tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) - tgt.addContent(convertDocumentReferenceContentComponent(t)); - tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); - return tgt; - } - - private ReferredDocumentStatus convertDocStatus(CodeableConcept cc) { - if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "preliminary")) - return ReferredDocumentStatus.PRELIMINARY; - if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "final")) - return ReferredDocumentStatus.FINAL; - if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "amended")) - return ReferredDocumentStatus.AMENDED; - if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "entered-in-error")) - return ReferredDocumentStatus.ENTEREDINERROR; - - return null; - } - - private CodeableConcept convertDocStatus(ReferredDocumentStatus docStatus) { - CodeableConcept cc = new CodeableConcept (); - switch (docStatus) { - case AMENDED: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("amended"); break; - case ENTEREDINERROR: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("entered-in-error"); break; - case FINAL: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("final"); break; - case PRELIMINARY: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("preliminary"); break; - default: return null; - } - return cc; - } - - public org.hl7.fhir.instance.model.DocumentReference convertDocumentReference(org.hl7.fhir.dstu3.model.DocumentReference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentReference tgt = new org.hl7.fhir.instance.model.DocumentReference(); - copyDomainResource(src, tgt); - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setClass_(convertCodeableConcept(src.getClass_())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - tgt.setCustodian(convertReference(src.getCustodian())); - tgt.setAuthenticator(convertReference(src.getAuthenticator())); - tgt.setCreated(src.getCreated()); - tgt.setIndexed(src.getIndexed()); - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - tgt.setDocStatus(convertDocStatus(src.getDocStatus())); - for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) - tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) - tgt.addContent(convertDocumentReferenceContentComponent(t)); - tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); - return tgt; - } - - - public org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent(); - copyElement(src, tgt); - tgt.setCode(convertDocumentRelationshipType(src.getCode())); - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent(); - copyElement(src, tgt); - tgt.setCode(convertDocumentRelationshipType(src.getCode())); - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACES: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.REPLACES; - case TRANSFORMS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; - case SIGNS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.SIGNS; - case APPENDS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.APPENDS; - default: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.NULL; - } - } - - public org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACES: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.REPLACES; - case TRANSFORMS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; - case SIGNS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.SIGNS; - case APPENDS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.APPENDS; - default: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent(); - copyElement(src, tgt); - tgt.setAttachment(convertAttachment(src.getAttachment())); - for (org.hl7.fhir.instance.model.Coding t : src.getFormat()) - tgt.setFormat(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent(); - copyElement(src, tgt); - tgt.setAttachment(convertAttachment(src.getAttachment())); - tgt.addFormat(convertCoding(src.getFormat())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent(); - copyElement(src, tgt); - tgt.setEncounter(convertReference(src.getEncounter())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getEvent()) - tgt.addEvent(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); - tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); - tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); - for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent(); - copyElement(src, tgt); - tgt.setEncounter(convertReference(src.getEncounter())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getEvent()) - tgt.addEvent(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); - tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); - tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); - for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - - public org.hl7.fhir.dstu3.model.Encounter convertEncounter(org.hl7.fhir.instance.model.Encounter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Encounter tgt = new org.hl7.fhir.dstu3.model.Encounter(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertEncounterState(src.getStatus())); -// for (org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent t : src.getStatusHistory()) -// tgt.addStatusHistory(convertEncounterStatusHistoryComponent(t)); - tgt.setClass_(convertEncounterClass(src.getClass_())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPriority(convertCodeableConcept(src.getPriority())); - tgt.setSubject(convertReference(src.getPatient())); - for (org.hl7.fhir.instance.model.Reference t : src.getEpisodeOfCare()) - tgt.addEpisodeOfCare(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getIncomingReferral()) - tgt.addIncomingReferral(convertReference(t)); - for (org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertEncounterParticipantComponent(t)); - tgt.setAppointment(convertReference(src.getAppointment())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setLength(convertDuration(src.getLength())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); - for (org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent t : src.getLocation()) - tgt.addLocation(convertEncounterLocationComponent(t)); - tgt.setServiceProvider(convertReference(src.getServiceProvider())); - tgt.setPartOf(convertReference(src.getPartOf())); - return tgt; - } - - public org.hl7.fhir.instance.model.Encounter convertEncounter(org.hl7.fhir.dstu3.model.Encounter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Encounter tgt = new org.hl7.fhir.instance.model.Encounter(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertEncounterState(src.getStatus())); -// for (org.hl7.fhir.dstu3.model.Encounter.EncounterStatusHistoryComponent t : src.getStatusHistory()) -// tgt.addStatusHistory(convertEncounterStatusHistoryComponent(t)); - tgt.setClass_(convertEncounterClass(src.getClass_())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPriority(convertCodeableConcept(src.getPriority())); - tgt.setPatient(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEpisodeOfCare()) - tgt.addEpisodeOfCare(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getIncomingReferral()) - tgt.addIncomingReferral(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertEncounterParticipantComponent(t)); - tgt.setAppointment(convertReference(src.getAppointment())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setLength(convertDuration(src.getLength())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); - for (org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent t : src.getLocation()) - tgt.addLocation(convertEncounterLocationComponent(t)); - tgt.setServiceProvider(convertReference(src.getServiceProvider())); - tgt.setPartOf(convertReference(src.getPartOf())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Encounter.EncounterStatus convertEncounterState(org.hl7.fhir.instance.model.Encounter.EncounterState src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.PLANNED; - case ARRIVED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.ARRIVED; - case INPROGRESS: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.INPROGRESS; - case ONLEAVE: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.ONLEAVE; - case FINISHED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.FINISHED; - case CANCELLED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.CANCELLED; - default: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Encounter.EncounterState convertEncounterState(org.hl7.fhir.dstu3.model.Encounter.EncounterStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.instance.model.Encounter.EncounterState.PLANNED; - case ARRIVED: return org.hl7.fhir.instance.model.Encounter.EncounterState.ARRIVED; - case INPROGRESS: return org.hl7.fhir.instance.model.Encounter.EncounterState.INPROGRESS; - case ONLEAVE: return org.hl7.fhir.instance.model.Encounter.EncounterState.ONLEAVE; - case FINISHED: return org.hl7.fhir.instance.model.Encounter.EncounterState.FINISHED; - case CANCELLED: return org.hl7.fhir.instance.model.Encounter.EncounterState.CANCELLED; - default: return org.hl7.fhir.instance.model.Encounter.EncounterState.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Coding convertEncounterClass(org.hl7.fhir.instance.model.Encounter.EncounterClass src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPATIENT: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("IMP"); - case OUTPATIENT: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("AMB"); - case AMBULATORY: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("AMB"); - case EMERGENCY: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("EMER"); - case HOME: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("HH"); - case FIELD: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("FLD"); - case DAYTIME: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("SS"); - case VIRTUAL: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("VR"); - default: return null; - } - } - - public org.hl7.fhir.instance.model.Encounter.EncounterClass convertEncounterClass(org.hl7.fhir.dstu3.model.Coding src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src.getSystem().equals("http://hl7.org/fhir/v3/ActCode")) { - if (src.getCode().equals("IMP")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.INPATIENT; - if (src.getCode().equals("AMB")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.AMBULATORY; - if (src.getCode().equals("EMER")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.EMERGENCY; - if (src.getCode().equals("HH")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.HOME; - if (src.getCode().equals("FLD")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.FIELD; - if (src.getCode().equals("")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.DAYTIME; - if (src.getCode().equals("VR")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.VIRTUAL; - } - return org.hl7.fhir.instance.model.Encounter.EncounterClass.NULL; - } - -// public org.hl7.fhir.dstu3.model.Encounter.EncounterStatusHistoryComponent convertEncounterStatusHistoryComponent(org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.Encounter.EncounterStatusHistoryComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterStatusHistoryComponent(); -// copyElement(src, tgt); -// tgt.setStatus(convertEncounterState(src.getStatus())); -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent convertEncounterStatusHistoryComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterStatusHistoryComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent(); -// copyElement(src, tgt); -// tgt.setStatus(convertEncounterState(src.getStatus())); -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// return tgt; -// } - - public org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setIndividual(convertReference(src.getIndividual())); - return tgt; - } - - public org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setIndividual(convertReference(src.getIndividual())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent(); - copyElement(src, tgt); - tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); - tgt.setOrigin(convertReference(src.getOrigin())); - tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); - tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getDietPreference()) - tgt.addDietPreference(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialCourtesy()) - tgt.addSpecialCourtesy(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialArrangement()) - tgt.addSpecialArrangement(convertCodeableConcept(t)); - tgt.setDestination(convertReference(src.getDestination())); - tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); - return tgt; - } - - public org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent(); - copyElement(src, tgt); - tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); - tgt.setOrigin(convertReference(src.getOrigin())); - tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); - tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getDietPreference()) - tgt.addDietPreference(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialCourtesy()) - tgt.addSpecialCourtesy(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialArrangement()) - tgt.addSpecialArrangement(convertCodeableConcept(t)); - tgt.setDestination(convertReference(src.getDestination())); - tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent(); - copyElement(src, tgt); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent(); - copyElement(src, tgt); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.PLANNED; - case ACTIVE: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.ACTIVE; - case RESERVED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.RESERVED; - case COMPLETED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.COMPLETED; - default: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.PLANNED; - case ACTIVE: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.ACTIVE; - case RESERVED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.RESERVED; - case COMPLETED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.COMPLETED; - default: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.instance.model.EnrollmentRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.EnrollmentRequest tgt = new org.hl7.fhir.dstu3.model.EnrollmentRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCreated(src.getCreated()); -// tgt.setTarget(convertReference(src.getTarget())); - tgt.setProvider(convertReference(src.getProvider())); - tgt.setOrganization(convertReference(src.getOrganization())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setCoverage(convertReference(src.getCoverage())); -// tgt.setRelationship(convertCoding(src.getRelationship())); - return tgt; - } - - public org.hl7.fhir.instance.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.dstu3.model.EnrollmentRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.EnrollmentRequest tgt = new org.hl7.fhir.instance.model.EnrollmentRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCreated(src.getCreated()); -// tgt.setTarget(convertReference(src.getTarget())); -// tgt.setProvider(convertReference(src.getProvider())); -// tgt.setOrganization(convertReference(src.getOrganization())); -// tgt.setSubject(convertReference(src.getSubject())); - tgt.setCoverage(convertReference(src.getCoverage())); -// tgt.setRelationship(convertCoding(src.getRelationship())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.instance.model.EnrollmentResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.EnrollmentResponse tgt = new org.hl7.fhir.dstu3.model.EnrollmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setRequest(convertReference(src.getRequest())); -// tgt.setOutcome(convertRemittanceOutcome(src.getOutcome())); - tgt.setDisposition(src.getDisposition()); - tgt.setCreated(src.getCreated()); - tgt.setOrganization(convertReference(src.getOrganization())); - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - return tgt; - } - - public org.hl7.fhir.instance.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.dstu3.model.EnrollmentResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.EnrollmentResponse tgt = new org.hl7.fhir.instance.model.EnrollmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); -// tgt.setRequest(convertReference(src.getRequestReference())); -// tgt.setOutcome(convertRemittanceOutcome(src.getOutcome())); - tgt.setDisposition(src.getDisposition()); - tgt.setCreated(src.getCreated()); -// tgt.setOrganization(convertReference(src.getOrganizationReference())); -// tgt.setRequestProvider(convertReference(src.getRequestProviderReference())); -// tgt.setRequestOrganization(convertReference(src.getRequestOrganizationReference())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.instance.model.EpisodeOfCare src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.EpisodeOfCare tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - for (org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) - tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.instance.model.Reference t : src.getReferralRequest()) - tgt.addReferralRequest(convertReference(t)); - tgt.setCareManager(convertReference(src.getCareManager())); - return tgt; - } - - public org.hl7.fhir.instance.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.dstu3.model.EpisodeOfCare src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.EpisodeOfCare tgt = new org.hl7.fhir.instance.model.EpisodeOfCare(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) - tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReferralRequest()) - tgt.addReferralRequest(convertReference(t)); - tgt.setCareManager(convertReference(src.getCareManager())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; - case WAITLIST: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; - case ACTIVE: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; - case ONHOLD: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; - case FINISHED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; - case CANCELLED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; - default: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; - case WAITLIST: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; - case ACTIVE: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; - case ONHOLD: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; - case FINISHED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; - case CANCELLED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; - default: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); - copyElement(src, tgt); - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); - copyElement(src, tgt); - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - - public org.hl7.fhir.dstu3.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.instance.model.FamilyMemberHistory src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.FamilyMemberHistory tgt = new org.hl7.fhir.dstu3.model.FamilyMemberHistory(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); - tgt.setName(src.getName()); - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBorn(convertType(src.getBorn())); - tgt.setAge(convertType(src.getAge())); - tgt.setDeceased(convertType(src.getDeceased())); -// tgt.setNote(convertAnnotation(src.getNote())); - for (org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) - tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.dstu3.model.FamilyMemberHistory src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.FamilyMemberHistory tgt = new org.hl7.fhir.instance.model.FamilyMemberHistory(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); - tgt.setName(src.getName()); - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBorn(convertType(src.getBorn())); - tgt.setAge(convertType(src.getAge())); - tgt.setDeceased(convertType(src.getDeceased())); -// tgt.setNote(convertAnnotation(src.getNote())); - for (org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) - tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PARTIAL: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; - case COMPLETED: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; - case HEALTHUNKNOWN: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; - default: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PARTIAL: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; - case COMPLETED: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; - case HEALTHUNKNOWN: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; - default: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - tgt.setOnset(convertType(src.getOnset())); -// tgt.setNote(convertAnnotation(src.getNote())); - return tgt; - } - - public org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - tgt.setOnset(convertType(src.getOnset())); -// tgt.setNote(convertAnnotation(src.getNote())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Flag convertFlag(org.hl7.fhir.instance.model.Flag src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Flag tgt = new org.hl7.fhir.dstu3.model.Flag(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setStatus(convertFlagStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public org.hl7.fhir.instance.model.Flag convertFlag(org.hl7.fhir.dstu3.model.Flag src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Flag tgt = new org.hl7.fhir.instance.model.Flag(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setStatus(convertFlagStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.instance.model.Flag.FlagStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.dstu3.model.Flag.FlagStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.Flag.FlagStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.instance.model.Flag.FlagStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Flag.FlagStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.Flag.FlagStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Group convertGroup(org.hl7.fhir.instance.model.Group src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Group tgt = new org.hl7.fhir.dstu3.model.Group(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setType(convertGroupType(src.getType())); - tgt.setActual(src.getActual()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setName(src.getName()); - tgt.setQuantity(src.getQuantity()); - for (org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) - tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); - for (org.hl7.fhir.instance.model.Group.GroupMemberComponent t : src.getMember()) - tgt.addMember(convertGroupMemberComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Group convertGroup(org.hl7.fhir.dstu3.model.Group src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Group tgt = new org.hl7.fhir.instance.model.Group(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setType(convertGroupType(src.getType())); - tgt.setActual(src.getActual()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setName(src.getName()); - tgt.setQuantity(src.getQuantity()); - for (org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) - tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); - for (org.hl7.fhir.dstu3.model.Group.GroupMemberComponent t : src.getMember()) - tgt.addMember(convertGroupMemberComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Group.GroupType convertGroupType(org.hl7.fhir.instance.model.Group.GroupType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSON: return org.hl7.fhir.dstu3.model.Group.GroupType.PERSON; - case ANIMAL: return org.hl7.fhir.dstu3.model.Group.GroupType.ANIMAL; - case PRACTITIONER: return org.hl7.fhir.dstu3.model.Group.GroupType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.dstu3.model.Group.GroupType.DEVICE; - case MEDICATION: return org.hl7.fhir.dstu3.model.Group.GroupType.MEDICATION; - case SUBSTANCE: return org.hl7.fhir.dstu3.model.Group.GroupType.SUBSTANCE; - default: return org.hl7.fhir.dstu3.model.Group.GroupType.NULL; - } - } - - public org.hl7.fhir.instance.model.Group.GroupType convertGroupType(org.hl7.fhir.dstu3.model.Group.GroupType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSON: return org.hl7.fhir.instance.model.Group.GroupType.PERSON; - case ANIMAL: return org.hl7.fhir.instance.model.Group.GroupType.ANIMAL; - case PRACTITIONER: return org.hl7.fhir.instance.model.Group.GroupType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.instance.model.Group.GroupType.DEVICE; - case MEDICATION: return org.hl7.fhir.instance.model.Group.GroupType.MEDICATION; - case SUBSTANCE: return org.hl7.fhir.instance.model.Group.GroupType.SUBSTANCE; - default: return org.hl7.fhir.instance.model.Group.GroupType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(convertType(src.getValue())); - tgt.setExclude(src.getExclude()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(convertType(src.getValue())); - tgt.setExclude(src.getExclude()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.instance.model.Group.GroupMemberComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.dstu3.model.Group.GroupMemberComponent(); - copyElement(src, tgt); - tgt.setEntity(convertReference(src.getEntity())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setInactive(src.getInactive()); - return tgt; - } - - public org.hl7.fhir.instance.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.dstu3.model.Group.GroupMemberComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.instance.model.Group.GroupMemberComponent(); - copyElement(src, tgt); - tgt.setEntity(convertReference(src.getEntity())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setInactive(src.getInactive()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.HealthcareService convertHealthcareService(org.hl7.fhir.instance.model.HealthcareService src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.HealthcareService tgt = new org.hl7.fhir.dstu3.model.HealthcareService(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setProvidedBy(convertReference(src.getProvidedBy())); -// tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); - for (org.hl7.fhir.instance.model.HealthcareService.ServiceTypeComponent t : src.getServiceType()) { -// if (t.hasType()) -// tgt.addServiceType(convertCodeableConcept(t.getType())); - for (org.hl7.fhir.instance.model.CodeableConcept tj : t.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(tj)); - } - tgt.addLocation(convertReference(src.getLocation())); -// tgt.setServiceName(src.getServiceName()); - tgt.setComment(src.getComment()); - tgt.setExtraDetails(src.getExtraDetails()); - tgt.setPhoto(convertAttachment(src.getPhoto())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getCoverageArea()) - tgt.addCoverageArea(convertReference(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getServiceProvisionCode()) - tgt.addServiceProvisionCode(convertCodeableConcept(t)); - tgt.setEligibility(convertCodeableConcept(src.getEligibility())); - tgt.setEligibilityNote(src.getEligibilityNote()); - for (org.hl7.fhir.instance.model.StringType t : src.getProgramName()) - tgt.addProgramName(t.getValue()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCharacteristic()) - tgt.addCharacteristic(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReferralMethod()) - tgt.addReferralMethod(convertCodeableConcept(t)); -// tgt.setPublicKey(src.getPublicKey()); - tgt.setAppointmentRequired(src.getAppointmentRequired()); - for (org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) - tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); - for (org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) - tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); - tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); - return tgt; - } - - public org.hl7.fhir.instance.model.HealthcareService convertHealthcareService(org.hl7.fhir.dstu3.model.HealthcareService src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.HealthcareService tgt = new org.hl7.fhir.instance.model.HealthcareService(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setProvidedBy(convertReference(src.getProvidedBy())); -// tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); -// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) -// tgt.addServiceType().setType(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) { - if (!tgt.hasServiceType()) - tgt.addServiceType(); - tgt.getServiceType().get(0).addSpecialty(convertCodeableConcept(t)); - } - for (org.hl7.fhir.dstu3.model.Reference t : src.getLocation()) - tgt.setLocation(convertReference(t)); -// tgt.setServiceName(src.getServiceName()); - tgt.setComment(src.getComment()); - tgt.setExtraDetails(src.getExtraDetails()); - tgt.setPhoto(convertAttachment(src.getPhoto())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getCoverageArea()) - tgt.addCoverageArea(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceProvisionCode()) - tgt.addServiceProvisionCode(convertCodeableConcept(t)); - tgt.setEligibility(convertCodeableConcept(src.getEligibility())); - tgt.setEligibilityNote(src.getEligibilityNote()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getProgramName()) - tgt.addProgramName(t.getValue()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCharacteristic()) - tgt.addCharacteristic(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReferralMethod()) - tgt.addReferralMethod(convertCodeableConcept(t)); -// tgt.setPublicKey(src.getPublicKey()); - tgt.setAppointmentRequired(src.getAppointmentRequired()); - for (org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) - tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); - for (org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) - tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); - tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Enumeration t : src.getDaysOfWeek()) - tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); - tgt.setAllDay(src.getAllDay()); - tgt.setAvailableStartTime(src.getAvailableStartTime()); - tgt.setAvailableEndTime(src.getAvailableEndTime()); - return tgt; - } - - public org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getDaysOfWeek()) - tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); - tgt.setAllDay(src.getAllDay()); - tgt.setAvailableStartTime(src.getAvailableStartTime()); - tgt.setAvailableEndTime(src.getAvailableEndTime()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MON: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.MON; - case TUE: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.TUE; - case WED: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.WED; - case THU: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.THU; - case FRI: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.FRI; - case SAT: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.SAT; - case SUN: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.SUN; - default: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.NULL; - } - } - - public org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MON: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.MON; - case TUE: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.TUE; - case WED: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.WED; - case THU: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.THU; - case FRI: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.FRI; - case SAT: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.SAT; - case SUN: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.SUN; - default: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.NULL; - } - } - - public org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - tgt.setDuring(convertPeriod(src.getDuring())); - return tgt; - } - - public org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - tgt.setDuring(convertPeriod(src.getDuring())); - return tgt; - } - -// public org.hl7.fhir.dstu3.model.ImagingObjectSelection convertImagingObjectSelection(org.hl7.fhir.instance.model.ImagingObjectSelection src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.ImagingObjectSelection tgt = new org.hl7.fhir.dstu3.model.ImagingObjectSelection(); -// copyDomainResource(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setAuthoringTime(src.getAuthoringTime()); -// tgt.setAuthor(convertReference(src.getAuthor())); -// tgt.setTitle(convertCodeableConcept(src.getTitle())); -// tgt.setDescription(src.getDescription()); -// for (org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent t : src.getStudy()) -// tgt.addStudy(convertStudyComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ImagingObjectSelection convertImagingObjectSelection(org.hl7.fhir.dstu3.model.ImagingObjectSelection src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ImagingObjectSelection tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection(); -// copyDomainResource(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setAuthoringTime(src.getAuthoringTime()); -// tgt.setAuthor(convertReference(src.getAuthor())); -// tgt.setTitle(convertCodeableConcept(src.getTitle())); -// tgt.setDescription(src.getDescription()); -// for (org.hl7.fhir.dstu3.model.ImagingObjectSelection.StudyComponent t : src.getStudy()) -// tgt.addStudy(convertStudyComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.dstu3.model.ImagingObjectSelection.StudyComponent convertStudyComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.ImagingObjectSelection.StudyComponent tgt = new org.hl7.fhir.dstu3.model.ImagingObjectSelection.StudyComponent(); -// copyElement(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// tgt.setImagingStudy(convertReference(src.getImagingStudy())); -// for (org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent t : src.getSeries()) -// tgt.addSeries(convertSeriesComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent convertStudyComponent(org.hl7.fhir.dstu3.model.ImagingObjectSelection.StudyComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent(); -// copyElement(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// tgt.setImagingStudy(convertReference(src.getImagingStudy())); -// for (org.hl7.fhir.dstu3.model.ImagingObjectSelection.SeriesComponent t : src.getSeries()) -// tgt.addSeries(convertSeriesComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.dstu3.model.ImagingObjectSelection.SeriesComponent convertSeriesComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.ImagingObjectSelection.SeriesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingObjectSelection.SeriesComponent(); -// copyElement(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent t : src.getInstance()) -// tgt.addInstance(convertInstanceComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent convertSeriesComponent(org.hl7.fhir.dstu3.model.ImagingObjectSelection.SeriesComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent(); -// copyElement(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.dstu3.model.ImagingObjectSelection.InstanceComponent t : src.getInstance()) -// tgt.addInstance(convertInstanceComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.dstu3.model.ImagingObjectSelection.InstanceComponent convertInstanceComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.ImagingObjectSelection.InstanceComponent tgt = new org.hl7.fhir.dstu3.model.ImagingObjectSelection.InstanceComponent(); -// copyElement(src, tgt); -// tgt.setSopClass(src.getSopClass()); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent t : src.getFrames()) -// tgt.addFrame(convertFramesComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent convertInstanceComponent(org.hl7.fhir.dstu3.model.ImagingObjectSelection.InstanceComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent(); -// copyElement(src, tgt); -// tgt.setSopClass(src.getSopClass()); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.dstu3.model.ImagingObjectSelection.FramesComponent t : src.getFrame()) -// tgt.addFrames(convertFramesComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.dstu3.model.ImagingObjectSelection.FramesComponent convertFramesComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.ImagingObjectSelection.FramesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingObjectSelection.FramesComponent(); -// copyElement(src, tgt); -// for (org.hl7.fhir.instance.model.UnsignedIntType t : src.getFrameNumbers()) -// tgt.addNumber(t.getValue()); -// tgt.setUrl(src.getUrl()); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent convertFramesComponent(org.hl7.fhir.dstu3.model.ImagingObjectSelection.FramesComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent(); -// copyElement(src, tgt); -// for (org.hl7.fhir.dstu3.model.UnsignedIntType t : src.getNumber()) -// tgt.addFrameNumbers(t.getValue()); -// tgt.setUrl(src.getUrl()); -// return tgt; -// } -// - public org.hl7.fhir.dstu3.model.ImagingStudy convertImagingStudy(org.hl7.fhir.instance.model.ImagingStudy src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImagingStudy tgt = new org.hl7.fhir.dstu3.model.ImagingStudy(); - copyDomainResource(src, tgt); - tgt.setUid(src.getUid()); - tgt.setAccession(convertIdentifier(src.getAccession())); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - for (org.hl7.fhir.instance.model.Coding t : src.getModalityList()) - tgt.addModalityList(convertCoding(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setStarted(src.getStarted()); - tgt.setReferrer(convertReference(src.getReferrer())); - tgt.addInterpreter(convertReference(src.getInterpreter())); - tgt.setNumberOfSeries(src.getNumberOfSeries()); - tgt.setNumberOfInstances(src.getNumberOfInstances()); - for (org.hl7.fhir.instance.model.Reference t : src.getProcedure()) - tgt.addProcedureReference(convertReference(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) - tgt.addSeries(convertImagingStudySeriesComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImagingStudy convertImagingStudy(org.hl7.fhir.dstu3.model.ImagingStudy src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImagingStudy tgt = new org.hl7.fhir.instance.model.ImagingStudy(); - copyDomainResource(src, tgt); - tgt.setUid(src.getUid()); - tgt.setAccession(convertIdentifier(src.getAccession())); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - for (org.hl7.fhir.dstu3.model.Coding t : src.getModalityList()) - tgt.addModalityList(convertCoding(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setStarted(src.getStarted()); - tgt.setReferrer(convertReference(src.getReferrer())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getInterpreter()) - tgt.setInterpreter(convertReference(t)); - tgt.setNumberOfSeries(src.getNumberOfSeries()); - tgt.setNumberOfInstances(src.getNumberOfInstances()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProcedureReference()) - tgt.addProcedure(convertReference(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) - tgt.addSeries(convertImagingStudySeriesComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ONLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.ONLINE; - case OFFLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.OFFLINE; - case NEARLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.NEARLINE; - case UNAVAILABLE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; - default: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.NULL; - } - } - - public org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ONLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.ONLINE; - case OFFLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.OFFLINE; - case NEARLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.NEARLINE; - case UNAVAILABLE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; - default: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent(); - copyElement(src, tgt); - tgt.setUid(src.getUid()); - tgt.setNumber(src.getNumber()); - tgt.setModality(convertCoding(src.getModality())); - tgt.setDescription(src.getDescription()); - tgt.setNumberOfInstances(src.getNumberOfInstances()); - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - tgt.setBodySite(convertCoding(src.getBodySite())); - tgt.setLaterality(convertCoding(src.getLaterality())); - tgt.setStarted(src.getStarted()); - for (org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) - tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent(); - copyElement(src, tgt); - tgt.setUid(src.getUid()); - tgt.setNumber(src.getNumber()); - tgt.setModality(convertCoding(src.getModality())); - tgt.setDescription(src.getDescription()); - tgt.setNumberOfInstances(src.getNumberOfInstances()); - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - tgt.setBodySite(convertCoding(src.getBodySite())); - tgt.setLaterality(convertCoding(src.getLaterality())); - tgt.setStarted(src.getStarted()); - for (org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) - tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); - copyElement(src, tgt); - tgt.setUid(src.getUid()); - tgt.setNumber(src.getNumber()); - tgt.setSopClass(src.getSopClass()); - tgt.setTitle(src.getTitle()); - return tgt; - } - - public org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); - copyElement(src, tgt); - tgt.setUid(src.getUid()); - tgt.setNumber(src.getNumber()); - tgt.setSopClass(src.getSopClass()); - tgt.setTitle(src.getTitle()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Immunization convertImmunization(org.hl7.fhir.instance.model.Immunization src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Immunization tgt = new org.hl7.fhir.dstu3.model.Immunization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - try { - tgt.setStatus(org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus.fromCode(src.getStatus())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setNotGiven(src.getWasNotGiven()); - tgt.setPrimarySource(!src.getReported()); - if (src.hasPerformer()) - tgt.addPractitioner().setActor(convertReference(src.getPerformer())).setRole(new org.hl7.fhir.dstu3.model.CodeableConcept().addCoding(new Coding().setSystem("http://hl7.org/fhir/v2/0443").setCode("AP"))); - if (src.hasRequester()) - tgt.addPractitioner().setActor(convertReference(src.getRequester())).setRole(new org.hl7.fhir.dstu3.model.CodeableConcept().addCoding(new Coding().setSystem("http://hl7.org/fhir/v2/0443").setCode("OP"))); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setManufacturer(convertReference(src.getManufacturer())); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setLotNumber(src.getLotNumber()); - tgt.setExpirationDate(src.getExpirationDate()); - tgt.setSite(convertCodeableConcept(src.getSite())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); - for (org.hl7.fhir.instance.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); - for (org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) - tgt.addReaction(convertImmunizationReactionComponent(t)); - for (org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) - tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Immunization convertImmunization(org.hl7.fhir.dstu3.model.Immunization src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Immunization tgt = new org.hl7.fhir.instance.model.Immunization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(src.getStatus().toCode()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setWasNotGiven(src.getNotGiven()); - tgt.setReported(!src.getPrimarySource()); - tgt.setPerformer(convertReference(getPerformer(src.getPractitioner()))); - tgt.setRequester(convertReference(getRequester(src.getPractitioner()))); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setManufacturer(convertReference(src.getManufacturer())); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setLotNumber(src.getLotNumber()); - tgt.setExpirationDate(src.getExpirationDate()); - tgt.setSite(convertCodeableConcept(src.getSite())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); - for (org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) - tgt.addReaction(convertImmunizationReactionComponent(t)); - for (org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) - tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); - return tgt; - } - - private org.hl7.fhir.dstu3.model.Reference getPerformer(List practitioner) { - for (ImmunizationPractitionerComponent p : practitioner) { - if (hasConcept(p.getRole(), "http://hl7.org/fhir/v2/0443", "AP")) - return p.getActor(); - } - return null; - } - - private org.hl7.fhir.dstu3.model.Reference getRequester(List practitioner) { - for (ImmunizationPractitionerComponent p : practitioner) { - if (hasConcept(p.getRole(), "http://hl7.org/fhir/v2/0443", "OP")) - return p.getActor(); - } - return null; - } - - private boolean hasConcept(org.hl7.fhir.dstu3.model.CodeableConcept cc, String system, String code) { - for (org.hl7.fhir.dstu3.model.Coding c : cc.getCoding()) { - if (system.equals(c.getSystem()) && code.equals(c.getCode())) - return true; - } - return false; - } - - private boolean hasConcept(org.hl7.fhir.instance.model.CodeableConcept cc, String system, String code) { - for (org.hl7.fhir.instance.model.Coding c : cc.getCoding()) { - if (system.equals(c.getSystem()) && code.equals(c.getCode())) - return true; - } - return false; - } - - public org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotGiven()) - tgt.addReasonNotGiven(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotGiven()) - tgt.addReasonNotGiven(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDetail(convertReference(src.getDetail())); - tgt.setReported(src.getReported()); - return tgt; - } - - public org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDetail(convertReference(src.getDetail())); - tgt.setReported(src.getReported()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent(); - copyElement(src, tgt); - tgt.setDoseSequence(src.getDoseSequence()); - tgt.setDescription(src.getDescription()); - tgt.setAuthority(convertReference(src.getAuthority())); - tgt.setSeries(src.getSeries()); - tgt.setSeriesDoses(src.getSeriesDoses()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getTargetDisease()) - tgt.addTargetDisease(convertCodeableConcept(t)); - tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); - tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); - return tgt; - } - - public org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent(); - copyElement(src, tgt); - tgt.setDoseSequence(src.getDoseSequence()); - tgt.setDescription(src.getDescription()); - tgt.setAuthority(convertReference(src.getAuthority())); - tgt.setSeries(src.getSeries()); - tgt.setSeriesDoses(src.getSeriesDoses()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTargetDisease()) - tgt.addTargetDisease(convertCodeableConcept(t)); - tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); - tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.instance.model.ImmunizationRecommendation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImmunizationRecommendation tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - for (org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) - tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.dstu3.model.ImmunizationRecommendation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImmunizationRecommendation tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - for (org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) - tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - tgt.setDoseNumber(src.getDoseNumber()); - tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); - for (org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) - tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); - tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); - for (org.hl7.fhir.instance.model.Reference t : src.getSupportingImmunization()) - tgt.addSupportingImmunization(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getSupportingPatientInformation()) - tgt.addSupportingPatientInformation(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - tgt.setDoseNumber(src.getDoseNumber()); - tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); - for (org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) - tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); - tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingImmunization()) - tgt.addSupportingImmunization(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingPatientInformation()) - tgt.addSupportingPatientInformation(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); - copyElement(src, tgt); - tgt.setDoseSequence(src.getDoseSequence()); - tgt.setDescription(src.getDescription()); - tgt.setAuthority(convertReference(src.getAuthority())); - tgt.setSeries(src.getSeries()); - return tgt; - } - - public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); - copyElement(src, tgt); - tgt.setDoseSequence(src.getDoseSequence()); - tgt.setDescription(src.getDescription()); - tgt.setAuthority(convertReference(src.getAuthority())); - tgt.setSeries(src.getSeries()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.instance.model.ImplementationGuide src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent t : src.getContact()) - tgt.addContact(convertImplementationGuideContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setCopyright(src.getCopyright()); - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) - tgt.addDependency(convertImplementationGuideDependencyComponent(t)); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) - tgt.addPackage(convertImplementationGuidePackageComponent(t)); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) - tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); - for (org.hl7.fhir.instance.model.UriType t : src.getBinary()) - tgt.addBinary(t.getValue()); - tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.dstu3.model.ImplementationGuide src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide tgt = new org.hl7.fhir.instance.model.ImplementationGuide(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertImplementationGuideContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setCopyright(src.getCopyright()); - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) - tgt.addDependency(convertImplementationGuideDependencyComponent(t)); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) - tgt.addPackage(convertImplementationGuidePackageComponent(t)); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) - tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); - for (org.hl7.fhir.dstu3.model.UriType t : src.getBinary()) - tgt.addBinary(t.getValue()); - tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ContactDetail convertImplementationGuideContactComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent convertImplementationGuideContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent(); - copyElement(src, tgt); - tgt.setType(convertGuideDependencyType(src.getType())); - tgt.setUri(src.getUri()); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent(); - copyElement(src, tgt); - tgt.setType(convertGuideDependencyType(src.getType())); - tgt.setUri(src.getUri()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REFERENCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.REFERENCE; - case INCLUSION: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.INCLUSION; - default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.NULL; - } - } - - public org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REFERENCE: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.REFERENCE; - case INCLUSION: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.INCLUSION; - default: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) - tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) - tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); - copyElement(src, tgt); - tgt.setExample(src.getPurpose() == org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.EXAMPLE); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setAcronym(src.getAcronym()); - tgt.setSource(convertType(src.getSource())); - tgt.setExampleFor(convertReference(src.getExampleFor())); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); - copyElement(src, tgt); - if (src.getExample()) - tgt.setPurpose(org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.EXAMPLE); - else - tgt.setPurpose(org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.PROFILE); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setAcronym(src.getAcronym()); - tgt.setSource(convertType(src.getSource())); - tgt.setExampleFor(convertReference(src.getExampleFor())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent(); - copyElement(src, tgt); - tgt.setSource(src.getSource()); - tgt.setTitle(src.getName()); - tgt.setKind(convertGuidePageKind(src.getKind())); - for (org.hl7.fhir.instance.model.CodeType t : src.getType()) - tgt.addType(t.getValue()); - for (org.hl7.fhir.instance.model.StringType t : src.getPackage()) - tgt.addPackage(t.getValue()); - tgt.setFormat(src.getFormat()); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) - tgt.addPage(convertImplementationGuidePageComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent(); - copyElement(src, tgt); - tgt.setSource(src.getSource()); - tgt.setName(src.getTitle()); - tgt.setKind(convertGuidePageKind(src.getKind())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getType()) - tgt.addType(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getPackage()) - tgt.addPackage(t.getValue()); - tgt.setFormat(src.getFormat()); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) - tgt.addPage(convertImplementationGuidePageComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PAGE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.PAGE; - case EXAMPLE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.EXAMPLE; - case LIST: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.LIST; - case INCLUDE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.INCLUDE; - case DIRECTORY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DIRECTORY; - case DICTIONARY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DICTIONARY; - case TOC: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.TOC; - case RESOURCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.RESOURCE; - default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.NULL; - } - } - - public org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PAGE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.PAGE; - case EXAMPLE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.EXAMPLE; - case LIST: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.LIST; - case INCLUDE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.INCLUDE; - case DIRECTORY: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.DIRECTORY; - case DICTIONARY: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.DICTIONARY; - case TOC: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.TOC; - case RESOURCE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.RESOURCE; - default: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.NULL; - } - } - - - public org.hl7.fhir.dstu3.model.Location convertLocation(org.hl7.fhir.instance.model.Location src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Location tgt = new org.hl7.fhir.dstu3.model.Location(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertLocationStatus(src.getStatus())); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setMode(convertLocationMode(src.getMode())); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); - tgt.setPosition(convertLocationPositionComponent(src.getPosition())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setPartOf(convertReference(src.getPartOf())); - return tgt; - } - - public org.hl7.fhir.instance.model.Location convertLocation(org.hl7.fhir.dstu3.model.Location src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Location tgt = new org.hl7.fhir.instance.model.Location(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertLocationStatus(src.getStatus())); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setMode(convertLocationMode(src.getMode())); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); - tgt.setPosition(convertLocationPositionComponent(src.getPosition())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setPartOf(convertReference(src.getPartOf())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.instance.model.Location.LocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Location.LocationStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.Location.LocationStatus.SUSPENDED; - case INACTIVE: return org.hl7.fhir.dstu3.model.Location.LocationStatus.INACTIVE; - default: return org.hl7.fhir.dstu3.model.Location.LocationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.dstu3.model.Location.LocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.Location.LocationStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.instance.model.Location.LocationStatus.SUSPENDED; - case INACTIVE: return org.hl7.fhir.instance.model.Location.LocationStatus.INACTIVE; - default: return org.hl7.fhir.instance.model.Location.LocationStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Location.LocationMode convertLocationMode(org.hl7.fhir.instance.model.Location.LocationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.dstu3.model.Location.LocationMode.INSTANCE; - case KIND: return org.hl7.fhir.dstu3.model.Location.LocationMode.KIND; - default: return org.hl7.fhir.dstu3.model.Location.LocationMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Location.LocationMode convertLocationMode(org.hl7.fhir.dstu3.model.Location.LocationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.instance.model.Location.LocationMode.INSTANCE; - case KIND: return org.hl7.fhir.instance.model.Location.LocationMode.KIND; - default: return org.hl7.fhir.instance.model.Location.LocationMode.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.instance.model.Location.LocationPositionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.dstu3.model.Location.LocationPositionComponent(); - copyElement(src, tgt); - tgt.setLongitude(src.getLongitude()); - tgt.setLatitude(src.getLatitude()); - tgt.setAltitude(src.getAltitude()); - return tgt; - } - - public org.hl7.fhir.instance.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.dstu3.model.Location.LocationPositionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.instance.model.Location.LocationPositionComponent(); - copyElement(src, tgt); - tgt.setLongitude(src.getLongitude()); - tgt.setLatitude(src.getLatitude()); - tgt.setAltitude(src.getAltitude()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Media convertMedia(org.hl7.fhir.instance.model.Media src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Media tgt = new org.hl7.fhir.dstu3.model.Media(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setType(convertDigitalMediaType(src.getType())); - tgt.setSubtype(convertCodeableConcept(src.getSubtype())); - tgt.setView(convertCodeableConcept(src.getView())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setOperator(convertReference(src.getOperator())); - tgt.getDevice().setDisplay(src.getDeviceName()); - tgt.setHeight(src.getHeight()); - tgt.setWidth(src.getWidth()); - tgt.setFrames(src.getFrames()); - tgt.setDuration(src.getDuration()); - tgt.setContent(convertAttachment(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Media convertMedia(org.hl7.fhir.dstu3.model.Media src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Media tgt = new org.hl7.fhir.instance.model.Media(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setType(convertDigitalMediaType(src.getType())); - tgt.setSubtype(convertCodeableConcept(src.getSubtype())); - tgt.setView(convertCodeableConcept(src.getView())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setOperator(convertReference(src.getOperator())); - tgt.setDeviceName(src.getDevice().getDisplay()); - tgt.setHeight(src.getHeight()); - tgt.setWidth(src.getWidth()); - tgt.setFrames(src.getFrames()); - tgt.setDuration(src.getDuration()); - tgt.setContent(convertAttachment(src.getContent())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.instance.model.Media.DigitalMediaType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHOTO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.PHOTO; - case VIDEO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.VIDEO; - case AUDIO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.AUDIO; - default: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.NULL; - } - } - - public org.hl7.fhir.instance.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.dstu3.model.Media.DigitalMediaType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHOTO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.PHOTO; - case VIDEO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.VIDEO; - case AUDIO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.AUDIO; - default: return org.hl7.fhir.instance.model.Media.DigitalMediaType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Medication convertMedication(org.hl7.fhir.instance.model.Medication src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Medication tgt = new org.hl7.fhir.dstu3.model.Medication(); - copyDomainResource(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setIsBrand(src.getIsBrand()); - tgt.setManufacturer(convertReference(src.getManufacturer())); -// tgt.setProduct(convertMedicationProductComponent(src.getProduct())); - tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); - return tgt; - } - - public org.hl7.fhir.instance.model.Medication convertMedication(org.hl7.fhir.dstu3.model.Medication src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Medication tgt = new org.hl7.fhir.instance.model.Medication(); - copyDomainResource(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setIsBrand(src.getIsBrand()); - tgt.setManufacturer(convertReference(src.getManufacturer())); -// tgt.setProduct(convertMedicationProductComponent(src.getProduct())); - tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); - return tgt; - } - -// public org.hl7.fhir.dstu3.model.Medication.MedicationProductComponent convertMedicationProductComponent(org.hl7.fhir.instance.model.Medication.MedicationProductComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.Medication.MedicationProductComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationProductComponent(); -// copyElement(src, tgt); -// tgt.setForm(convertCodeableConcept(src.getForm())); -// for (org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent t : src.getIngredient()) -// tgt.addIngredient(convertMedicationProductIngredientComponent(t)); -// for (org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent t : src.getBatch()) -// tgt.addBatch(convertMedicationProductBatchComponent(t)); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.Medication.MedicationProductComponent convertMedicationProductComponent(org.hl7.fhir.dstu3.model.Medication.MedicationProductComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.Medication.MedicationProductComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductComponent(); -// copyElement(src, tgt); -// tgt.setForm(convertCodeableConcept(src.getForm())); -// for (org.hl7.fhir.dstu3.model.Medication.MedicationProductIngredientComponent t : src.getIngredient()) -// tgt.addIngredient(convertMedicationProductIngredientComponent(t)); -// for (org.hl7.fhir.dstu3.model.Medication.MedicationProductBatchComponent t : src.getBatch()) -// tgt.addBatch(convertMedicationProductBatchComponent(t)); -// return tgt; -// } - -// public org.hl7.fhir.dstu3.model.Medication.MedicationProductIngredientComponent convertMedicationProductIngredientComponent(org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.Medication.MedicationProductIngredientComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationProductIngredientComponent(); -// copyElement(src, tgt); -// tgt.setItem(convertType(src.getItem())); -// tgt.setAmount(convertRatio(src.getAmount())); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent convertMedicationProductIngredientComponent(org.hl7.fhir.dstu3.model.Medication.MedicationProductIngredientComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent(); -// copyElement(src, tgt); -// if (src.hasItemReference()) -// tgt.setItem((org.hl7.fhir.instance.model.Reference) convertType(src.getItem())); -// tgt.setAmount(convertRatio(src.getAmount())); -// return tgt; -// } - -// public org.hl7.fhir.dstu3.model.Medication.MedicationProductBatchComponent convertMedicationProductBatchComponent(org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.Medication.MedicationProductBatchComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationProductBatchComponent(); -// copyElement(src, tgt); -// tgt.setLotNumber(src.getLotNumber()); -// tgt.setExpirationDate(src.getExpirationDate()); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent convertMedicationProductBatchComponent(org.hl7.fhir.dstu3.model.Medication.MedicationProductBatchComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent(); -// copyElement(src, tgt); -// tgt.setLotNumber(src.getLotNumber()); -// tgt.setExpirationDate(src.getExpirationDate()); -// return tgt; -// } - - public org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.instance.model.Medication.MedicationPackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent(); - copyElement(src, tgt); - tgt.setContainer(convertCodeableConcept(src.getContainer())); - for (org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent t : src.getContent()) - tgt.addContent(convertMedicationPackageContentComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationPackageComponent(); - copyElement(src, tgt); - tgt.setContainer(convertCodeableConcept(src.getContainer())); - for (org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent t : src.getContent()) - tgt.addContent(convertMedicationPackageContentComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent(); - copyElement(src, tgt); - tgt.setItem(convertType(src.getItem())); - tgt.setAmount(convertSimpleQuantity(src.getAmount())); - return tgt; - } - - public org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent(); - copyElement(src, tgt); - if (src.hasItemReference()) - tgt.setItem((org.hl7.fhir.instance.model.Reference) convertType(src.getItem())); - tgt.setAmount(convertSimpleQuantity(src.getAmount())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.instance.model.MedicationDispense src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.MedicationDispense tgt = new org.hl7.fhir.dstu3.model.MedicationDispense(); - copyDomainResource(src, tgt); - tgt.addIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); - tgt.setMedication(convertType(src.getMedication())); - tgt.setSubject(convertReference(src.getPatient())); -// tgt.setDispenser(convertReference(src.getDispenser())); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthorizingPrescription()) - tgt.addAuthorizingPrescription(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); - tgt.setWhenPrepared(src.getWhenPrepared()); - tgt.setWhenHandedOver(src.getWhenHandedOver()); - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.instance.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - if (src.hasNote()) - tgt.addNote().setText(src.getNote()); - for (org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent t : src.getDosageInstruction()) - tgt.addDosageInstruction(convertMedicationDispenseDosageInstructionComponent(t)); - tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.dstu3.model.MedicationDispense src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationDispense tgt = new org.hl7.fhir.instance.model.MedicationDispense(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifierFirstRep())); - tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); - tgt.setMedication(convertType(src.getMedication())); - tgt.setPatient(convertReference(src.getSubject())); -// tgt.setDispenser(convertReference(src.getDispenser())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthorizingPrescription()) - tgt.addAuthorizingPrescription(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); - tgt.setWhenPrepared(src.getWhenPrepared()); - tgt.setWhenHandedOver(src.getWhenHandedOver()); - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.setNote(t.getText()); - for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosageInstruction()) - tgt.addDosageInstruction(convertMedicationDispenseDosageInstructionComponent(t)); - tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.STOPPED; - default: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.STOPPED; - default: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Dosage convertMedicationDispenseDosageInstructionComponent(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Dosage tgt = new org.hl7.fhir.dstu3.model.Dosage(); - copyElement(src, tgt); - tgt.setText(src.getText()); -// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - if (src.hasSiteCodeableConcept()) - tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setDose(convertType(src.getDose())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent convertMedicationDispenseDosageInstructionComponent(Dosage src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent tgt = new org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent(); - copyElement(src, tgt); - tgt.setText(src.getText()); -// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - tgt.setSite(convertType(src.getSite())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setDose(convertType(src.getDose())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); - copyElement(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getResponsibleParty()) - tgt.addResponsibleParty(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); - copyElement(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getResponsibleParty()) - tgt.addResponsibleParty(convertReference(t)); - return tgt; - } - -// public org.hl7.fhir.dstu3.model.MedicationOrder convertMedicationOrder(org.hl7.fhir.instance.model.MedicationOrder src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.MedicationOrder tgt = new org.hl7.fhir.dstu3.model.MedicationOrder(); -// copyDomainResource(src, tgt); -// for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) -// tgt.addIdentifier(convertIdentifier(t)); -// tgt.setStatus(convertMedicationOrderStatus(src.getStatus())); -// tgt.setMedication(convertType(src.getMedication())); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setEncounter(convertReference(src.getEncounter())); -// if (src.hasDateWritten()) -// tgt.setDateWritten(src.getDateWritten()); -// tgt.setPrescriber(convertReference(src.getPrescriber())); -// if (src.hasReasonCodeableConcept()) -// tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); -// if (src.hasReasonReference()) -// tgt.addReasonReference(convertReference(src.getReasonReference())); -//// tgt.setDateEnded(src.getDateEnded()); -//// tgt.setReasonEnded(convertCodeableConcept(src.getReasonEnded())); -// if (src.hasNote()) -// tgt.addNote().setText(src.getNote()); -// for (org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent t : src.getDosageInstruction()) -// tgt.addDosageInstruction(convertMedicationOrderDosageInstructionComponent(t)); -// tgt.setDispenseRequest(convertMedicationOrderDispenseRequestComponent(src.getDispenseRequest())); -// tgt.setSubstitution(convertMedicationOrderSubstitutionComponent(src.getSubstitution())); -// tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.MedicationOrder convertMedicationOrder(org.hl7.fhir.dstu3.model.MedicationOrder src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.MedicationOrder tgt = new org.hl7.fhir.instance.model.MedicationOrder(); -// copyDomainResource(src, tgt); -// for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) -// tgt.addIdentifier(convertIdentifier(t)); -// tgt.setStatus(convertMedicationOrderStatus(src.getStatus())); -// tgt.setMedication(convertType(src.getMedication())); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setEncounter(convertReference(src.getEncounter())); -// if (src.hasDateWritten()) -// tgt.setDateWritten(src.getDateWritten()); -// tgt.setPrescriber(convertReference(src.getPrescriber())); -// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) -// tgt.setReason(convertCodeableConcept(t)); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) -// tgt.setReason(convertReference(t)); -//// tgt.setDateEnded(src.getDateEnded()); -//// tgt.setReasonEnded(convertCodeableConcept(src.getReasonEnded())); -// for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) -// tgt.setNote(t.getText()); -// for (org.hl7.fhir.dstu3.model.DosageInstruction t : src.getDosageInstruction()) -// tgt.addDosageInstruction(convertMedicationOrderDosageInstructionComponent(t)); -// tgt.setDispenseRequest(convertMedicationOrderDispenseRequestComponent(src.getDispenseRequest())); -// tgt.setSubstitution(convertMedicationOrderSubstitutionComponent(src.getSubstitution())); -// tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); -// return tgt; -// } -// -// public org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus convertMedicationOrderStatus(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case ACTIVE: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.ACTIVE; -// case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.ONHOLD; -// case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.COMPLETED; -// case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.ENTEREDINERROR; -// case STOPPED: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.STOPPED; -// case DRAFT: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.DRAFT; -// default: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.NULL; -// } -// } -// -// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus convertMedicationOrderStatus(org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case ACTIVE: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ACTIVE; -// case ONHOLD: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ONHOLD; -// case COMPLETED: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.COMPLETED; -// case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ENTEREDINERROR; -// case STOPPED: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.STOPPED; -// case DRAFT: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.DRAFT; -// default: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.NULL; -// } -// } - - public org.hl7.fhir.dstu3.model.Dosage convertMedicationOrderDosageInstructionComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Dosage tgt = new org.hl7.fhir.dstu3.model.Dosage(); - copyElement(src, tgt); - tgt.setText(src.getText()); -// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - if (src.hasSiteCodeableConcept()) - tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setDose(convertType(src.getDose())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent convertMedicationOrderDosageInstructionComponent(org.hl7.fhir.dstu3.model.Dosage src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent(); - copyElement(src, tgt); - tgt.setText(src.getText()); -// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - tgt.setSite(convertType(src.getSite())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setDose(convertType(src.getDose())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - -// public org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderDispenseRequestComponent convertMedicationOrderDispenseRequestComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderDispenseRequestComponent tgt = new org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderDispenseRequestComponent(); -// copyElement(src, tgt); -//// tgt.setMedication(convertType(src.getMedication())); -// tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); -// tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); -// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); -// tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent convertMedicationOrderDispenseRequestComponent(org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderDispenseRequestComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent(); -// copyElement(src, tgt); -//// tgt.setMedication(convertType(src.getMedication())); -// tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); -// tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); -// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); -// tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); -// return tgt; -// } -// -// public org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderSubstitutionComponent convertMedicationOrderSubstitutionComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderSubstitutionComponent tgt = new org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderSubstitutionComponent(); -// copyElement(src, tgt); -//// tgt.setType(convertCodeableConcept(src.getType())); -// tgt.setReason(convertCodeableConcept(src.getReason())); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent convertMedicationOrderSubstitutionComponent(org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderSubstitutionComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent(); -// copyElement(src, tgt); -//// tgt.setType(convertCodeableConcept(src.getType())); -// tgt.setReason(convertCodeableConcept(src.getReason())); -// return tgt; -// } - - public org.hl7.fhir.dstu3.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.instance.model.MedicationStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.MedicationStatement tgt = new org.hl7.fhir.dstu3.model.MedicationStatement(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); - tgt.setMedication(convertType(src.getMedication())); - tgt.setSubject(convertReference(src.getPatient())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setInformationSource(convertReference(src.getInformationSource())); - for (org.hl7.fhir.instance.model.Reference t : src.getSupportingInformation()) - tgt.addDerivedFrom(convertReference(t)); - if (src.hasDateAsserted()) - tgt.setDateAsserted(src.getDateAsserted()); -// tgt.getNotTakenElement().setValueAsString(src.getWasNotTaken() ? "Y" : "N"); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotTaken()) - tgt.addReasonNotTaken(convertCodeableConcept(t)); -// tgt.setReasonForUse(convertType(src.getReasonForUse())); - if (src.hasNote()) - tgt.addNote().setText(src.getNote()); - for (org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent t : src.getDosage()) - tgt.addDosage(convertMedicationStatementDosageComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.dstu3.model.MedicationStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationStatement tgt = new org.hl7.fhir.instance.model.MedicationStatement(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); - tgt.setMedication(convertType(src.getMedication())); - tgt.setPatient(convertReference(src.getSubject())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setInformationSource(convertReference(src.getInformationSource())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDerivedFrom()) - tgt.addSupportingInformation(convertReference(t)); - if (src.hasDateAsserted()) - tgt.setDateAsserted(src.getDateAsserted()); -// tgt.setWasNotTaken("Y".equals(src.getNotTakenElement().getValueAsString())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotTaken()) - tgt.addReasonNotTaken(convertCodeableConcept(t)); -// tgt.setReasonForUse(convertType(src.getReasonForUse())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.setNote(t.getText()); - for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosage()) - tgt.addDosage(convertMedicationStatementDosageComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; - case INTENDED: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.INTENDED; - default: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; - case INTENDED: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.INTENDED; - default: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Dosage convertMedicationStatementDosageComponent(org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Dosage tgt = new org.hl7.fhir.dstu3.model.Dosage(); - copyElement(src, tgt); - tgt.setText(src.getText()); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - if (src.hasSiteCodeableConcept()) - tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); -// tgt.setQuantity(convertType(src.getQuantity())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent convertMedicationStatementDosageComponent(org.hl7.fhir.dstu3.model.Dosage src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent tgt = new org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent(); - copyElement(src, tgt); - tgt.setText(src.getText()); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - tgt.setSite(convertType(src.getSite())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); -// tgt.setQuantity(convertType(src.getQuantity())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.MessageHeader convertMessageHeader(org.hl7.fhir.instance.model.MessageHeader src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.MessageHeader tgt = new org.hl7.fhir.dstu3.model.MessageHeader(); - copyDomainResource(src, tgt); - tgt.setTimestamp(src.getTimestamp()); - tgt.setEvent(convertCoding(src.getEvent())); - tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); - tgt.setSource(convertMessageSourceComponent(src.getSource())); - for (org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) - tgt.addDestination(convertMessageDestinationComponent(t)); - tgt.setEnterer(convertReference(src.getEnterer())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setReceiver(convertReference(src.getReceiver())); - tgt.setResponsible(convertReference(src.getResponsible())); - tgt.setReason(convertCodeableConcept(src.getReason())); - for (org.hl7.fhir.instance.model.Reference t : src.getData()) - tgt.addFocus(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.MessageHeader convertMessageHeader(org.hl7.fhir.dstu3.model.MessageHeader src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MessageHeader tgt = new org.hl7.fhir.instance.model.MessageHeader(); - copyDomainResource(src, tgt); - tgt.setTimestamp(src.getTimestamp()); - tgt.setEvent(convertCoding(src.getEvent())); - tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); - tgt.setSource(convertMessageSourceComponent(src.getSource())); - for (org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) - tgt.addDestination(convertMessageDestinationComponent(t)); - tgt.setEnterer(convertReference(src.getEnterer())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setReceiver(convertReference(src.getReceiver())); - tgt.setResponsible(convertReference(src.getResponsible())); - tgt.setReason(convertCodeableConcept(src.getReason())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getFocus()) - tgt.addData(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setCode(convertResponseType(src.getCode())); - tgt.setDetails(convertReference(src.getDetails())); - return tgt; - } - - public org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setCode(convertResponseType(src.getCode())); - tgt.setDetails(convertReference(src.getDetails())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.instance.model.MessageHeader.ResponseType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OK: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.OK; - case TRANSIENTERROR: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.TRANSIENTERROR; - case FATALERROR: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.FATALERROR; - default: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.NULL; - } - } - - public org.hl7.fhir.instance.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.dstu3.model.MessageHeader.ResponseType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OK: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.OK; - case TRANSIENTERROR: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.TRANSIENTERROR; - case FATALERROR: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.FATALERROR; - default: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setSoftware(src.getSoftware()); - tgt.setVersion(src.getVersion()); - tgt.setContact(convertContactPoint(src.getContact())); - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setSoftware(src.getSoftware()); - tgt.setVersion(src.getVersion()); - tgt.setContact(convertContactPoint(src.getContact())); - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setTarget(convertReference(src.getTarget())); - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setTarget(convertReference(src.getTarget())); - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.NamingSystem convertNamingSystem(org.hl7.fhir.instance.model.NamingSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.NamingSystem tgt = new org.hl7.fhir.dstu3.model.NamingSystem(); - copyDomainResource(src, tgt); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertNamingSystemType(src.getKind())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent t : src.getContact()) - tgt.addContact(convertNamingSystemContactComponent(t)); - tgt.setResponsible(src.getResponsible()); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setUsage(src.getUsage()); - for (org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) - tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); - tgt.setReplacedBy(convertReference(src.getReplacedBy())); - return tgt; - } - - public org.hl7.fhir.instance.model.NamingSystem convertNamingSystem(org.hl7.fhir.dstu3.model.NamingSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.NamingSystem tgt = new org.hl7.fhir.instance.model.NamingSystem(); - copyDomainResource(src, tgt); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertNamingSystemType(src.getKind())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertNamingSystemContactComponent(t)); - tgt.setResponsible(src.getResponsible()); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setUsage(src.getUsage()); - for (org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) - tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); - tgt.setReplacedBy(convertReference(src.getReplacedBy())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.instance.model.NamingSystem.NamingSystemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODESYSTEM: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.CODESYSTEM; - case IDENTIFIER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.IDENTIFIER; - case ROOT: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.ROOT; - default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.NULL; - } - } - - public org.hl7.fhir.instance.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODESYSTEM: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.CODESYSTEM; - case IDENTIFIER: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.IDENTIFIER; - case ROOT: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.ROOT; - default: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ContactDetail convertNamingSystemContactComponent(org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent convertNamingSystemContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent tgt = new org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent(); - copyElement(src, tgt); - tgt.setType(convertNamingSystemIdentifierType(src.getType())); - tgt.setValue(src.getValue()); - tgt.setPreferred(src.getPreferred()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent(); - copyElement(src, tgt); - tgt.setType(convertNamingSystemIdentifierType(src.getType())); - tgt.setValue(src.getValue()); - tgt.setPreferred(src.getPreferred()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OID; - case UUID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.UUID; - case URI: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.URI; - case OTHER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OTHER; - default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.NULL; - } - } - - public org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OID: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.OID; - case UUID: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.UUID; - case URI: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.URI; - case OTHER: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.OTHER; - default: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Observation convertObservation(org.hl7.fhir.instance.model.Observation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Observation tgt = new org.hl7.fhir.dstu3.model.Observation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertObservationStatus(src.getStatus())); - tgt.addCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setIssued(src.getIssued()); - for (org.hl7.fhir.instance.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - tgt.setValue(convertType(src.getValue())); - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); - tgt.setComment(src.getComments()); - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setSpecimen(convertReference(src.getSpecimen())); - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - for (org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent t : src.getRelated()) - tgt.addRelated(convertObservationRelatedComponent(t)); - for (org.hl7.fhir.instance.model.Observation.ObservationComponentComponent t : src.getComponent()) - tgt.addComponent(convertObservationComponentComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Observation convertObservation(org.hl7.fhir.dstu3.model.Observation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Observation tgt = new org.hl7.fhir.instance.model.Observation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertObservationStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.CodeableConcept c : src.getCategory()) - tgt.setCategory(convertCodeableConcept(c)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setIssued(src.getIssued()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - tgt.setValue(convertType(src.getValue())); - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); - tgt.setComments(src.getComment()); - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setSpecimen(convertReference(src.getSpecimen())); - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - for (org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent t : src.getRelated()) - tgt.addRelated(convertObservationRelatedComponent(t)); - for (org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent t : src.getComponent()) - tgt.addComponent(convertObservationComponentComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.instance.model.Observation.ObservationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.REGISTERED; - case PRELIMINARY: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.FINAL; - case AMENDED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.AMENDED; - case CANCELLED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.dstu3.model.Observation.ObservationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.REGISTERED; - case PRELIMINARY: return org.hl7.fhir.instance.model.Observation.ObservationStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.instance.model.Observation.ObservationStatus.FINAL; - case AMENDED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.AMENDED; - case CANCELLED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Observation.ObservationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.instance.model.Observation.ObservationStatus.UNKNOWN; - default: return org.hl7.fhir.instance.model.Observation.ObservationStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - tgt.setType(convertCodeableConcept(src.getMeaning())); - tgt.setAge(convertRange(src.getAge())); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); -// for (org.hl7.fhir.dstu3.model.CodeableConcept c : src.getMeaning()) - tgt.setMeaning(convertCodeableConcept(src.getType())); - tgt.setAge(convertRange(src.getAge())); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent(); - copyElement(src, tgt); - tgt.setType(convertObservationRelationshipType(src.getType())); - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - public org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent(); - copyElement(src, tgt); - tgt.setType(convertObservationRelationshipType(src.getType())); - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.instance.model.Observation.ObservationRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HASMEMBER: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.HASMEMBER; - case DERIVEDFROM: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.DERIVEDFROM; - case SEQUELTO: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.SEQUELTO; - case REPLACES: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.REPLACES; - case QUALIFIEDBY: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.QUALIFIEDBY; - case INTERFEREDBY: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.INTERFEREDBY; - default: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.NULL; - } - } - - public org.hl7.fhir.instance.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HASMEMBER: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.HASMEMBER; - case DERIVEDFROM: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.DERIVEDFROM; - case SEQUELTO: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.SEQUELTO; - case REPLACES: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.REPLACES; - case QUALIFIEDBY: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.QUALIFIEDBY; - case INTERFEREDBY: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.INTERFEREDBY; - default: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.instance.model.Observation.ObservationComponentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(convertType(src.getValue())); - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - for (org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationComponentComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(convertType(src.getValue())); - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - for (org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.instance.model.OperationDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.OperationDefinition tgt = new org.hl7.fhir.dstu3.model.OperationDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertOperationKind(src.getKind())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent t : src.getContact()) - tgt.addContact(convertOperationDefinitionContactComponent(t)); - tgt.setDescription(src.getDescription()); - tgt.setPurpose(src.getRequirements()); - if (src.hasIdempotent()) - tgt.setIdempotent(src.getIdempotent()); - tgt.setCode(src.getCode()); - tgt.setComment(src.getNotes()); - tgt.setBase(convertReference(src.getBase())); - tgt.setSystem(src.getSystem()); - for (org.hl7.fhir.instance.model.CodeType t : src.getType()) - tgt.addResource(t.getValue()); - tgt.setType(tgt.hasResource()); - tgt.setInstance(src.getInstance()); - for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) - tgt.addParameter(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.dstu3.model.OperationDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationDefinition tgt = new org.hl7.fhir.instance.model.OperationDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertOperationKind(src.getKind())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertOperationDefinitionContactComponent(t)); - tgt.setDescription(src.getDescription()); - tgt.setRequirements(src.getPurpose()); - tgt.setIdempotent(src.getIdempotent()); - tgt.setCode(src.getCode()); - tgt.setNotes(src.getComment()); - if (src.hasBase()) - tgt.setBase(convertReference(src.getBase())); - tgt.setSystem(src.getSystem()); - if (src.getType()) - for (org.hl7.fhir.dstu3.model.CodeType t : src.getResource()) - tgt.addType(t.getValue()); - tgt.setInstance(src.getInstance()); - for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) - tgt.addParameter(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.instance.model.OperationDefinition.OperationKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OPERATION: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.OPERATION; - case QUERY: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.QUERY; - default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.NULL; - } - } - - public org.hl7.fhir.instance.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OPERATION: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.OPERATION; - case QUERY: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.QUERY; - default: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ContactDetail convertOperationDefinitionContactComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent convertOperationDefinitionContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setUse(convertOperationParameterUse(src.getUse())); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - tgt.setDocumentation(src.getDocumentation()); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); - for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) - tgt.addPart(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setUse(convertOperationParameterUse(src.getUse())); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - tgt.setDocumentation(src.getDocumentation()); - if (src.hasSearchType()) { - tgt.setType(src.getSearchType().toCode()); - tgt.setType("string"); - } else - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - if (src.hasBinding()) - tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); - for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) - tgt.addPart(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.IN; - case OUT: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.OUT; - default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.NULL; - } - } - - public org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.IN; - case OUT: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.OUT; - default: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.NULL; - } - } - - public org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.instance.model.OperationOutcome src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.OperationOutcome tgt = new org.hl7.fhir.dstu3.model.OperationOutcome(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) - tgt.addIssue(convertOperationOutcomeIssueComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.dstu3.model.OperationOutcome src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationOutcome tgt = new org.hl7.fhir.instance.model.OperationOutcome(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) - tgt.addIssue(convertOperationOutcomeIssueComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent(); - copyElement(src, tgt); - tgt.setSeverity(convertIssueSeverity(src.getSeverity())); - tgt.setCode(convertIssueType(src.getCode())); - tgt.setDetails(convertCodeableConcept(src.getDetails())); - tgt.setDiagnostics(src.getDiagnostics()); - for (org.hl7.fhir.instance.model.StringType t : src.getLocation()) - tgt.addLocation(t.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent(); - copyElement(src, tgt); - tgt.setSeverity(convertIssueSeverity(src.getSeverity())); - tgt.setCode(convertIssueType(src.getCode())); - tgt.setDetails(convertCodeableConcept(src.getDetails())); - tgt.setDiagnostics(src.getDiagnostics()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getLocation()) - tgt.addLocation(t.getValue()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FATAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.FATAL; - case ERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.ERROR; - case WARNING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.WARNING; - case INFORMATION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.INFORMATION; - default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.NULL; - } - } - - public org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FATAL: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.FATAL; - case ERROR: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.ERROR; - case WARNING: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.WARNING; - case INFORMATION: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.INFORMATION; - default: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.NULL; - } - } - - public org.hl7.fhir.dstu3.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.instance.model.OperationOutcome.IssueType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVALID; - case STRUCTURE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.STRUCTURE; - case REQUIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.REQUIRED; - case VALUE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.VALUE; - case INVARIANT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVARIANT; - case SECURITY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SECURITY; - case LOGIN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOGIN; - case UNKNOWN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.UNKNOWN; - case EXPIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXPIRED; - case FORBIDDEN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.FORBIDDEN; - case SUPPRESSED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SUPPRESSED; - case PROCESSING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.PROCESSING; - case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTSUPPORTED; - case DUPLICATE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.DUPLICATE; - case NOTFOUND: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTFOUND; - case TOOLONG: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOLONG; - case CODEINVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CODEINVALID; - case EXTENSION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXTENSION; - case TOOCOSTLY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOCOSTLY; - case BUSINESSRULE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.BUSINESSRULE; - case CONFLICT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CONFLICT; - case INCOMPLETE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INCOMPLETE; - case TRANSIENT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TRANSIENT; - case LOCKERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOCKERROR; - case NOSTORE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOSTORE; - case EXCEPTION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXCEPTION; - case TIMEOUT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TIMEOUT; - case THROTTLED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.THROTTLED; - case INFORMATIONAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INFORMATIONAL; - default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NULL; - } - } - - public org.hl7.fhir.instance.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.dstu3.model.OperationOutcome.IssueType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INVALID: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INVALID; - case STRUCTURE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.STRUCTURE; - case REQUIRED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.REQUIRED; - case VALUE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.VALUE; - case INVARIANT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INVARIANT; - case SECURITY: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.SECURITY; - case LOGIN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.LOGIN; - case UNKNOWN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.UNKNOWN; - case EXPIRED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXPIRED; - case FORBIDDEN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.FORBIDDEN; - case SUPPRESSED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.SUPPRESSED; - case PROCESSING: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.PROCESSING; - case NOTSUPPORTED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOTSUPPORTED; - case DUPLICATE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.DUPLICATE; - case NOTFOUND: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOTFOUND; - case TOOLONG: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TOOLONG; - case CODEINVALID: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.CODEINVALID; - case EXTENSION: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXTENSION; - case TOOCOSTLY: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TOOCOSTLY; - case BUSINESSRULE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.BUSINESSRULE; - case CONFLICT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.CONFLICT; - case INCOMPLETE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INCOMPLETE; - case TRANSIENT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TRANSIENT; - case LOCKERROR: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.LOCKERROR; - case NOSTORE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOSTORE; - case EXCEPTION: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXCEPTION; - case TIMEOUT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TIMEOUT; - case THROTTLED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.THROTTLED; - case INFORMATIONAL: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INFORMATIONAL; - default: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NULL; - } - } - - - public org.hl7.fhir.dstu3.model.Organization convertOrganization(org.hl7.fhir.instance.model.Organization src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Organization tgt = new org.hl7.fhir.dstu3.model.Organization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - tgt.addType(convertCodeableConcept(src.getType())); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.instance.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setPartOf(convertReference(src.getPartOf())); - for (org.hl7.fhir.instance.model.Organization.OrganizationContactComponent t : src.getContact()) - tgt.addContact(convertOrganizationContactComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Organization convertOrganization(org.hl7.fhir.dstu3.model.Organization src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Organization tgt = new org.hl7.fhir.instance.model.Organization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - tgt.setType(convertCodeableConcept(src.getTypeFirstRep())); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setPartOf(convertReference(src.getPartOf())); - for (org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent t : src.getContact()) - tgt.addContact(convertOrganizationContactComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.instance.model.Organization.OrganizationContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent(); - copyElement(src, tgt); - tgt.setPurpose(convertCodeableConcept(src.getPurpose())); - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - return tgt; - } - - public org.hl7.fhir.instance.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.instance.model.Organization.OrganizationContactComponent(); - copyElement(src, tgt); - tgt.setPurpose(convertCodeableConcept(src.getPurpose())); - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - return tgt; - } - - - public org.hl7.fhir.dstu3.model.Patient convertPatient(org.hl7.fhir.instance.model.Patient src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Patient tgt = new org.hl7.fhir.dstu3.model.Patient(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - for (org.hl7.fhir.instance.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - tgt.setDeceased(convertType(src.getDeceased())); - for (org.hl7.fhir.instance.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); - tgt.setMultipleBirth(convertType(src.getMultipleBirth())); - for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - for (org.hl7.fhir.instance.model.Patient.ContactComponent t : src.getContact()) - tgt.addContact(convertContactComponent(t)); - tgt.setAnimal(convertAnimalComponent(src.getAnimal())); - for (org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent t : src.getCommunication()) - tgt.addCommunication(convertPatientCommunicationComponent(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getCareProvider()) - tgt.addGeneralPractitioner(convertReference(t)); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - for (org.hl7.fhir.instance.model.Patient.PatientLinkComponent t : src.getLink()) - tgt.addLink(convertPatientLinkComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Patient convertPatient(org.hl7.fhir.dstu3.model.Patient src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Patient tgt = new org.hl7.fhir.instance.model.Patient(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - tgt.setDeceased(convertType(src.getDeceased())); - for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); - tgt.setMultipleBirth(convertType(src.getMultipleBirth())); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - for (org.hl7.fhir.dstu3.model.Patient.ContactComponent t : src.getContact()) - tgt.addContact(convertContactComponent(t)); - tgt.setAnimal(convertAnimalComponent(src.getAnimal())); - for (org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent t : src.getCommunication()) - tgt.addCommunication(convertPatientCommunicationComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getGeneralPractitioner()) - tgt.addCareProvider(convertReference(t)); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - for (org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent t : src.getLink()) - tgt.addLink(convertPatientLinkComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.instance.model.Patient.ContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Patient.ContactComponent tgt = new org.hl7.fhir.dstu3.model.Patient.ContactComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRelationship()) - tgt.addRelationship(convertCodeableConcept(t)); - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setOrganization(convertReference(src.getOrganization())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.dstu3.model.Patient.ContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Patient.ContactComponent tgt = new org.hl7.fhir.instance.model.Patient.ContactComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRelationship()) - tgt.addRelationship(convertCodeableConcept(t)); - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setOrganization(convertReference(src.getOrganization())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.instance.model.Patient.AnimalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Patient.AnimalComponent tgt = new org.hl7.fhir.dstu3.model.Patient.AnimalComponent(); - copyElement(src, tgt); - tgt.setSpecies(convertCodeableConcept(src.getSpecies())); - tgt.setBreed(convertCodeableConcept(src.getBreed())); - tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); - return tgt; - } - - public org.hl7.fhir.instance.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.dstu3.model.Patient.AnimalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Patient.AnimalComponent tgt = new org.hl7.fhir.instance.model.Patient.AnimalComponent(); - copyElement(src, tgt); - tgt.setSpecies(convertCodeableConcept(src.getSpecies())); - tgt.setBreed(convertCodeableConcept(src.getBreed())); - tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent(); - copyElement(src, tgt); - tgt.setLanguage(convertCodeableConcept(src.getLanguage())); - tgt.setPreferred(src.getPreferred()); - return tgt; - } - - public org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent(); - copyElement(src, tgt); - tgt.setLanguage(convertCodeableConcept(src.getLanguage())); - tgt.setPreferred(src.getPreferred()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.instance.model.Patient.PatientLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent(); - copyElement(src, tgt); - tgt.setOther(convertReference(src.getOther())); - tgt.setType(convertLinkType(src.getType())); - return tgt; - } - - public org.hl7.fhir.instance.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.instance.model.Patient.PatientLinkComponent(); - copyElement(src, tgt); - tgt.setOther(convertReference(src.getOther())); - tgt.setType(convertLinkType(src.getType())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Patient.LinkType convertLinkType(org.hl7.fhir.instance.model.Patient.LinkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACE: return org.hl7.fhir.dstu3.model.Patient.LinkType.REPLACEDBY; - case REFER: return org.hl7.fhir.dstu3.model.Patient.LinkType.REFER; - case SEEALSO: return org.hl7.fhir.dstu3.model.Patient.LinkType.SEEALSO; - default: return org.hl7.fhir.dstu3.model.Patient.LinkType.NULL; - } - } - - public org.hl7.fhir.instance.model.Patient.LinkType convertLinkType(org.hl7.fhir.dstu3.model.Patient.LinkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACEDBY: return org.hl7.fhir.instance.model.Patient.LinkType.REPLACE; - case REPLACES: return org.hl7.fhir.instance.model.Patient.LinkType.REPLACE; - case REFER: return org.hl7.fhir.instance.model.Patient.LinkType.REFER; - case SEEALSO: return org.hl7.fhir.instance.model.Patient.LinkType.SEEALSO; - default: return org.hl7.fhir.instance.model.Patient.LinkType.NULL; - } - } - - - public org.hl7.fhir.dstu3.model.Person convertPerson(org.hl7.fhir.instance.model.Person src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Person tgt = new org.hl7.fhir.dstu3.model.Person(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.instance.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.instance.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setPhoto(convertAttachment(src.getPhoto())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setActive(src.getActive()); - for (org.hl7.fhir.instance.model.Person.PersonLinkComponent t : src.getLink()) - tgt.addLink(convertPersonLinkComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Person convertPerson(org.hl7.fhir.dstu3.model.Person src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Person tgt = new org.hl7.fhir.instance.model.Person(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setPhoto(convertAttachment(src.getPhoto())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setActive(src.getActive()); - for (org.hl7.fhir.dstu3.model.Person.PersonLinkComponent t : src.getLink()) - tgt.addLink(convertPersonLinkComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.instance.model.Person.PersonLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.dstu3.model.Person.PersonLinkComponent(); - copyElement(src, tgt); - tgt.setTarget(convertReference(src.getTarget())); - tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); - return tgt; - } - - public org.hl7.fhir.instance.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.dstu3.model.Person.PersonLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.instance.model.Person.PersonLinkComponent(); - copyElement(src, tgt); - tgt.setTarget(convertReference(src.getTarget())); - tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LEVEL1: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL1; - case LEVEL2: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL2; - case LEVEL3: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL3; - case LEVEL4: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL4; - default: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.NULL; - } - } - - public org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LEVEL1: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL1; - case LEVEL2: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL2; - case LEVEL3: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL3; - case LEVEL4: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL4; - default: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Practitioner convertPractitioner(org.hl7.fhir.instance.model.Practitioner src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Practitioner tgt = new org.hl7.fhir.dstu3.model.Practitioner(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - if (src.hasName()) - tgt.addName(convertHumanName(src.getName())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.instance.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); -// for (org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent t : src.getPractitionerRole()) -// tgt.addRole(convertPractitionerPractitionerRoleComponent(t)); - for (org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) - tgt.addQualification(convertPractitionerQualificationComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCommunication()) - tgt.addCommunication(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Practitioner convertPractitioner(org.hl7.fhir.dstu3.model.Practitioner src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Practitioner tgt = new org.hl7.fhir.instance.model.Practitioner(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) - tgt.setName(convertHumanName(t)); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); -// for (org.hl7.fhir.dstu3.model.Practitioner.PractitionerRoleComponent t : src.getRole()) -// tgt.addPractitionerRole(convertPractitionerPractitionerRoleComponent(t)); - for (org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) - tgt.addQualification(convertPractitionerQualificationComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCommunication()) - tgt.addCommunication(convertCodeableConcept(t)); - return tgt; - } - -// public org.hl7.fhir.dstu3.model.Practitioner.PractitionerRoleComponent convertPractitionerPractitionerRoleComponent(org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu3.model.Practitioner.PractitionerRoleComponent tgt = new org.hl7.fhir.dstu3.model.Practitioner.PractitionerRoleComponent(); -// copyElement(src, tgt); -// tgt.setOrganization(convertReference(src.getManagingOrganization())); -// tgt.setCode(convertCodeableConcept(src.getRole())); -// for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialty()) -// tgt.addSpecialty(convertCodeableConcept(t)); -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// for (org.hl7.fhir.instance.model.Reference t : src.getLocation()) -// tgt.addLocation(convertReference(t)); -// for (org.hl7.fhir.instance.model.Reference t : src.getHealthcareService()) -// tgt.addHealthcareService(convertReference(t)); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent convertPractitionerPractitionerRoleComponent(org.hl7.fhir.dstu3.model.Practitioner.PractitionerRoleComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent tgt = new org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent(); -// copyElement(src, tgt); -// tgt.setManagingOrganization(convertReference(src.getOrganization())); -// tgt.setRole(convertCodeableConcept(src.getCode())); -// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) -// tgt.addSpecialty(convertCodeableConcept(t)); -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getLocation()) -// tgt.addLocation(convertReference(t)); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getHealthcareService()) -// tgt.addHealthcareService(convertReference(t)); -// return tgt; -// } - - public org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setIssuer(convertReference(src.getIssuer())); - return tgt; - } - - public org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setIssuer(convertReference(src.getIssuer())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Procedure convertProcedure(org.hl7.fhir.instance.model.Procedure src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Procedure tgt = new org.hl7.fhir.dstu3.model.Procedure(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setStatus(convertProcedureStatus(src.getStatus())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setNotDone(src.getNotPerformed()); -// for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotPerformed()) - if (src.hasReasonNotPerformed()) - tgt.setNotDoneReason(convertCodeableConcept(src.getReasonNotPerformed().get(0))); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - if (src.hasReasonCodeableConcept()) - tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); - for (org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) - tgt.addPerformer(convertProcedurePerformerComponent(t)); - tgt.setPerformed(convertType(src.getPerformed())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - for (org.hl7.fhir.instance.model.Reference t : src.getReport()) - tgt.addReport(convertReference(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getComplication()) - tgt.addComplication(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getFollowUp()) - tgt.addFollowUp(convertCodeableConcept(t)); - tgt.addBasedOn(convertReference(src.getRequest())); -// for (org.hl7.fhir.instance.model.Annotation t : src.getNotes()) -// tgt.addNotes(convertAnnotation(t)); - for (org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) - tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Procedure convertProcedure(org.hl7.fhir.dstu3.model.Procedure src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Procedure tgt = new org.hl7.fhir.instance.model.Procedure(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setStatus(convertProcedureStatus(src.getStatus())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setNotPerformed(src.getNotDone()); -// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotPerformed()) - tgt.addReasonNotPerformed(convertCodeableConcept(src.getNotDoneReason())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - tgt.setReason(convertType(src.getReasonCodeFirstRep())); - for (org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) - tgt.addPerformer(convertProcedurePerformerComponent(t)); - tgt.setPerformed(convertType(src.getPerformed())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReport()) - tgt.addReport(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getComplication()) - tgt.addComplication(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getFollowUp()) - tgt.addFollowUp(convertCodeableConcept(t)); - tgt.setRequest(convertReference(src.getBasedOnFirstRep())); -// for (org.hl7.fhir.dstu3.model.Annotation t : src.getNotes()) -// tgt.addNotes(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) - tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.instance.model.Procedure.ProcedureStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.INPROGRESS; - case ABORTED: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.ABORTED; - case COMPLETED: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.INPROGRESS; - case ABORTED: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.ABORTED; - case COMPLETED: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent(); - copyElement(src, tgt); - tgt.setActor(convertReference(src.getActor())); - tgt.setRole(convertCodeableConcept(src.getRole())); - return tgt; - } - - public org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent(); - copyElement(src, tgt); - tgt.setActor(convertReference(src.getActor())); - tgt.setRole(convertCodeableConcept(src.getRole())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent(); - copyElement(src, tgt); - tgt.setAction(convertCodeableConcept(src.getAction())); - tgt.setManipulated(convertReference(src.getManipulated())); - return tgt; - } - - public org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent(); - copyElement(src, tgt); - tgt.setAction(convertCodeableConcept(src.getAction())); - tgt.setManipulated(convertReference(src.getManipulated())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.instance.model.ProcedureRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ProcedureRequest tgt = new org.hl7.fhir.dstu3.model.ProcedureRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - if (src.hasReasonCodeableConcept()) - tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); - tgt.setOccurrence(convertType(src.getScheduled())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setPerformer(convertReference(src.getPerformer())); - tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); -// for (org.hl7.fhir.instance.model.Annotation t : src.getNotes()) -// tgt.addNotes(convertAnnotation(t)); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - tgt.setAuthoredOn(src.getOrderedOn()); -// tgt.setOrderer(convertReference(src.getOrderer())); - tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); - return tgt; - } - - public org.hl7.fhir.instance.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.dstu3.model.ProcedureRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ProcedureRequest tgt = new org.hl7.fhir.instance.model.ProcedureRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - tgt.setReason(convertType(src.getReasonCodeFirstRep())); - tgt.setScheduled(convertType(src.getOccurrence())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setPerformer(convertReference(src.getPerformer())); - tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); -// for (org.hl7.fhir.dstu3.model.Annotation t : src.getNotes()) -// tgt.addNotes(convertAnnotation(t)); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - tgt.setOrderedOn(src.getAuthoredOn()); -// tgt.setOrderer(convertReference(src.getOrderer())); - tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; - case DRAFT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; - case REQUESTED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case RECEIVED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case ACCEPTED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case INPROGRESS: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; -// case REJECTED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.REJECTED; - case ABORTED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { -// case PROPOSED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.PROPOSED; - case DRAFT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; -// case REQUESTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.REQUESTED; -// case RECEIVED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.RECEIVED; -// case ACCEPTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.ACCEPTED; - case ACTIVE: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; -// case REJECTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.REJECTED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.ABORTED; - default: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.URGENT; - case STAT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.STAT; - case ASAP: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.ASAP; - default: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.NULL; - } - } - - public org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.URGENT; - case STAT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.STAT; - case ASAP: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.ASAP; - default: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.NULL; - } - } - - - public org.hl7.fhir.dstu3.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.instance.model.ProcessRequest.ActionList src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CANCEL: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.CANCEL; - case POLL: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.POLL; - case REPROCESS: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.REPROCESS; - case STATUS: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.STATUS; - default: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.NULL; - } - } - - public org.hl7.fhir.instance.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.dstu3.model.ProcessRequest.ActionList src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CANCEL: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.CANCEL; - case POLL: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.POLL; - case REPROCESS: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.REPROCESS; - case STATUS: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.STATUS; - default: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent(); - copyElement(src, tgt); - tgt.setSequenceLinkId(src.getSequenceLinkId()); - return tgt; - } - - public org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent(); - copyElement(src, tgt); - tgt.setSequenceLinkId(src.getSequenceLinkId()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Provenance convertProvenance(org.hl7.fhir.instance.model.Provenance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Provenance tgt = new org.hl7.fhir.dstu3.model.Provenance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Reference t : src.getTarget()) - tgt.addTarget(convertReference(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setRecorded(src.getRecorded()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - for (org.hl7.fhir.instance.model.Coding tc : t.getCoding()) - tgt.addReason(convertCoding(tc)); - for (org.hl7.fhir.instance.model.Coding t : src.getActivity().getCoding()) - tgt.setActivity(convertCoding(t)); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.instance.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - for (org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) - tgt.addAgent(convertProvenanceAgentComponent(t)); - for (org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) - tgt.addEntity(convertProvenanceEntityComponent(t)); - for (org.hl7.fhir.instance.model.Signature t : src.getSignature()) - tgt.addSignature(convertSignature(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Provenance convertProvenance(org.hl7.fhir.dstu3.model.Provenance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Provenance tgt = new org.hl7.fhir.instance.model.Provenance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Reference t : src.getTarget()) - tgt.addTarget(convertReference(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setRecorded(src.getRecorded()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getReason()) - tgt.addReason().addCoding(convertCoding(t)); - tgt.setActivity(new org.hl7.fhir.instance.model.CodeableConcept().addCoding(convertCoding(src.getActivity()))); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.dstu3.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) - tgt.addAgent(convertProvenanceAgentComponent(t)); - for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) - tgt.addEntity(convertProvenanceEntityComponent(t)); - for (org.hl7.fhir.dstu3.model.Signature t : src.getSignature()) - tgt.addSignature(convertSignature(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent(); - copyElement(src, tgt); -// tgt.setRole(convertCoding(src.getRole())); - tgt.setWho(convertReference(src.getActor())); - return tgt; - } - - public org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent(); - copyElement(src, tgt); -// tgt.setRole(convertCoding(src.getRole())); - if (src.hasWhoReference()) - tgt.setActor(convertReference(src.getWhoReference())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent(); - copyElement(src, tgt); - tgt.setRole(convertProvenanceEntityRole(src.getRole())); - if (src.hasReference()) - tgt.setWhat(new org.hl7.fhir.dstu3.model.Reference().setReference(src.getReference())); - tgt.addAgent(convertProvenanceAgentComponent(src.getAgent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent(); - copyElement(src, tgt); - tgt.setRole(convertProvenanceEntityRole(src.getRole())); - if (src.hasWhatReference() && src.getWhatReference().hasReference()) - tgt.setReference(src.getWhatReference().getReference()); - for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) - tgt.setAgent(convertProvenanceAgentComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DERIVATION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.DERIVATION; - case REVISION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.REVISION; - case QUOTATION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.QUOTATION; - case SOURCE: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.SOURCE; - default: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.NULL; - } - } - - public org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DERIVATION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.DERIVATION; - case REVISION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.REVISION; - case QUOTATION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.QUOTATION; - case SOURCE: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.SOURCE; - default: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Questionnaire convertQuestionnaire(org.hl7.fhir.instance.model.Questionnaire src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Questionnaire tgt = new org.hl7.fhir.dstu3.model.Questionnaire(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addContact(convertQuestionnaireContactComponent(t)); - org.hl7.fhir.instance.model.Questionnaire.GroupComponent root = src.getGroup(); - tgt.setTitle(root.getTitle()); - for (org.hl7.fhir.instance.model.Coding t : root.getConcept()) - tgt.addCode(convertCoding(t)); - for (org.hl7.fhir.instance.model.CodeType t : src.getSubjectType()) - tgt.addSubjectType(t.getValue()); - tgt.addItem(convertQuestionnaireGroupComponent(root)); - return tgt; - } - - public org.hl7.fhir.instance.model.Questionnaire convertQuestionnaire(org.hl7.fhir.dstu3.model.Questionnaire src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Questionnaire tgt = new org.hl7.fhir.instance.model.Questionnaire(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (ContactDetail t : src.getContact()) - for (org.hl7.fhir.dstu3.model.ContactPoint t1 : t.getTelecom()) - tgt.addTelecom(convertContactPoint(t1)); - org.hl7.fhir.instance.model.Questionnaire.GroupComponent root = tgt.getGroup(); - root.setTitle(src.getTitle()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) { - root.addConcept(convertCoding(t)); - } - for (org.hl7.fhir.dstu3.model.CodeType t : src.getSubjectType()) - tgt.addSubjectType(t.getValue()); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - if (t.getType() == org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.GROUP) - root.addGroup(convertQuestionnaireGroupComponent(t)); - else - root.addQuestion(convertQuestionnaireQuestionComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ContactDetail convertQuestionnaireContactComponent(org.hl7.fhir.instance.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.addTelecom(convertContactPoint(src)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus convertQuestionnaireStatus(org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.DRAFT; - case PUBLISHED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.RETIRED; - default: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.NULL; - } - } - - private static org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus convertQuestionnaireStatus(org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.PUBLISHED; - case RETIRED: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.RETIRED; - default: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireQuestionComponent(org.hl7.fhir.instance.model.Questionnaire.QuestionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.instance.model.Coding t : src.getConcept()) - tgt.addCode(convertCoding(t)); - tgt.setText(src.getText()); - tgt.setType(convertQuestionnaireQuestionType(src.getType())); - tgt.setRequired(src.getRequired()); - tgt.setRepeats(src.getRepeats()); - tgt.setOptions(convertReference(src.getOptions())); - for (org.hl7.fhir.instance.model.Coding t : src.getOption()) - tgt.addOption().setValue(convertCoding(t)); - for (org.hl7.fhir.instance.model.Questionnaire.GroupComponent t : src.getGroup()) - tgt.addItem(convertQuestionnaireGroupComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireGroupComponent(org.hl7.fhir.instance.model.Questionnaire.GroupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.instance.model.Coding t : src.getConcept()) - tgt.addCode(convertCoding(t)); - tgt.setText(src.getText()); - tgt.setType(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.GROUP); - tgt.setRequired(src.getRequired()); - tgt.setRepeats(src.getRepeats()); - for (org.hl7.fhir.instance.model.Questionnaire.GroupComponent t : src.getGroup()) - tgt.addItem(convertQuestionnaireGroupComponent(t)); - for (org.hl7.fhir.instance.model.Questionnaire.QuestionComponent t : src.getQuestion()) - tgt.addItem(convertQuestionnaireQuestionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Questionnaire.GroupComponent convertQuestionnaireGroupComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Questionnaire.GroupComponent tgt = new org.hl7.fhir.instance.model.Questionnaire.GroupComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) - tgt.addConcept(convertCoding(t)); - tgt.setText(src.getText()); - tgt.setRequired(src.getRequired()); - tgt.setRepeats(src.getRepeats()); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - if (t.getType() == org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.GROUP) - tgt.addGroup(convertQuestionnaireGroupComponent(t)); - else - tgt.addQuestion(convertQuestionnaireQuestionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Questionnaire.QuestionComponent convertQuestionnaireQuestionComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Questionnaire.QuestionComponent tgt = new org.hl7.fhir.instance.model.Questionnaire.QuestionComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) - tgt.addConcept(convertCoding(t)); - tgt.setText(src.getText()); - tgt.setType(convertQuestionnaireItemType(src.getType())); - tgt.setRequired(src.getRequired()); - tgt.setRepeats(src.getRepeats()); - tgt.setOptions(convertReference(src.getOptions())); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) - if (t.hasValueCoding()) - try { - tgt.addOption(convertCoding(t.getValueCoding())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addGroup(convertQuestionnaireGroupComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType convertQuestionnaireQuestionType(org.hl7.fhir.instance.model.Questionnaire.AnswerFormat src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BOOLEAN: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.BOOLEAN; - case DECIMAL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DECIMAL; - case INTEGER: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.INTEGER; - case DATE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATE; - case DATETIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATETIME; - case INSTANT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATETIME; - case TIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TIME; - case STRING: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.STRING; - case TEXT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TEXT; - case URL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.URL; - case CHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.CHOICE; - case OPENCHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; - case ATTACHMENT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; - case REFERENCE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.REFERENCE; - case QUANTITY: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.QUANTITY; - default: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.NULL; - } - } - - public org.hl7.fhir.instance.model.Questionnaire.AnswerFormat convertQuestionnaireItemType(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BOOLEAN: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.BOOLEAN; - case DECIMAL: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DECIMAL; - case INTEGER: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.INTEGER; - case DATE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DATE; - case DATETIME: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DATETIME; - case TIME: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.TIME; - case STRING: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.STRING; - case TEXT: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.TEXT; - case URL: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.URL; - case CHOICE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.CHOICE; - case OPENCHOICE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.OPENCHOICE; - case ATTACHMENT: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.ATTACHMENT; - case REFERENCE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.REFERENCE; - case QUANTITY: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.QUANTITY; - default: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.NULL; - } - } - - public org.hl7.fhir.dstu3.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.instance.model.QuestionnaireResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.QuestionnaireResponse tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); - tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setAuthored(src.getAuthored()); - tgt.setSource(convertReference(src.getSource())); - tgt.setContext(convertReference(src.getEncounter())); - if (src.hasGroup()) - tgt.addItem(convertQuestionnaireResponseGroupComponent(src.getGroup())); - return tgt; - } - - public org.hl7.fhir.instance.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.dstu3.model.QuestionnaireResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.QuestionnaireResponse tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); - tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setAuthored(src.getAuthored()); - tgt.setSource(convertReference(src.getSource())); - tgt.setEncounter(convertReference(src.getContext())); - - if (src.getItem().size() != 1) - throw new FHIRException("multiple root items not supported"); // though we could define a placeholder group? - - tgt.setGroup(convertQuestionnaireItemToGroup(src.getItem().get(0))); - return tgt; - } - - - public org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; - case AMENDED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; - default: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; - case AMENDED: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; - default: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseGroupComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - tgt.setText(src.getText()); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent t : src.getGroup()) - tgt.addItem(convertQuestionnaireResponseGroupComponent(t)); - for (org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent t : src.getQuestion()) - tgt.addItem(convertQuestionnaireResponseQuestionComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseQuestionComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - tgt.setText(src.getText()); - for (org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent t : src.getAnswer()) - tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent convertQuestionnaireItemToGroup(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - tgt.setText(src.getText()); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - if (t.hasAnswer()) - tgt.addQuestion(convertQuestionnaireItemToQuestion(t)); - else - tgt.addGroup(convertQuestionnaireItemToGroup(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent convertQuestionnaireItemToQuestion(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - tgt.setText(src.getText()); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) - tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - for (org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent t : src.getGroup()) - tgt.addItem(convertQuestionnaireResponseGroupComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addGroup(convertQuestionnaireItemToGroup(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ReferralRequest convertReferralRequest(org.hl7.fhir.instance.model.ReferralRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ReferralRequest tgt = new org.hl7.fhir.dstu3.model.ReferralRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertReferralStatus(src.getStatus())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setPriority(convertReferralPriorityCode(src.getPriority())); - tgt.setSubject(convertReference(src.getPatient())); - tgt.setOccurrence(convertPeriod(src.getFulfillmentTime())); - tgt.getRequester().setAgent(convertReference(src.getRequester())); - tgt.setSpecialty(convertCodeableConcept(src.getSpecialty())); - for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - tgt.addReasonCode(convertCodeableConcept(src.getReason())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getServiceRequested()) - tgt.addServiceRequested(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInfo(convertReference(t)); - return tgt; - } - - private ReferralPriority convertReferralPriorityCode(CodeableConcept priority) { - for (org.hl7.fhir.instance.model.Coding c : priority.getCoding()) { - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "routine".equals(c.getCode())) - return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority.ROUTINE; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "urgent".equals(c.getCode())) - return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority.URGENT; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "stat".equals(c.getCode())) - return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority.STAT; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "asap".equals(c.getCode())) - return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority.ASAP; - } - return null; - } - - public org.hl7.fhir.instance.model.ReferralRequest convertReferralRequest(org.hl7.fhir.dstu3.model.ReferralRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ReferralRequest tgt = new org.hl7.fhir.instance.model.ReferralRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertReferralStatus(src.getStatus())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setPriority(convertReferralPriorityCode(src.getPriority())); - tgt.setPatient(convertReference(src.getSubject())); - tgt.setFulfillmentTime(convertPeriod(src.getOccurrencePeriod())); - tgt.setRequester(convertReference(src.getRequester().getAgent())); - tgt.setSpecialty(convertCodeableConcept(src.getSpecialty())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept cc : src.getReasonCode()) - tgt.setReason(convertCodeableConcept(cc)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceRequested()) - tgt.addServiceRequested(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInfo()) - tgt.addSupportingInformation(convertReference(t)); - return tgt; - } - - private org.hl7.fhir.instance.model.CodeableConcept convertReferralPriorityCode(org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority priority) { - org.hl7.fhir.instance.model.CodeableConcept cc = new org.hl7.fhir.instance.model.CodeableConcept(); - switch (priority) { - case ROUTINE: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("routine"); break; - case URGENT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("urgent"); break; - case STAT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("stat"); break; - case ASAP: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("asap"); break; - default: return null; - } - return cc; - } - - - public org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus convertReferralStatus(org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.DRAFT; - case REQUESTED: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.CANCELLED; - case ACCEPTED: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.ACTIVE; - case REJECTED: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.ENTEREDINERROR; - case COMPLETED: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.COMPLETED; - default: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus convertReferralStatus(org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.REJECTED; - default: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.instance.model.RelatedPerson src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.RelatedPerson tgt = new org.hl7.fhir.dstu3.model.RelatedPerson(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - tgt.addName(convertHumanName(src.getName())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.instance.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.dstu3.model.RelatedPerson src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.RelatedPerson tgt = new org.hl7.fhir.instance.model.RelatedPerson(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - if (!src.getName().isEmpty()) - tgt.setName(convertHumanName(src.getName().get(0))); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.instance.model.RiskAssessment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.RiskAssessment tgt = new org.hl7.fhir.dstu3.model.RiskAssessment(); - copyDomainResource(src, tgt); - tgt.setSubject(convertReference(src.getSubject())); -// tgt.setDate(src.getDate()); - tgt.setCondition(convertReference(src.getCondition())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setPerformer(convertReference(src.getPerformer())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - for (org.hl7.fhir.instance.model.Reference t : src.getBasis()) - tgt.addBasis(convertReference(t)); - for (org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) - tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); - tgt.setMitigation(src.getMitigation()); - return tgt; - } - - public org.hl7.fhir.instance.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.dstu3.model.RiskAssessment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.RiskAssessment tgt = new org.hl7.fhir.instance.model.RiskAssessment(); - copyDomainResource(src, tgt); - tgt.setSubject(convertReference(src.getSubject())); -// tgt.setDateElement(src.getOccurrenceDateTimeType()); - tgt.setCondition(convertReference(src.getCondition())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setPerformer(convertReference(src.getPerformer())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasis()) - tgt.addBasis(convertReference(t)); - for (org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) - tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); - tgt.setMitigation(src.getMitigation()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent(); - copyElement(src, tgt); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - tgt.setProbability(convertType(src.getProbability())); - tgt.setRelativeRisk(src.getRelativeRisk()); - tgt.setWhen(convertType(src.getWhen())); - tgt.setRationale(src.getRationale()); - return tgt; - } - - public org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent(); - copyElement(src, tgt); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - tgt.setProbability(convertType(src.getProbability())); - tgt.setRelativeRisk(src.getRelativeRisk()); - tgt.setWhen(convertType(src.getWhen())); - tgt.setRationale(src.getRationale()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Schedule convertSchedule(org.hl7.fhir.instance.model.Schedule src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Schedule tgt = new org.hl7.fhir.dstu3.model.Schedule(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) - tgt.addServiceType(convertCodeableConcept(t)); - tgt.addActor(convertReference(src.getActor())); - tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); - tgt.setComment(src.getComment()); - return tgt; - } - - public org.hl7.fhir.instance.model.Schedule convertSchedule(org.hl7.fhir.dstu3.model.Schedule src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Schedule tgt = new org.hl7.fhir.instance.model.Schedule(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setActor(convertReference(src.getActorFirstRep())); - tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); - tgt.setComment(src.getComment()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.SearchParameter convertSearchParameter(org.hl7.fhir.instance.model.SearchParameter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.SearchParameter tgt = new org.hl7.fhir.dstu3.model.SearchParameter(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent t : src.getContact()) - tgt.addContact(convertSearchParameterContactComponent(t)); - tgt.setPurpose(src.getRequirements()); - tgt.setCode(src.getCode()); - tgt.addBase(src.getBase()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDescription(src.getDescription()); - tgt.setExpression(ToolingExtensions.readStringExtension(src, ToolingExtensions.EXT_EXPRESSION)); - tgt.setXpath(src.getXpath()); - tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); - for (org.hl7.fhir.instance.model.CodeType t : src.getTarget()) - tgt.addTarget(t.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.SearchParameter convertSearchParameter(org.hl7.fhir.dstu3.model.SearchParameter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SearchParameter tgt = new org.hl7.fhir.instance.model.SearchParameter(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertSearchParameterContactComponent(t)); - tgt.setRequirements(src.getPurpose()); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getBase()) - tgt.setBase(t.asStringValue()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDescription(src.getDescription()); - org.hl7.fhir.instance.utils.ToolingExtensions.setStringExtension(tgt, ToolingExtensions.EXT_EXPRESSION, src.getExpression()); - tgt.setXpath(src.getXpath()); - tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getTarget()) - tgt.addTarget(t.getValue()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.instance.model.SearchParameter.XPathUsageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NORMAL: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NORMAL; - case PHONETIC: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.PHONETIC; - case NEARBY: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NEARBY; - case DISTANCE: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.DISTANCE; - case OTHER: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.OTHER; - default: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NULL; - } - } - - public org.hl7.fhir.instance.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NORMAL: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NORMAL; - case PHONETIC: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.PHONETIC; - case NEARBY: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NEARBY; - case DISTANCE: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.DISTANCE; - case OTHER: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.OTHER; - default: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ContactDetail convertSearchParameterContactComponent(org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent convertSearchParameterContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent tgt = new org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Slot convertSlot(org.hl7.fhir.instance.model.Slot src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Slot tgt = new org.hl7.fhir.dstu3.model.Slot(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasType()) - tgt.addServiceType(convertCodeableConcept(src.getType())); - tgt.setSchedule(convertReference(src.getSchedule())); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - tgt.setOverbooked(src.getOverbooked()); - tgt.setComment(src.getComment()); - return tgt; - } - - public org.hl7.fhir.instance.model.Slot convertSlot(org.hl7.fhir.dstu3.model.Slot src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Slot tgt = new org.hl7.fhir.instance.model.Slot(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) - tgt.setType(convertCodeableConcept(t)); - tgt.setSchedule(convertReference(src.getSchedule())); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - tgt.setOverbooked(src.getOverbooked()); - tgt.setComment(src.getComment()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.instance.model.Slot.SlotStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BUSY: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSY; - case FREE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.FREE; - case BUSYUNAVAILABLE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSYUNAVAILABLE; - case BUSYTENTATIVE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSYTENTATIVE; - default: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.dstu3.model.Slot.SlotStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BUSY: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSY; - case FREE: return org.hl7.fhir.instance.model.Slot.SlotStatus.FREE; - case BUSYUNAVAILABLE: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSYUNAVAILABLE; - case BUSYTENTATIVE: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSYTENTATIVE; - default: return org.hl7.fhir.instance.model.Slot.SlotStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.instance.model.StructureDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition tgt = new org.hl7.fhir.dstu3.model.StructureDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setTitle(src.getDisplay()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent t : src.getContact()) - tgt.addContact(convertStructureDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setPurpose(src.getRequirements()); - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.instance.model.Coding t : src.getCode()) - tgt.addKeyword(convertCoding(t)); - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertStructureDefinitionMappingComponent(t)); - tgt.setKind(convertStructureDefinitionKind(src.getKind(), tgt.getId())); - tgt.setAbstract(src.getAbstract()); - tgt.setContextType(convertExtensionContext(src.getContextType())); - for (org.hl7.fhir.instance.model.StringType t : src.getContext()) - tgt.addContext(t.getValue()); - if (src.hasConstrainedType()) - tgt.setType(src.getConstrainedType()); - else if (src.getSnapshot().hasElement()) - tgt.setType(src.getSnapshot().getElement().get(0).getPath()); - else if (src.getDifferential().hasElement() && !src.getDifferential().getElement().get(0).getPath().contains(".")) - tgt.setType(src.getDifferential().getElement().get(0).getPath()); - else - tgt.setType(src.getDifferential().getElement().get(0).getPath().substring(0, src.getDifferential().getElement().get(0).getPath().indexOf("."))); - tgt.setBaseDefinition(src.getBase()); - tgt.setDerivation(src.hasConstrainedType() ? org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.CONSTRAINT : org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION); - tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); - tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); - if (tgt.hasSnapshot()) - tgt.getSnapshot().getElementFirstRep().getType().clear(); - if (tgt.hasDifferential()) - tgt.getDifferential().getElementFirstRep().getType().clear(); - if (tgt.getKind() == StructureDefinitionKind.PRIMITIVETYPE && !tgt.getType().equals(tgt.getId())) { - tgt.setDerivation(TypeDerivationRule.SPECIALIZATION); - tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/"+tgt.getType()); -// for (ElementDefinition ed : tgt.getSnapshot().getElement()) { -// ed.setPath(ed.getPath().replace(tgt.getType()+".", tgt.getId()+".")); -// } -// for (ElementDefinition ed : tgt.getDifferential().getElement()) { -// ed.setPath(ed.getPath().replace(tgt.getType()+".", tgt.getId()+".")); -// } - tgt.setType(tgt.getId()); - } - return tgt; - } - - public org.hl7.fhir.instance.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.dstu3.model.StructureDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.StructureDefinition tgt = new org.hl7.fhir.instance.model.StructureDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setDisplay(src.getTitle()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertStructureDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setRequirements(src.getPurpose()); - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getKeyword()) - tgt.addCode(convertCoding(t)); - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertStructureDefinitionMappingComponent(t)); - tgt.setKind(convertStructureDefinitionKind(src.getKind())); - tgt.setAbstract(src.getAbstract()); - tgt.setContextType(convertExtensionContext(src.getContextType())); - for (org.hl7.fhir.dstu3.model.StringType t : src.getContext()) - tgt.addContext(t.getValue()); - tgt.setConstrainedType(src.getType()); - tgt.setBase(src.getBaseDefinition()); - tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); - tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); - if (tgt.hasBase()) { - if (tgt.hasDifferential()) - tgt.getDifferential().getElement().get(0).addType().setCode(tail(tgt.getBase())); - if (tgt.hasSnapshot()) - tgt.getSnapshot().getElement().get(0).addType().setCode(tail(tgt.getBase())); - } - return tgt; - } - - private String tail(String base) { - return base.substring(base.lastIndexOf("/")+1); - } - - public org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind src, String dtName) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DATATYPE: - if (Utilities.existsInList(dtName, "boolean", "integer", "decimal", "base64Binary", "instant", "string", "uri", "date", "dateTime", "time", "code", "oid", "uuid", "id", "unsignedInt", "positiveInt", "markdown", "xhtml")) - return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.PRIMITIVETYPE; - else - return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; - case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.RESOURCE; - case LOGICAL: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.LOGICAL; - default: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.NULL; - } - } - - public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRIMITIVETYPE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.DATATYPE; - case COMPLEXTYPE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.DATATYPE; - case RESOURCE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.RESOURCE; - case LOGICAL: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.LOGICAL; - default: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.NULL; - } - } - - public org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.RESOURCE; - case DATATYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.DATATYPE; - case EXTENSION: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.EXTENSION; - default: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.NULL; - } - } - - public org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESOURCE: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.RESOURCE; - case DATATYPE: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.DATATYPE; - case EXTENSION: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.EXTENSION; - default: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ContactDetail convertStructureDefinitionContactComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent convertStructureDefinitionContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setUri(src.getUri()); - tgt.setName(src.getName()); - tgt.setComment(src.getComments()); - return tgt; - } - - public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setUri(src.getUri()); - tgt.setName(src.getName()); - tgt.setComments(src.getComment()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent(); - copyElement(src, tgt); - List slicePaths = new ArrayList(); - for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { - if (t.hasSlicing()) - slicePaths.add(t.getPath()); - tgt.addElement(convertElementDefinition(t, slicePaths)); - } - return tgt; - } - - public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent(); - copyElement(src, tgt); - List slicePaths = new ArrayList(); - for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { - if (t.hasSlicing()) - slicePaths.add(t.getPath()); - tgt.addElement(convertElementDefinition(t, slicePaths)); - } - return tgt; - } - - public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Subscription convertSubscription(org.hl7.fhir.instance.model.Subscription src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Subscription tgt = new org.hl7.fhir.dstu3.model.Subscription(); - copyDomainResource(src, tgt); - tgt.setCriteria(src.getCriteria()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - tgt.setReason(src.getReason()); - tgt.setStatus(convertSubscriptionStatus(src.getStatus())); - tgt.setError(src.getError()); - tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); - tgt.setEnd(src.getEnd()); - for (org.hl7.fhir.instance.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Subscription convertSubscription(org.hl7.fhir.dstu3.model.Subscription src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Subscription tgt = new org.hl7.fhir.instance.model.Subscription(); - copyDomainResource(src, tgt); - tgt.setCriteria(src.getCriteria()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - tgt.setReason(src.getReason()); - tgt.setStatus(convertSubscriptionStatus(src.getStatus())); - tgt.setError(src.getError()); - tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); - tgt.setEnd(src.getEnd()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.instance.model.Subscription.SubscriptionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUESTED: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.REQUESTED; - case ACTIVE: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.ACTIVE; - case ERROR: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.ERROR; - case OFF: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.OFF; - default: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUESTED: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.REQUESTED; - case ACTIVE: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.ACTIVE; - case ERROR: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.ERROR; - case OFF: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.OFF; - default: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent(); - copyElement(src, tgt); - tgt.setType(convertSubscriptionChannelType(src.getType())); - tgt.setEndpoint(src.getEndpoint()); - tgt.setPayload(src.getPayload()); - tgt.addHeader(src.getHeader()); - return tgt; - } - - public org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent(); - copyElement(src, tgt); - tgt.setType(convertSubscriptionChannelType(src.getType())); - tgt.setEndpoint(src.getEndpoint()); - tgt.setPayload(src.getPayload()); - if (src.hasHeader()) - tgt.setHeaderElement(convertString(src.getHeader().get(0))); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESTHOOK: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.RESTHOOK; - case WEBSOCKET: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.WEBSOCKET; - case EMAIL: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.EMAIL; - case SMS: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.SMS; - case MESSAGE: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.MESSAGE; - default: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.NULL; - } - } - - public org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESTHOOK: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.RESTHOOK; - case WEBSOCKET: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.WEBSOCKET; - case EMAIL: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.EMAIL; - case SMS: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.SMS; - case MESSAGE: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.MESSAGE; - default: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.Substance convertSubstance(org.hl7.fhir.instance.model.Substance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Substance tgt = new org.hl7.fhir.dstu3.model.Substance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent t : src.getInstance()) - tgt.addInstance(convertSubstanceInstanceComponent(t)); - for (org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) - tgt.addIngredient(convertSubstanceIngredientComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Substance convertSubstance(org.hl7.fhir.dstu3.model.Substance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Substance tgt = new org.hl7.fhir.instance.model.Substance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent t : src.getInstance()) - tgt.addInstance(convertSubstanceInstanceComponent(t)); - for (org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) - tgt.addIngredient(convertSubstanceIngredientComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setExpiry(src.getExpiry()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - return tgt; - } - - public org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setExpiry(src.getExpiry()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent(); - copyElement(src, tgt); - tgt.setQuantity(convertRatio(src.getQuantity())); - tgt.setSubstance(convertReference(src.getSubstance())); - return tgt; - } - - public org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent(); - copyElement(src, tgt); - tgt.setQuantity(convertRatio(src.getQuantity())); -// tgt.setSubstance(convertReference(src.getSubstance())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.instance.model.SupplyDelivery src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.SupplyDelivery tgt = new org.hl7.fhir.dstu3.model.SupplyDelivery(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setType(convertCodeableConcept(src.getType())); -// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); -// tgt.setSuppliedItem(convertReference(src.getSuppliedItem())); - tgt.setSupplier(convertReference(src.getSupplier())); -// tgt.setWhenPrepared(convertPeriod(src.getWhenPrepared())); -// tgt.setTime(src.getTime()); - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.instance.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.dstu3.model.SupplyDelivery src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SupplyDelivery tgt = new org.hl7.fhir.instance.model.SupplyDelivery(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setType(convertCodeableConcept(src.getType())); -// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); -// tgt.setSuppliedItem(convertReference(src.getSuppliedItem())); - tgt.setSupplier(convertReference(src.getSupplier())); -// tgt.setWhenPrepared(convertPeriod(src.getWhenPrepared())); -// tgt.setTime(src.getTime()); - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; - case ABANDONED: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; - default: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; - case ABANDONED: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; - default: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.instance.model.SupplyRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.SupplyRequest tgt = new org.hl7.fhir.dstu3.model.SupplyRequest(); - copyDomainResource(src, tgt); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setSource(convertReference(src.getSource())); -// if (src.hasDate()) -// tgt.setDate(src.getDate()); -// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); -// tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); -// tgt.setKind(convertCodeableConcept(src.getKind())); -// tgt.getOrderedItem().setItem(convertReference(src.getOrderedItem())); -// for (org.hl7.fhir.instance.model.Reference t : src.getSupplier()) -// tgt.addSupplier(convertReference(t)); -// tgt.setReason(convertType(src.getReason())); -// tgt.setWhen(convertSupplyRequestWhenComponent(src.getWhen())); - return tgt; - } - - public org.hl7.fhir.instance.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.dstu3.model.SupplyRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SupplyRequest tgt = new org.hl7.fhir.instance.model.SupplyRequest(); -// copyDomainResource(src, tgt); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setSource(convertReference(src.getSource())); -// if (src.hasDate()) -// tgt.setDate(src.getDate()); -// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); -// tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); -// tgt.setKind(convertCodeableConcept(src.getKind())); -// tgt.setOrderedItem(convertReference(src.getOrderedItem().getItemReference())); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getSupplier()) -// tgt.addSupplier(convertReference(t)); -// tgt.setReason(convertType(src.getReason())); -// tgt.setWhen(convertSupplyRequestWhenComponent(src.getWhen())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUESTED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.COMPLETED; - case FAILED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.CANCELLED; - case CANCELLED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.CANCELLED; - default: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.REQUESTED; - case COMPLETED: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.CANCELLED; - default: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.TestScript convertTestScript(org.hl7.fhir.instance.model.TestScript src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript tgt = new org.hl7.fhir.dstu3.model.TestScript(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent t : src.getContact()) - tgt.addContact(convertTestScriptContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setPurpose(src.getRequirements()); - tgt.setCopyright(src.getCopyright()); - tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); - for (org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) - tgt.addFixture(convertTestScriptFixtureComponent(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent t : src.getVariable()) - tgt.addVariable(convertTestScriptVariableComponent(t)); - tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); - for (org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent t : src.getTest()) - tgt.addTest(convertTestScriptTestComponent(t)); - tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript convertTestScript(org.hl7.fhir.dstu3.model.TestScript src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript tgt = new org.hl7.fhir.instance.model.TestScript(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertTestScriptContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setRequirements(src.getPurpose()); - tgt.setCopyright(src.getCopyright()); - tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) - tgt.addFixture(convertTestScriptFixtureComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent t : src.getVariable()) - tgt.addVariable(convertTestScriptVariableComponent(t)); - tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent t : src.getTest()) - tgt.addTest(convertTestScriptTestComponent(t)); - tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ContactDetail convertTestScriptContactComponent(org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent convertTestScriptContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) - tgt.addLink(convertTestScriptMetadataLinkComponent(t)); - for (org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) - tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) - tgt.addLink(convertTestScriptMetadataLinkComponent(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) - tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent(); - copyElement(src, tgt); - tgt.setRequired(src.getRequired()); - tgt.setValidated(src.getValidated()); - tgt.setDescription(src.getDescription()); - tgt.setDestination(src.getDestination()); - for (org.hl7.fhir.instance.model.UriType t : src.getLink()) - tgt.addLink(t.getValue()); - tgt.setCapabilities(convertReference(src.getConformance())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent(); - copyElement(src, tgt); - tgt.setRequired(src.getRequired()); - tgt.setValidated(src.getValidated()); - tgt.setDescription(src.getDescription()); - tgt.setDestination(src.getDestination()); - for (org.hl7.fhir.dstu3.model.UriType t : src.getLink()) - tgt.addLink(t.getValue()); - tgt.setConformance(convertReference(src.getCapabilities())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent(); - copyElement(src, tgt); - tgt.setAutocreate(src.getAutocreate()); - tgt.setAutodelete(src.getAutodelete()); - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent(); - copyElement(src, tgt); - tgt.setAutocreate(src.getAutocreate()); - tgt.setAutodelete(src.getAutodelete()); - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setHeaderField(src.getHeaderField()); - tgt.setPath(src.getPath()); - tgt.setSourceId(src.getSourceId()); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setHeaderField(src.getHeaderField()); - tgt.setPath(src.getPath()); - tgt.setSourceId(src.getSourceId()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent(); - copyElement(src, tgt); - tgt.setType(convertCoding(src.getType())); - tgt.setResource(src.getResource()); - tgt.setLabel(src.getLabel()); - tgt.setDescription(src.getDescription()); - tgt.setAccept(convertContentType(src.getAccept())); - tgt.setContentType(convertContentType(src.getContentType())); - tgt.setDestination(src.getDestination()); - tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); - tgt.setParams(src.getParams()); - for (org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) - tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); - tgt.setResponseId(src.getResponseId()); - tgt.setSourceId(src.getSourceId()); - tgt.setTargetId(src.getTargetId()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent(); - copyElement(src, tgt); - tgt.setType(convertCoding(src.getType())); - tgt.setResource(src.getResource()); - tgt.setLabel(src.getLabel()); - tgt.setDescription(src.getDescription()); - tgt.setAccept(convertContentType(src.getAccept())); - tgt.setContentType(convertContentType(src.getContentType())); - tgt.setDestination(src.getDestination()); - tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); - tgt.setParams(src.getParams()); - for (org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) - tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); - tgt.setResponseId(src.getResponseId()); - tgt.setSourceId(src.getSourceId()); - tgt.setTargetId(src.getTargetId()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.ContentType convertContentType(org.hl7.fhir.instance.model.TestScript.ContentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XML: return org.hl7.fhir.dstu3.model.TestScript.ContentType.XML; - case JSON: return org.hl7.fhir.dstu3.model.TestScript.ContentType.JSON; - default: return org.hl7.fhir.dstu3.model.TestScript.ContentType.NULL; - } - } - - public org.hl7.fhir.instance.model.TestScript.ContentType convertContentType(org.hl7.fhir.dstu3.model.TestScript.ContentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XML: return org.hl7.fhir.instance.model.TestScript.ContentType.XML; - case JSON: return org.hl7.fhir.instance.model.TestScript.ContentType.JSON; - default: return org.hl7.fhir.instance.model.TestScript.ContentType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent(); - copyElement(src, tgt); - tgt.setField(src.getField()); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent(); - copyElement(src, tgt); - tgt.setField(src.getField()); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent(); - copyElement(src, tgt); - tgt.setLabel(src.getLabel()); - tgt.setDescription(src.getDescription()); - tgt.setDirection(convertAssertionDirectionType(src.getDirection())); - tgt.setCompareToSourceId(src.getCompareToSourceId()); - tgt.setCompareToSourcePath(src.getCompareToSourcePath()); - tgt.setContentType(convertContentType(src.getContentType())); - tgt.setHeaderField(src.getHeaderField()); - tgt.setMinimumId(src.getMinimumId()); - tgt.setNavigationLinks(src.getNavigationLinks()); - tgt.setOperator(convertAssertionOperatorType(src.getOperator())); - tgt.setPath(src.getPath()); - tgt.setResource(src.getResource()); - tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); - tgt.setResponseCode(src.getResponseCode()); - tgt.setSourceId(src.getSourceId()); - tgt.setValidateProfileId(src.getValidateProfileId()); - tgt.setValue(src.getValue()); - tgt.setWarningOnly(src.getWarningOnly()); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent(); - copyElement(src, tgt); - tgt.setLabel(src.getLabel()); - tgt.setDescription(src.getDescription()); - tgt.setDirection(convertAssertionDirectionType(src.getDirection())); - tgt.setCompareToSourceId(src.getCompareToSourceId()); - tgt.setCompareToSourcePath(src.getCompareToSourcePath()); - tgt.setContentType(convertContentType(src.getContentType())); - tgt.setHeaderField(src.getHeaderField()); - tgt.setMinimumId(src.getMinimumId()); - tgt.setNavigationLinks(src.getNavigationLinks()); - tgt.setOperator(convertAssertionOperatorType(src.getOperator())); - tgt.setPath(src.getPath()); - tgt.setResource(src.getResource()); - tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); - tgt.setResponseCode(src.getResponseCode()); - tgt.setSourceId(src.getSourceId()); - tgt.setValidateProfileId(src.getValidateProfileId()); - tgt.setValue(src.getValue()); - tgt.setWarningOnly(src.getWarningOnly()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.instance.model.TestScript.AssertionDirectionType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESPONSE: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.RESPONSE; - case REQUEST: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.REQUEST; - default: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.NULL; - } - } - - public org.hl7.fhir.instance.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESPONSE: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.RESPONSE; - case REQUEST: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.REQUEST; - default: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.instance.model.TestScript.AssertionOperatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EQUALS; - case NOTEQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEQUALS; - case IN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.IN; - case NOTIN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTIN; - case GREATERTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.GREATERTHAN; - case LESSTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.LESSTHAN; - case EMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EMPTY; - case NOTEMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEMPTY; - case CONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.CONTAINS; - case NOTCONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTCONTAINS; - default: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NULL; - } - } - - public org.hl7.fhir.instance.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUALS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.EQUALS; - case NOTEQUALS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTEQUALS; - case IN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.IN; - case NOTIN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTIN; - case GREATERTHAN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.GREATERTHAN; - case LESSTHAN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.LESSTHAN; - case EMPTY: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.EMPTY; - case NOTEMPTY: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTEMPTY; - case CONTAINS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.CONTAINS; - case NOTCONTAINS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTCONTAINS; - default: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NULL; - } - } - - public org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OKAY: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.OKAY; - case CREATED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CREATED; - case NOCONTENT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOCONTENT; - case NOTMODIFIED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTMODIFIED; - case BAD: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.BAD; - case FORBIDDEN: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.FORBIDDEN; - case NOTFOUND: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTFOUND; - case METHODNOTALLOWED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; - case CONFLICT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CONFLICT; - case GONE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.GONE; - case PRECONDITIONFAILED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; - case UNPROCESSABLE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; - default: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NULL; - } - } - - public org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OKAY: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.OKAY; - case CREATED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.CREATED; - case NOCONTENT: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOCONTENT; - case NOTMODIFIED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOTMODIFIED; - case BAD: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.BAD; - case FORBIDDEN: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.FORBIDDEN; - case NOTFOUND: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOTFOUND; - case METHODNOTALLOWED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; - case CONFLICT: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.CONFLICT; - case GONE: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.GONE; - case PRECONDITIONFAILED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; - case UNPROCESSABLE: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; - default: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NULL; - } - } - - - public org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.TestScript.TestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent convertTestActionComponent(org.hl7.fhir.dstu3.model.TestScript.TestActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent convertCodeSystem(org.hl7.fhir.dstu3.model.CodeSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setCaseSensitive(src.getCaseSensitive()); - - for (ConceptDefinitionComponent cc : src.getConcept()) - tgt.addConcept(convertCodeSystemConcept(src, cc)); - return tgt; - } - -public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent convertCodeSystemConcept(CodeSystem cs, ConceptDefinitionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent(); - copyElement(src, tgt); - tgt.setAbstract(CodeSystemUtilities.isNotSelectable(cs, src)); - tgt.setCode(src.getCode()); - tgt.setDefinition(src.getDefinition()); - tgt.setDisplay(src.getDisplay()); - - for (ConceptDefinitionComponent cc : src.getConcept()) - tgt.addConcept(convertCodeSystemConcept(cs, cc)); - for (ConceptDefinitionDesignationComponent cc : src.getDesignation()) - tgt.addDesignation(convertCodeSystemDesignation(cc)); - return tgt; - } - -public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent convertCodeSystemDesignation(ConceptDefinitionDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); - copyElement(src, tgt); - tgt.setUse(convertCoding(src.getUse())); - tgt.setLanguage(src.getLanguage()); - tgt.setValue(src.getValue()); - - return tgt; - } - - public org.hl7.fhir.dstu3.model.ValueSet convertValueSet(org.hl7.fhir.instance.model.ValueSet src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet tgt = new org.hl7.fhir.dstu3.model.ValueSet(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.addIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent t : src.getContact()) - tgt.addContact(convertValueSetContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setImmutable(src.getImmutable()); - tgt.setPurpose(src.getRequirements()); - tgt.setCopyright(src.getCopyright()); - tgt.setExtensible(src.getExtensible()); - if (src.hasCompose()) { - tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); - tgt.getCompose().setLockedDate(src.getLockedDate()); - } - if (src.hasCodeSystem() && advisor != null) { - org.hl7.fhir.dstu3.model.CodeSystem tgtcs = new org.hl7.fhir.dstu3.model.CodeSystem(); - copyDomainResource(src, tgtcs); - tgtcs.setUrl(src.getCodeSystem().getSystem()); - tgtcs.setIdentifier(convertIdentifier(src.getIdentifier())); - tgtcs.setVersion(src.getCodeSystem().getVersion()); - tgtcs.setName(src.getName()+" Code System"); - tgtcs.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgtcs.setExperimental(src.getExperimental()); - tgtcs.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent t : src.getContact()) - tgtcs.addContact(convertValueSetContactComponent(t)); - if (src.hasDate()) - tgtcs.setDate(src.getDate()); - tgtcs.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgtcs.addJurisdiction(convertCodeableConcept(t)); - else - tgtcs.addUseContext(convertCodeableConceptToUsageContext(t)); - tgtcs.setPurpose(src.getRequirements()); - tgtcs.setCopyright(src.getCopyright()); - tgtcs.setContent(CodeSystemContentMode.COMPLETE); - tgtcs.setCaseSensitive(src.getCodeSystem().getCaseSensitive()); - for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent cs : src.getCodeSystem().getConcept()) - processConcept(tgtcs.getConcept(), cs, tgtcs); - advisor.handleCodeSystem(tgtcs, tgt); - tgt.setUserData("r2-cs", tgtcs); - tgt.getCompose().addInclude().setSystem(tgtcs.getUrl()); - } - tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); - return tgt; - } - - private void processConcept(List concepts, org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent cs, CodeSystem tgtcs) throws FHIRException { - org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent ct = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent(); - concepts.add(ct); - ct.setCode(cs.getCode()); - ct.setDisplay(cs.getDisplay()); - ct.setDefinition(cs.getDefinition()); - if (cs.getAbstract()) - CodeSystemUtilities.setNotSelectable(tgtcs, ct); - for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent csd : cs.getDesignation()) { - org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent cst = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent(); - cst.setLanguage(csd.getLanguage()); - cst.setUse(convertCoding(csd.getUse())); - cst.setValue(csd.getValue()); - } - - for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent csc : cs.getConcept()) - processConcept(ct.getConcept(), csc, tgtcs); - } - - private void processConcept(List concepts, ConceptDefinitionComponent cs, CodeSystem srcCS) throws FHIRException { - org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent ct = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent(); - concepts.add(ct); - ct.setCode(cs.getCode()); - ct.setDisplay(cs.getDisplay()); - ct.setDefinition(cs.getDefinition()); - if (CodeSystemUtilities.isNotSelectable(srcCS, cs)) - ct.setAbstract(true); - for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent csd : cs.getDesignation()) { - org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent cst = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); - cst.setLanguage(csd.getLanguage()); - cst.setUse(convertCoding(csd.getUse())); - cst.setValue(csd.getValue()); - } - - for (ConceptDefinitionComponent csc : cs.getConcept()) - processConcept(ct.getConcept(), csc, srcCS); - } - - public org.hl7.fhir.instance.model.ValueSet convertValueSet(org.hl7.fhir.dstu3.model.ValueSet src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet tgt = new org.hl7.fhir.instance.model.ValueSet(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier i : src.getIdentifier()) - tgt.setIdentifier(convertIdentifier(i)); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertValueSetContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setLockedDate(src.getCompose().getLockedDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setImmutable(src.getImmutable()); - tgt.setRequirements(src.getPurpose()); - tgt.setCopyright(src.getCopyright()); - tgt.setExtensible(src.getExtensible()); - org.hl7.fhir.dstu3.model.CodeSystem srcCS = (CodeSystem) src.getUserData("r2-cs"); - if (srcCS == null) - srcCS = advisor.getCodeSystem(src); - if (srcCS != null) { - tgt.getCodeSystem().setSystem(srcCS.getUrl()); - tgt.getCodeSystem().setVersion(srcCS.getVersion()); - tgt.getCodeSystem().setCaseSensitive(srcCS.getCaseSensitive()); - for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent cs : srcCS.getConcept()) - processConcept(tgt.getCodeSystem().getConcept(), cs, srcCS); - - } - tgt.setCompose(convertValueSetComposeComponent(src.getCompose(), srcCS == null ? null : srcCS.getUrl())); - tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); - return tgt; - } - - private static boolean isJurisdiction(CodeableConcept t) { - return t.hasCoding() && ("http://unstats.un.org/unsd/methods/m49/m49.htm".equals(t.getCoding().get(0).getSystem()) || "urn:iso:std:iso:3166".equals(t.getCoding().get(0).getSystem()) - || "https://www.usps.com/".equals(t.getCoding().get(0).getSystem())); - } - - - public org.hl7.fhir.dstu3.model.ContactDetail convertValueSetContactComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent convertValueSetContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.UriType t : src.getImport()) - tgt.addInclude().addValueSet(t.getValue()); - for (org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent t : src.getInclude()) - tgt.addInclude(convertConceptSetComponent(t)); - for (org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent t : src.getExclude()) - tgt.addExclude(convertConceptSetComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent src, String noSystem) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getInclude()) { - for (org.hl7.fhir.dstu3.model.UriType ti : t.getValueSet()) - tgt.addImport(ti.getValue()); - if (noSystem == null || !t.getSystem().equals(noSystem)) - tgt.addInclude(convertConceptSetComponent(t)); - } - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getExclude()) - tgt.addExclude(convertConceptSetComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setVersion(src.getVersion()); - for (org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) - tgt.addConcept(convertConceptReferenceComponent(t)); - for (org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) - tgt.addFilter(convertConceptSetFilterComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setVersion(src.getVersion()); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) - tgt.addConcept(convertConceptReferenceComponent(t)); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) - tgt.addFilter(convertConceptSetFilterComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent(); - copyElement(src, tgt); - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); - copyElement(src, tgt); - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getProperty()); - tgt.setOp(convertFilterOperator(src.getOp())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getProperty()); - tgt.setOp(convertFilterOperator(src.getOp())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.instance.model.ValueSet.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISA; - case ISNOTA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.REGEX; - case IN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NOTIN; - default: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NULL; - } - } - - public org.hl7.fhir.instance.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.dstu3.model.ValueSet.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.ISA; - case ISNOTA: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.REGEX; - case IN: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.NOTIN; - default: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setTimestamp(src.getTimestamp()); - tgt.setTotal(src.getTotal()); - tgt.setOffset(src.getOffset()); - for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) - tgt.addParameter(convertValueSetExpansionParameterComponent(t)); - for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setTimestamp(src.getTimestamp()); - tgt.setTotal(src.getTotal()); - tgt.setOffset(src.getOffset()); - for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) - tgt.addParameter(convertValueSetExpansionParameterComponent(t)); - for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setAbstract(src.getAbstract()); - tgt.setVersion(src.getVersion()); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setAbstract(src.getAbstract()); - tgt.setVersion(src.getVersion()); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public org.hl7.fhir.dstu3.model.ListResource convertList(org.hl7.fhir.instance.model.List_ src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ListResource tgt = new org.hl7.fhir.dstu3.model.ListResource(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setTitle(src.getTitle()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setSource(convertReference(src.getSource())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setStatus(convertListStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - tgt.setMode(convertListMode(src.getMode())); - if (src.hasNote()) - tgt.addNote(new org.hl7.fhir.dstu3.model.Annotation().setText(src.getNote())); - for (org.hl7.fhir.instance.model.List_.ListEntryComponent t : src.getEntry()) - tgt.addEntry(convertListEntry(t)); - return tgt; - } - - - public org.hl7.fhir.dstu3.model.ListResource.ListStatus convertListStatus(org.hl7.fhir.instance.model.List_.ListStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.CURRENT; - case RETIRED: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.RETIRED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ListResource.ListMode convertListMode(org.hl7.fhir.instance.model.List_.ListMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case WORKING: return org.hl7.fhir.dstu3.model.ListResource.ListMode.WORKING; - case SNAPSHOT: return org.hl7.fhir.dstu3.model.ListResource.ListMode.SNAPSHOT; - case CHANGES: return org.hl7.fhir.dstu3.model.ListResource.ListMode.CHANGES; - default: return org.hl7.fhir.dstu3.model.ListResource.ListMode.NULL; - } - } - - public org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent convertListEntry(org.hl7.fhir.instance.model.List_.ListEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent tgt = new org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent(); - copyBackboneElement(src, tgt); - tgt.setFlag(convertCodeableConcept(src.getFlag())); - tgt.setDeleted(src.getDeleted()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setItem(convertReference(src.getItem())); - return tgt; - } - - public org.hl7.fhir.instance.model.List_ convertList(org.hl7.fhir.dstu3.model.ListResource src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.List_ tgt = new org.hl7.fhir.instance.model.List_(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setTitle(src.getTitle()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setSource(convertReference(src.getSource())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setStatus(convertListStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - tgt.setMode(convertListMode(src.getMode())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.setNote(t.getText()); - for (org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent t : src.getEntry()) - tgt.addEntry(convertListEntry(t)); - return tgt; - } - - - public org.hl7.fhir.instance.model.List_.ListStatus convertListStatus(org.hl7.fhir.dstu3.model.ListResource.ListStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.instance.model.List_.ListStatus.CURRENT; - case RETIRED: return org.hl7.fhir.instance.model.List_.ListStatus.RETIRED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.List_.ListStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.List_.ListStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.List_.ListMode convertListMode(org.hl7.fhir.dstu3.model.ListResource.ListMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case WORKING: return org.hl7.fhir.instance.model.List_.ListMode.WORKING; - case SNAPSHOT: return org.hl7.fhir.instance.model.List_.ListMode.SNAPSHOT; - case CHANGES: return org.hl7.fhir.instance.model.List_.ListMode.CHANGES; - default: return org.hl7.fhir.instance.model.List_.ListMode.NULL; - } - } - - public org.hl7.fhir.instance.model.List_.ListEntryComponent convertListEntry(org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.List_.ListEntryComponent tgt = new org.hl7.fhir.instance.model.List_.ListEntryComponent(); - copyBackboneElement(src, tgt); - tgt.setFlag(convertCodeableConcept(src.getFlag())); - tgt.setDeleted(src.getDeleted()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setItem(convertReference(src.getItem())); - return tgt; - } - - - - public org.hl7.fhir.dstu3.model.Resource convertResource(org.hl7.fhir.instance.model.Resource src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.instance.model.Parameters) - return convertParameters((org.hl7.fhir.instance.model.Parameters) src); - if (src instanceof org.hl7.fhir.instance.model.Account) - return convertAccount((org.hl7.fhir.instance.model.Account) src); - if (src instanceof org.hl7.fhir.instance.model.Appointment) - return convertAppointment((org.hl7.fhir.instance.model.Appointment) src); - if (src instanceof org.hl7.fhir.instance.model.AppointmentResponse) - return convertAppointmentResponse((org.hl7.fhir.instance.model.AppointmentResponse) src); - if (src instanceof org.hl7.fhir.instance.model.AuditEvent) - return convertAuditEvent((org.hl7.fhir.instance.model.AuditEvent) src); - if (src instanceof org.hl7.fhir.instance.model.Basic) - return convertBasic((org.hl7.fhir.instance.model.Basic) src); - if (src instanceof org.hl7.fhir.instance.model.Binary) - return convertBinary((org.hl7.fhir.instance.model.Binary) src); - if (src instanceof org.hl7.fhir.instance.model.Bundle) - return convertBundle((org.hl7.fhir.instance.model.Bundle) src); - if (src instanceof org.hl7.fhir.instance.model.CarePlan) - return convertCarePlan((org.hl7.fhir.instance.model.CarePlan) src); - if (src instanceof org.hl7.fhir.instance.model.ClinicalImpression) - return convertClinicalImpression((org.hl7.fhir.instance.model.ClinicalImpression) src); - if (src instanceof org.hl7.fhir.instance.model.Communication) - return convertCommunication((org.hl7.fhir.instance.model.Communication) src); - if (src instanceof org.hl7.fhir.instance.model.CommunicationRequest) - return convertCommunicationRequest((org.hl7.fhir.instance.model.CommunicationRequest) src); - if (src instanceof org.hl7.fhir.instance.model.Composition) - return convertComposition((org.hl7.fhir.instance.model.Composition) src); - if (src instanceof org.hl7.fhir.instance.model.ConceptMap) - return convertConceptMap((org.hl7.fhir.instance.model.ConceptMap) src); - if (src instanceof org.hl7.fhir.instance.model.Condition) - return convertCondition((org.hl7.fhir.instance.model.Condition) src); - if (src instanceof org.hl7.fhir.instance.model.Conformance) - return convertConformance((org.hl7.fhir.instance.model.Conformance) src); - if (src instanceof org.hl7.fhir.instance.model.Contract) - return convertContract((org.hl7.fhir.instance.model.Contract) src); - if (src instanceof org.hl7.fhir.instance.model.DataElement) - return convertDataElement((org.hl7.fhir.instance.model.DataElement) src); - if (src instanceof org.hl7.fhir.instance.model.DetectedIssue) - return convertDetectedIssue((org.hl7.fhir.instance.model.DetectedIssue) src); - if (src instanceof org.hl7.fhir.instance.model.Device) - return convertDevice((org.hl7.fhir.instance.model.Device) src); - if (src instanceof org.hl7.fhir.instance.model.DeviceComponent) - return convertDeviceComponent((org.hl7.fhir.instance.model.DeviceComponent) src); - if (src instanceof org.hl7.fhir.instance.model.DeviceMetric) - return convertDeviceMetric((org.hl7.fhir.instance.model.DeviceMetric) src); - if (src instanceof org.hl7.fhir.instance.model.DeviceUseStatement) - return convertDeviceUseStatement((org.hl7.fhir.instance.model.DeviceUseStatement) src); - if (src instanceof org.hl7.fhir.instance.model.DiagnosticReport) - return convertDiagnosticReport((org.hl7.fhir.instance.model.DiagnosticReport) src); - if (src instanceof org.hl7.fhir.instance.model.DocumentManifest) - return convertDocumentManifest((org.hl7.fhir.instance.model.DocumentManifest) src); - if (src instanceof org.hl7.fhir.instance.model.DocumentReference) - return convertDocumentReference((org.hl7.fhir.instance.model.DocumentReference) src); - if (src instanceof org.hl7.fhir.instance.model.Encounter) - return convertEncounter((org.hl7.fhir.instance.model.Encounter) src); - if (src instanceof org.hl7.fhir.instance.model.EnrollmentRequest) - return convertEnrollmentRequest((org.hl7.fhir.instance.model.EnrollmentRequest) src); - if (src instanceof org.hl7.fhir.instance.model.EnrollmentResponse) - return convertEnrollmentResponse((org.hl7.fhir.instance.model.EnrollmentResponse) src); - if (src instanceof org.hl7.fhir.instance.model.EpisodeOfCare) - return convertEpisodeOfCare((org.hl7.fhir.instance.model.EpisodeOfCare) src); - if (src instanceof org.hl7.fhir.instance.model.FamilyMemberHistory) - return convertFamilyMemberHistory((org.hl7.fhir.instance.model.FamilyMemberHistory) src); - if (src instanceof org.hl7.fhir.instance.model.Flag) - return convertFlag((org.hl7.fhir.instance.model.Flag) src); - if (src instanceof org.hl7.fhir.instance.model.Group) - return convertGroup((org.hl7.fhir.instance.model.Group) src); - if (src instanceof org.hl7.fhir.instance.model.HealthcareService) - return convertHealthcareService((org.hl7.fhir.instance.model.HealthcareService) src); - if (src instanceof org.hl7.fhir.instance.model.ImagingStudy) - return convertImagingStudy((org.hl7.fhir.instance.model.ImagingStudy) src); - if (src instanceof org.hl7.fhir.instance.model.Immunization) - return convertImmunization((org.hl7.fhir.instance.model.Immunization) src); - if (src instanceof org.hl7.fhir.instance.model.ImmunizationRecommendation) - return convertImmunizationRecommendation((org.hl7.fhir.instance.model.ImmunizationRecommendation) src); - if (src instanceof org.hl7.fhir.instance.model.ImplementationGuide) - return convertImplementationGuide((org.hl7.fhir.instance.model.ImplementationGuide) src); - if (src instanceof org.hl7.fhir.instance.model.List_) - return convertList((org.hl7.fhir.instance.model.List_) src); - if (src instanceof org.hl7.fhir.instance.model.Location) - return convertLocation((org.hl7.fhir.instance.model.Location) src); - if (src instanceof org.hl7.fhir.instance.model.Media) - return convertMedia((org.hl7.fhir.instance.model.Media) src); - if (src instanceof org.hl7.fhir.instance.model.Medication) - return convertMedication((org.hl7.fhir.instance.model.Medication) src); - if (src instanceof org.hl7.fhir.instance.model.MedicationDispense) - return convertMedicationDispense((org.hl7.fhir.instance.model.MedicationDispense) src); -// if (src instanceof org.hl7.fhir.instance.model.MedicationOrder) -// return convertMedicationOrder((org.hl7.fhir.instance.model.MedicationOrder) src); - if (src instanceof org.hl7.fhir.instance.model.MedicationStatement) - return convertMedicationStatement((org.hl7.fhir.instance.model.MedicationStatement) src); - if (src instanceof org.hl7.fhir.instance.model.MessageHeader) - return convertMessageHeader((org.hl7.fhir.instance.model.MessageHeader) src); - if (src instanceof org.hl7.fhir.instance.model.NamingSystem) - return convertNamingSystem((org.hl7.fhir.instance.model.NamingSystem) src); - if (src instanceof org.hl7.fhir.instance.model.Observation) - return convertObservation((org.hl7.fhir.instance.model.Observation) src); - if (src instanceof org.hl7.fhir.instance.model.OperationDefinition) - return convertOperationDefinition((org.hl7.fhir.instance.model.OperationDefinition) src); - if (src instanceof org.hl7.fhir.instance.model.OperationOutcome) - return convertOperationOutcome((org.hl7.fhir.instance.model.OperationOutcome) src); - if (src instanceof org.hl7.fhir.instance.model.Organization) - return convertOrganization((org.hl7.fhir.instance.model.Organization) src); - if (src instanceof org.hl7.fhir.instance.model.Patient) - return convertPatient((org.hl7.fhir.instance.model.Patient) src); - if (src instanceof org.hl7.fhir.instance.model.Person) - return convertPerson((org.hl7.fhir.instance.model.Person) src); - if (src instanceof org.hl7.fhir.instance.model.Practitioner) - return convertPractitioner((org.hl7.fhir.instance.model.Practitioner) src); - if (src instanceof org.hl7.fhir.instance.model.Procedure) - return convertProcedure((org.hl7.fhir.instance.model.Procedure) src); - if (src instanceof org.hl7.fhir.instance.model.ProcedureRequest) - return convertProcedureRequest((org.hl7.fhir.instance.model.ProcedureRequest) src); - if (src instanceof org.hl7.fhir.instance.model.Provenance) - return convertProvenance((org.hl7.fhir.instance.model.Provenance) src); - if (src instanceof org.hl7.fhir.instance.model.Questionnaire) - return convertQuestionnaire((org.hl7.fhir.instance.model.Questionnaire) src); - if (src instanceof org.hl7.fhir.instance.model.QuestionnaireResponse) - return convertQuestionnaireResponse((org.hl7.fhir.instance.model.QuestionnaireResponse) src); - if (src instanceof org.hl7.fhir.instance.model.ReferralRequest) - return convertReferralRequest((org.hl7.fhir.instance.model.ReferralRequest) src); - if (src instanceof org.hl7.fhir.instance.model.RelatedPerson) - return convertRelatedPerson((org.hl7.fhir.instance.model.RelatedPerson) src); - if (src instanceof org.hl7.fhir.instance.model.RiskAssessment) - return convertRiskAssessment((org.hl7.fhir.instance.model.RiskAssessment) src); - if (src instanceof org.hl7.fhir.instance.model.Schedule) - return convertSchedule((org.hl7.fhir.instance.model.Schedule) src); - if (src instanceof org.hl7.fhir.instance.model.SearchParameter) - return convertSearchParameter((org.hl7.fhir.instance.model.SearchParameter) src); - if (src instanceof org.hl7.fhir.instance.model.Slot) - return convertSlot((org.hl7.fhir.instance.model.Slot) src); - if (src instanceof org.hl7.fhir.instance.model.StructureDefinition) - return convertStructureDefinition((org.hl7.fhir.instance.model.StructureDefinition) src); - if (src instanceof org.hl7.fhir.instance.model.Subscription) - return convertSubscription((org.hl7.fhir.instance.model.Subscription) src); - if (src instanceof org.hl7.fhir.instance.model.Substance) - return convertSubstance((org.hl7.fhir.instance.model.Substance) src); - if (src instanceof org.hl7.fhir.instance.model.SupplyDelivery) - return convertSupplyDelivery((org.hl7.fhir.instance.model.SupplyDelivery) src); - if (src instanceof org.hl7.fhir.instance.model.SupplyRequest) - return convertSupplyRequest((org.hl7.fhir.instance.model.SupplyRequest) src); - if (src instanceof org.hl7.fhir.instance.model.TestScript) - return convertTestScript((org.hl7.fhir.instance.model.TestScript) src); - if (src instanceof org.hl7.fhir.instance.model.ValueSet) - return convertValueSet((org.hl7.fhir.instance.model.ValueSet) src); - throw new Error("Unknown resource "+src.fhirType()); - } - - public org.hl7.fhir.instance.model.Resource convertResource(org.hl7.fhir.dstu3.model.Resource src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.dstu3.model.Parameters) - return convertParameters((org.hl7.fhir.dstu3.model.Parameters) src); - if (src instanceof org.hl7.fhir.dstu3.model.Appointment) - return convertAppointment((org.hl7.fhir.dstu3.model.Appointment) src); - if (src instanceof org.hl7.fhir.dstu3.model.AppointmentResponse) - return convertAppointmentResponse((org.hl7.fhir.dstu3.model.AppointmentResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.AuditEvent) - return convertAuditEvent((org.hl7.fhir.dstu3.model.AuditEvent) src); - if (src instanceof org.hl7.fhir.dstu3.model.Basic) - return convertBasic((org.hl7.fhir.dstu3.model.Basic) src); - if (src instanceof org.hl7.fhir.dstu3.model.Binary) - return convertBinary((org.hl7.fhir.dstu3.model.Binary) src); - if (src instanceof org.hl7.fhir.dstu3.model.Bundle) - return convertBundle((org.hl7.fhir.dstu3.model.Bundle) src); - if (src instanceof org.hl7.fhir.dstu3.model.CarePlan) - return convertCarePlan((org.hl7.fhir.dstu3.model.CarePlan) src); - if (src instanceof org.hl7.fhir.dstu3.model.ClinicalImpression) - return convertClinicalImpression((org.hl7.fhir.dstu3.model.ClinicalImpression) src); - if (src instanceof org.hl7.fhir.dstu3.model.Communication) - return convertCommunication((org.hl7.fhir.dstu3.model.Communication) src); - if (src instanceof org.hl7.fhir.dstu3.model.CommunicationRequest) - return convertCommunicationRequest((org.hl7.fhir.dstu3.model.CommunicationRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.Composition) - return convertComposition((org.hl7.fhir.dstu3.model.Composition) src); - if (src instanceof org.hl7.fhir.dstu3.model.ConceptMap) - return convertConceptMap((org.hl7.fhir.dstu3.model.ConceptMap) src); - if (src instanceof org.hl7.fhir.dstu3.model.Condition) - return convertCondition((org.hl7.fhir.dstu3.model.Condition) src); - if (src instanceof org.hl7.fhir.dstu3.model.CapabilityStatement) - return convertConformance((org.hl7.fhir.dstu3.model.CapabilityStatement) src); - if (src instanceof org.hl7.fhir.dstu3.model.Contract) - return convertContract((org.hl7.fhir.dstu3.model.Contract) src); - if (src instanceof org.hl7.fhir.dstu3.model.DataElement) - return convertDataElement((org.hl7.fhir.dstu3.model.DataElement) src); - if (src instanceof org.hl7.fhir.dstu3.model.DetectedIssue) - return convertDetectedIssue((org.hl7.fhir.dstu3.model.DetectedIssue) src); - if (src instanceof org.hl7.fhir.dstu3.model.Device) - return convertDevice((org.hl7.fhir.dstu3.model.Device) src); - if (src instanceof org.hl7.fhir.dstu3.model.DeviceComponent) - return convertDeviceComponent((org.hl7.fhir.dstu3.model.DeviceComponent) src); - if (src instanceof org.hl7.fhir.dstu3.model.DeviceMetric) - return convertDeviceMetric((org.hl7.fhir.dstu3.model.DeviceMetric) src); - if (src instanceof org.hl7.fhir.dstu3.model.DeviceUseStatement) - return convertDeviceUseStatement((org.hl7.fhir.dstu3.model.DeviceUseStatement) src); - if (src instanceof org.hl7.fhir.dstu3.model.DiagnosticReport) - return convertDiagnosticReport((org.hl7.fhir.dstu3.model.DiagnosticReport) src); - if (src instanceof org.hl7.fhir.dstu3.model.DocumentManifest) - return convertDocumentManifest((org.hl7.fhir.dstu3.model.DocumentManifest) src); - if (src instanceof org.hl7.fhir.dstu3.model.DocumentReference) - return convertDocumentReference((org.hl7.fhir.dstu3.model.DocumentReference) src); - if (src instanceof org.hl7.fhir.dstu3.model.Encounter) - return convertEncounter((org.hl7.fhir.dstu3.model.Encounter) src); - if (src instanceof org.hl7.fhir.dstu3.model.EnrollmentRequest) - return convertEnrollmentRequest((org.hl7.fhir.dstu3.model.EnrollmentRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.EnrollmentResponse) - return convertEnrollmentResponse((org.hl7.fhir.dstu3.model.EnrollmentResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.EpisodeOfCare) - return convertEpisodeOfCare((org.hl7.fhir.dstu3.model.EpisodeOfCare) src); - if (src instanceof org.hl7.fhir.dstu3.model.FamilyMemberHistory) - return convertFamilyMemberHistory((org.hl7.fhir.dstu3.model.FamilyMemberHistory) src); - if (src instanceof org.hl7.fhir.dstu3.model.Flag) - return convertFlag((org.hl7.fhir.dstu3.model.Flag) src); - if (src instanceof org.hl7.fhir.dstu3.model.Group) - return convertGroup((org.hl7.fhir.dstu3.model.Group) src); - if (src instanceof org.hl7.fhir.dstu3.model.HealthcareService) - return convertHealthcareService((org.hl7.fhir.dstu3.model.HealthcareService) src); - if (src instanceof org.hl7.fhir.dstu3.model.ImagingStudy) - return convertImagingStudy((org.hl7.fhir.dstu3.model.ImagingStudy) src); - if (src instanceof org.hl7.fhir.dstu3.model.Immunization) - return convertImmunization((org.hl7.fhir.dstu3.model.Immunization) src); - if (src instanceof org.hl7.fhir.dstu3.model.ImmunizationRecommendation) - return convertImmunizationRecommendation((org.hl7.fhir.dstu3.model.ImmunizationRecommendation) src); - if (src instanceof org.hl7.fhir.dstu3.model.ImplementationGuide) - return convertImplementationGuide((org.hl7.fhir.dstu3.model.ImplementationGuide) src); - if (src instanceof org.hl7.fhir.dstu3.model.ListResource) - return convertList((org.hl7.fhir.dstu3.model.ListResource) src); - if (src instanceof org.hl7.fhir.dstu3.model.Location) - return convertLocation((org.hl7.fhir.dstu3.model.Location) src); - if (src instanceof org.hl7.fhir.dstu3.model.Media) - return convertMedia((org.hl7.fhir.dstu3.model.Media) src); - if (src instanceof org.hl7.fhir.dstu3.model.Medication) - return convertMedication((org.hl7.fhir.dstu3.model.Medication) src); - if (src instanceof org.hl7.fhir.dstu3.model.MedicationDispense) - return convertMedicationDispense((org.hl7.fhir.dstu3.model.MedicationDispense) src); -// if (src instanceof org.hl7.fhir.dstu3.model.MedicationOrder) -// return convertMedicationOrder((org.hl7.fhir.dstu3.model.MedicationOrder) src); - if (src instanceof org.hl7.fhir.dstu3.model.MedicationStatement) - return convertMedicationStatement((org.hl7.fhir.dstu3.model.MedicationStatement) src); - if (src instanceof org.hl7.fhir.dstu3.model.MessageHeader) - return convertMessageHeader((org.hl7.fhir.dstu3.model.MessageHeader) src); - if (src instanceof org.hl7.fhir.dstu3.model.NamingSystem) - return convertNamingSystem((org.hl7.fhir.dstu3.model.NamingSystem) src); - if (src instanceof org.hl7.fhir.dstu3.model.Observation) - return convertObservation((org.hl7.fhir.dstu3.model.Observation) src); - if (src instanceof org.hl7.fhir.dstu3.model.OperationDefinition) - return convertOperationDefinition((org.hl7.fhir.dstu3.model.OperationDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.OperationOutcome) - return convertOperationOutcome((org.hl7.fhir.dstu3.model.OperationOutcome) src); - if (src instanceof org.hl7.fhir.dstu3.model.Organization) - return convertOrganization((org.hl7.fhir.dstu3.model.Organization) src); - if (src instanceof org.hl7.fhir.dstu3.model.Patient) - return convertPatient((org.hl7.fhir.dstu3.model.Patient) src); - if (src instanceof org.hl7.fhir.dstu3.model.Person) - return convertPerson((org.hl7.fhir.dstu3.model.Person) src); - if (src instanceof org.hl7.fhir.dstu3.model.Practitioner) - return convertPractitioner((org.hl7.fhir.dstu3.model.Practitioner) src); - if (src instanceof org.hl7.fhir.dstu3.model.Procedure) - return convertProcedure((org.hl7.fhir.dstu3.model.Procedure) src); - if (src instanceof org.hl7.fhir.dstu3.model.ProcedureRequest) - return convertProcedureRequest((org.hl7.fhir.dstu3.model.ProcedureRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.Provenance) - return convertProvenance((org.hl7.fhir.dstu3.model.Provenance) src); - if (src instanceof org.hl7.fhir.dstu3.model.Questionnaire) - return convertQuestionnaire((org.hl7.fhir.dstu3.model.Questionnaire) src); - if (src instanceof org.hl7.fhir.dstu3.model.QuestionnaireResponse) - return convertQuestionnaireResponse((org.hl7.fhir.dstu3.model.QuestionnaireResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.ReferralRequest) - return convertReferralRequest((org.hl7.fhir.dstu3.model.ReferralRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.RelatedPerson) - return convertRelatedPerson((org.hl7.fhir.dstu3.model.RelatedPerson) src); - if (src instanceof org.hl7.fhir.dstu3.model.RiskAssessment) - return convertRiskAssessment((org.hl7.fhir.dstu3.model.RiskAssessment) src); - if (src instanceof org.hl7.fhir.dstu3.model.Schedule) - return convertSchedule((org.hl7.fhir.dstu3.model.Schedule) src); - if (src instanceof org.hl7.fhir.dstu3.model.SearchParameter) - return convertSearchParameter((org.hl7.fhir.dstu3.model.SearchParameter) src); - if (src instanceof org.hl7.fhir.dstu3.model.Slot) - return convertSlot((org.hl7.fhir.dstu3.model.Slot) src); - if (src instanceof org.hl7.fhir.dstu3.model.StructureDefinition) - return convertStructureDefinition((org.hl7.fhir.dstu3.model.StructureDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.Subscription) - return convertSubscription((org.hl7.fhir.dstu3.model.Subscription) src); - if (src instanceof org.hl7.fhir.dstu3.model.Substance) - return convertSubstance((org.hl7.fhir.dstu3.model.Substance) src); - if (src instanceof org.hl7.fhir.dstu3.model.SupplyDelivery) - return convertSupplyDelivery((org.hl7.fhir.dstu3.model.SupplyDelivery) src); - if (src instanceof org.hl7.fhir.dstu3.model.SupplyRequest) - return convertSupplyRequest((org.hl7.fhir.dstu3.model.SupplyRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.TestScript) - return convertTestScript((org.hl7.fhir.dstu3.model.TestScript) src); - if (src instanceof org.hl7.fhir.dstu3.model.ValueSet) - return convertValueSet((org.hl7.fhir.dstu3.model.ValueSet) src); - throw new Error("Unknown resource "+src.fhirType()); - } - -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + +import java.util.ArrayList; +import java.util.List; + +import org.apache.commons.codec.binary.Base64; +import org.hl7.fhir.instance.model.CodeableConcept; +import org.hl7.fhir.instance.model.Reference; +import org.hl7.fhir.instance.utils.ToolingExtensions; +import org.hl7.fhir.dstu3.conformance.ProfileUtilities; +import org.hl7.fhir.dstu3.model.Annotation; +import org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction; +import org.hl7.fhir.dstu3.model.CodeSystem; +import org.hl7.fhir.dstu3.model.Coding; +import org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode; +import org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent; +import org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent; +import org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority; +import org.hl7.fhir.dstu3.model.ConceptMap; +import org.hl7.fhir.dstu3.model.ContactDetail; +import org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent; +import org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent; +import org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus; +import org.hl7.fhir.dstu3.model.Dosage; +import org.hl7.fhir.dstu3.model.ElementDefinition; +import org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent; +import org.hl7.fhir.dstu3.model.Enumeration; +import org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent; +import org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority; +import org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind; +import org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule; +import org.hl7.fhir.dstu3.model.Timing.EventTiming; +import org.hl7.fhir.dstu3.model.UriType; +import org.hl7.fhir.dstu3.terminologies.CodeSystemUtilities; +import org.hl7.fhir.exceptions.FHIRException; +import org.hl7.fhir.utilities.Utilities; + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + */ + +// Generated on Thu, Apr 7, 2016 02:14+1000 for FHIR v1.4.0 + + +public class VersionConvertor_10_30 { + + public VersionConvertorAdvisor30 advisor; + + public VersionConvertor_10_30(VersionConvertorAdvisor30 advisor) { + super(); + this.advisor = advisor; + } + + public void copyElement(org.hl7.fhir.instance.model.Element src, org.hl7.fhir.dstu3.model.Element tgt) throws FHIRException { + tgt.setId(src.getId()); + for (org.hl7.fhir.instance.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + public void copyElement(org.hl7.fhir.dstu3.model.Element src, org.hl7.fhir.instance.model.Element tgt) throws FHIRException { + tgt.setId(src.getId()); + for (org.hl7.fhir.dstu3.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + public void copyElement(org.hl7.fhir.dstu3.model.DomainResource src, org.hl7.fhir.instance.model.Element tgt) throws FHIRException { + tgt.setId(src.getId()); + for (org.hl7.fhir.dstu3.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + public void copyBackboneElement(org.hl7.fhir.instance.model.BackboneElement src, org.hl7.fhir.dstu3.model.BackboneElement tgt) throws FHIRException { + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Extension e : src.getModifierExtension()) { + tgt.addModifierExtension(convertExtension(e)); + } + } + + public void copyBackboneElement(org.hl7.fhir.dstu3.model.BackboneElement src, org.hl7.fhir.instance.model.BackboneElement tgt) throws FHIRException { + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Extension e : src.getModifierExtension()) { + tgt.addModifierExtension(convertExtension(e)); + } + } + + public org.hl7.fhir.dstu3.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.instance.model.Base64BinaryType src) throws FHIRException { + org.hl7.fhir.dstu3.model.Base64BinaryType tgt = new org.hl7.fhir.dstu3.model.Base64BinaryType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.dstu3.model.Base64BinaryType src) throws FHIRException { + org.hl7.fhir.instance.model.Base64BinaryType tgt = new org.hl7.fhir.instance.model.Base64BinaryType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.BooleanType convertBoolean(org.hl7.fhir.instance.model.BooleanType src) throws FHIRException { + org.hl7.fhir.dstu3.model.BooleanType tgt = new org.hl7.fhir.dstu3.model.BooleanType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.BooleanType convertBoolean(org.hl7.fhir.dstu3.model.BooleanType src) throws FHIRException { + org.hl7.fhir.instance.model.BooleanType tgt = new org.hl7.fhir.instance.model.BooleanType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CodeType convertCode(org.hl7.fhir.instance.model.CodeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.CodeType tgt = new org.hl7.fhir.dstu3.model.CodeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.CodeType convertCode(org.hl7.fhir.dstu3.model.CodeType src) throws FHIRException { + org.hl7.fhir.instance.model.CodeType tgt = new org.hl7.fhir.instance.model.CodeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.UriType convertCodeToUri(org.hl7.fhir.instance.model.CodeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.UriType tgt = new org.hl7.fhir.dstu3.model.UriType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.CodeType convertUriToCode(org.hl7.fhir.dstu3.model.UriType src) throws FHIRException { + org.hl7.fhir.instance.model.CodeType tgt = new org.hl7.fhir.instance.model.CodeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DateType convertDate(org.hl7.fhir.instance.model.DateType src) throws FHIRException { + org.hl7.fhir.dstu3.model.DateType tgt = new org.hl7.fhir.dstu3.model.DateType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DateType convertDate(org.hl7.fhir.instance.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.DateType tgt = new org.hl7.fhir.dstu3.model.DateType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.DateType convertDate(org.hl7.fhir.dstu3.model.DateType src) throws FHIRException { + org.hl7.fhir.instance.model.DateType tgt = new org.hl7.fhir.instance.model.DateType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.DateType convertDate(org.hl7.fhir.dstu3.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.instance.model.DateType tgt = new org.hl7.fhir.instance.model.DateType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DateTimeType convertDateTime(org.hl7.fhir.instance.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.DateTimeType tgt = new org.hl7.fhir.dstu3.model.DateTimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.DateTimeType convertDateTime(org.hl7.fhir.dstu3.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.instance.model.DateTimeType tgt = new org.hl7.fhir.instance.model.DateTimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DecimalType convertDecimal(org.hl7.fhir.instance.model.DecimalType src) throws FHIRException { + org.hl7.fhir.dstu3.model.DecimalType tgt = new org.hl7.fhir.dstu3.model.DecimalType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.DecimalType convertDecimal(org.hl7.fhir.dstu3.model.DecimalType src) throws FHIRException { + org.hl7.fhir.instance.model.DecimalType tgt = new org.hl7.fhir.instance.model.DecimalType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.IdType convertId(org.hl7.fhir.instance.model.IdType src) throws FHIRException { + org.hl7.fhir.dstu3.model.IdType tgt = new org.hl7.fhir.dstu3.model.IdType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.IdType convertId(org.hl7.fhir.dstu3.model.IdType src) throws FHIRException { + org.hl7.fhir.instance.model.IdType tgt = new org.hl7.fhir.instance.model.IdType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.InstantType convertInstant(org.hl7.fhir.instance.model.InstantType src) throws FHIRException { + org.hl7.fhir.dstu3.model.InstantType tgt = new org.hl7.fhir.dstu3.model.InstantType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.InstantType convertInstant(org.hl7.fhir.dstu3.model.InstantType src) throws FHIRException { + org.hl7.fhir.instance.model.InstantType tgt = new org.hl7.fhir.instance.model.InstantType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.IntegerType convertInteger(org.hl7.fhir.instance.model.IntegerType src) throws FHIRException { + org.hl7.fhir.dstu3.model.IntegerType tgt = new org.hl7.fhir.dstu3.model.IntegerType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.IntegerType convertInteger(org.hl7.fhir.dstu3.model.IntegerType src) throws FHIRException { + org.hl7.fhir.instance.model.IntegerType tgt = new org.hl7.fhir.instance.model.IntegerType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.MarkdownType convertMarkdown(org.hl7.fhir.instance.model.MarkdownType src) throws FHIRException { + org.hl7.fhir.dstu3.model.MarkdownType tgt = new org.hl7.fhir.dstu3.model.MarkdownType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.MarkdownType convertMarkdown(org.hl7.fhir.dstu3.model.MarkdownType src) throws FHIRException { + org.hl7.fhir.instance.model.MarkdownType tgt = new org.hl7.fhir.instance.model.MarkdownType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.OidType convertOid(org.hl7.fhir.instance.model.OidType src) throws FHIRException { + org.hl7.fhir.dstu3.model.OidType tgt = new org.hl7.fhir.dstu3.model.OidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.OidType convertOid(org.hl7.fhir.dstu3.model.OidType src) throws FHIRException { + org.hl7.fhir.instance.model.OidType tgt = new org.hl7.fhir.instance.model.OidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.PositiveIntType convertPositiveInt(org.hl7.fhir.instance.model.PositiveIntType src) throws FHIRException { + org.hl7.fhir.dstu3.model.PositiveIntType tgt = new org.hl7.fhir.dstu3.model.PositiveIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.PositiveIntType convertPositiveInt(org.hl7.fhir.dstu3.model.PositiveIntType src) throws FHIRException { + org.hl7.fhir.instance.model.PositiveIntType tgt = new org.hl7.fhir.instance.model.PositiveIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.StringType convertString(org.hl7.fhir.instance.model.StringType src) throws FHIRException { + org.hl7.fhir.dstu3.model.StringType tgt = new org.hl7.fhir.dstu3.model.StringType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.StringType convertString(org.hl7.fhir.dstu3.model.StringType src) throws FHIRException { + org.hl7.fhir.instance.model.StringType tgt = new org.hl7.fhir.instance.model.StringType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TimeType convertTime(org.hl7.fhir.instance.model.TimeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.TimeType tgt = new org.hl7.fhir.dstu3.model.TimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.TimeType convertTime(org.hl7.fhir.dstu3.model.TimeType src) throws FHIRException { + org.hl7.fhir.instance.model.TimeType tgt = new org.hl7.fhir.instance.model.TimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.instance.model.UnsignedIntType src) throws FHIRException { + org.hl7.fhir.dstu3.model.UnsignedIntType tgt = new org.hl7.fhir.dstu3.model.UnsignedIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.dstu3.model.UnsignedIntType src) throws FHIRException { + org.hl7.fhir.instance.model.UnsignedIntType tgt = new org.hl7.fhir.instance.model.UnsignedIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.UriType convertUri(org.hl7.fhir.instance.model.UriType src) throws FHIRException { + org.hl7.fhir.dstu3.model.UriType tgt = new org.hl7.fhir.dstu3.model.UriType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.UriType convertUri(org.hl7.fhir.dstu3.model.UriType src) throws FHIRException { + org.hl7.fhir.instance.model.UriType tgt = new org.hl7.fhir.instance.model.UriType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.UuidType convertUuid(org.hl7.fhir.instance.model.UuidType src) throws FHIRException { + org.hl7.fhir.dstu3.model.UuidType tgt = new org.hl7.fhir.dstu3.model.UuidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.UuidType convertUuid(org.hl7.fhir.dstu3.model.UuidType src) throws FHIRException { + org.hl7.fhir.instance.model.UuidType tgt = new org.hl7.fhir.instance.model.UuidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Extension convertExtension(org.hl7.fhir.instance.model.Extension src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Extension tgt = new org.hl7.fhir.dstu3.model.Extension(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public org.hl7.fhir.instance.model.Extension convertExtension(org.hl7.fhir.dstu3.model.Extension src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Extension tgt = new org.hl7.fhir.instance.model.Extension(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Narrative convertNarrative(org.hl7.fhir.instance.model.Narrative src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Narrative tgt = new org.hl7.fhir.dstu3.model.Narrative(); + copyElement(src, tgt); + tgt.setStatus(convertNarrativeStatus(src.getStatus())); + tgt.setDiv(src.getDiv()); + return tgt; + } + + public org.hl7.fhir.instance.model.Narrative convertNarrative(org.hl7.fhir.dstu3.model.Narrative src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Narrative tgt = new org.hl7.fhir.instance.model.Narrative(); + copyElement(src, tgt); + tgt.setStatus(convertNarrativeStatus(src.getStatus())); + tgt.setDiv(src.getDiv()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.instance.model.Narrative.NarrativeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GENERATED: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.GENERATED; + case EXTENSIONS: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EXTENSIONS; + case ADDITIONAL: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.ADDITIONAL; + case EMPTY: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EMPTY; + default: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GENERATED: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.GENERATED; + case EXTENSIONS: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.EXTENSIONS; + case ADDITIONAL: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.ADDITIONAL; + case EMPTY: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.EMPTY; + default: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Annotation convertAnnotation(org.hl7.fhir.instance.model.Annotation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Annotation tgt = new org.hl7.fhir.dstu3.model.Annotation(); + copyElement(src, tgt); + tgt.setAuthor(convertType(src.getAuthor())); + tgt.setTime(src.getTime()); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.instance.model.Annotation convertAnnotation(org.hl7.fhir.dstu3.model.Annotation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Annotation tgt = new org.hl7.fhir.instance.model.Annotation(); + copyElement(src, tgt); + tgt.setAuthor(convertType(src.getAuthor())); + tgt.setTime(src.getTime()); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Attachment convertAttachment(org.hl7.fhir.instance.model.Attachment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Attachment tgt = new org.hl7.fhir.dstu3.model.Attachment(); + copyElement(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setLanguage(src.getLanguage()); + tgt.setData(src.getData()); + tgt.setUrl(src.getUrl()); + tgt.setSize(src.getSize()); + tgt.setHash(src.getHash()); + tgt.setTitle(src.getTitle()); + tgt.setCreation(src.getCreation()); + return tgt; + } + + public org.hl7.fhir.instance.model.Attachment convertAttachment(org.hl7.fhir.dstu3.model.Attachment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Attachment tgt = new org.hl7.fhir.instance.model.Attachment(); + copyElement(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setLanguage(src.getLanguage()); + tgt.setData(src.getData()); + tgt.setUrl(src.getUrl()); + tgt.setSize(src.getSize()); + tgt.setHash(src.getHash()); + tgt.setTitle(src.getTitle()); + tgt.setCreation(src.getCreation()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.instance.model.CodeableConcept src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CodeableConcept tgt = new org.hl7.fhir.dstu3.model.CodeableConcept(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Coding t : src.getCoding()) + tgt.addCoding(convertCoding(t)); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.instance.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.dstu3.model.CodeableConcept src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CodeableConcept tgt = new org.hl7.fhir.instance.model.CodeableConcept(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCoding()) + tgt.addCoding(convertCoding(t)); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Coding convertCoding(org.hl7.fhir.instance.model.Coding src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Coding tgt = new org.hl7.fhir.dstu3.model.Coding(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setVersion(src.getVersion()); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + tgt.setUserSelected(src.getUserSelected()); + return tgt; + } + + public org.hl7.fhir.instance.model.Coding convertCoding(org.hl7.fhir.dstu3.model.Coding src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Coding tgt = new org.hl7.fhir.instance.model.Coding(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setVersion(src.getVersion()); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + tgt.setUserSelected(src.getUserSelected()); + return tgt; + } + + + + public org.hl7.fhir.dstu3.model.Identifier convertIdentifier(org.hl7.fhir.instance.model.Identifier src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Identifier tgt = new org.hl7.fhir.dstu3.model.Identifier(); + copyElement(src, tgt); + tgt.setUse(convertIdentifierUse(src.getUse())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setSystem(src.getSystem()); + tgt.setValue(src.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setAssigner(convertReference(src.getAssigner())); + return tgt; + } + + public org.hl7.fhir.instance.model.Identifier convertIdentifier(org.hl7.fhir.dstu3.model.Identifier src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Identifier tgt = new org.hl7.fhir.instance.model.Identifier(); + copyElement(src, tgt); + if (src.hasUse()) + tgt.setUse(convertIdentifierUse(src.getUse())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasAssigner()) + tgt.setAssigner(convertReference(src.getAssigner())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.instance.model.Identifier.IdentifierUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.USUAL; + case OFFICIAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.OFFICIAL; + case TEMP: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.TEMP; + case SECONDARY: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.SECONDARY; + default: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.NULL; + } + } + + public org.hl7.fhir.instance.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.dstu3.model.Identifier.IdentifierUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.USUAL; + case OFFICIAL: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.OFFICIAL; + case TEMP: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.TEMP; + case SECONDARY: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.SECONDARY; + default: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Period convertPeriod(org.hl7.fhir.instance.model.Period src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Period tgt = new org.hl7.fhir.dstu3.model.Period(); + copyElement(src, tgt); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + return tgt; + } + + public org.hl7.fhir.instance.model.Period convertPeriod(org.hl7.fhir.dstu3.model.Period src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Period tgt = new org.hl7.fhir.instance.model.Period(); + copyElement(src, tgt); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Quantity convertQuantity(org.hl7.fhir.instance.model.Quantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Quantity tgt = new org.hl7.fhir.dstu3.model.Quantity(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Quantity convertQuantity(org.hl7.fhir.dstu3.model.Quantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Quantity tgt = new org.hl7.fhir.instance.model.Quantity(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.instance.model.Quantity.QuantityComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LESS_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_THAN; + case LESS_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_OR_EQUAL; + case GREATER_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; + case GREATER_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_THAN; + default: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.NULL; + } + } + + public org.hl7.fhir.instance.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.dstu3.model.Quantity.QuantityComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LESS_THAN: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.LESS_THAN; + case LESS_OR_EQUAL: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.LESS_OR_EQUAL; + case GREATER_OR_EQUAL: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; + case GREATER_THAN: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.GREATER_THAN; + default: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Range convertRange(org.hl7.fhir.instance.model.Range src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Range tgt = new org.hl7.fhir.dstu3.model.Range(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + return tgt; + } + + public org.hl7.fhir.instance.model.Range convertRange(org.hl7.fhir.dstu3.model.Range src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Range tgt = new org.hl7.fhir.instance.model.Range(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Ratio convertRatio(org.hl7.fhir.instance.model.Ratio src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Ratio tgt = new org.hl7.fhir.dstu3.model.Ratio(); + copyElement(src, tgt); + tgt.setNumerator(convertQuantity(src.getNumerator())); + tgt.setDenominator(convertQuantity(src.getDenominator())); + return tgt; + } + + public org.hl7.fhir.instance.model.Ratio convertRatio(org.hl7.fhir.dstu3.model.Ratio src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Ratio tgt = new org.hl7.fhir.instance.model.Ratio(); + copyElement(src, tgt); + tgt.setNumerator(convertQuantity(src.getNumerator())); + tgt.setDenominator(convertQuantity(src.getDenominator())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Reference convertReference(org.hl7.fhir.instance.model.Reference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Reference tgt = new org.hl7.fhir.dstu3.model.Reference(); + copyElement(src, tgt); + tgt.setReference(src.getReference()); + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public org.hl7.fhir.instance.model.Reference convertReference(org.hl7.fhir.dstu3.model.Reference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Reference tgt = new org.hl7.fhir.instance.model.Reference(); + copyElement(src, tgt); + tgt.setReference(src.getReference()); + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.SampledData convertSampledData(org.hl7.fhir.instance.model.SampledData src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.SampledData tgt = new org.hl7.fhir.dstu3.model.SampledData(); + copyElement(src, tgt); + tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); + tgt.setPeriod(src.getPeriod()); + tgt.setFactor(src.getFactor()); + tgt.setLowerLimit(src.getLowerLimit()); + tgt.setUpperLimit(src.getUpperLimit()); + tgt.setDimensions(src.getDimensions()); + tgt.setData(src.getData()); + return tgt; + } + + public org.hl7.fhir.instance.model.SampledData convertSampledData(org.hl7.fhir.dstu3.model.SampledData src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SampledData tgt = new org.hl7.fhir.instance.model.SampledData(); + copyElement(src, tgt); + tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); + tgt.setPeriod(src.getPeriod()); + tgt.setFactor(src.getFactor()); + tgt.setLowerLimit(src.getLowerLimit()); + tgt.setUpperLimit(src.getUpperLimit()); + tgt.setDimensions(src.getDimensions()); + tgt.setData(src.getData()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Signature convertSignature(org.hl7.fhir.instance.model.Signature src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Signature tgt = new org.hl7.fhir.dstu3.model.Signature(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + tgt.setWhen(src.getWhen()); + tgt.setWho(convertType(src.getWho())); + tgt.setContentType(src.getContentType()); + tgt.setBlob(src.getBlob()); + return tgt; + } + + public org.hl7.fhir.instance.model.Signature convertSignature(org.hl7.fhir.dstu3.model.Signature src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Signature tgt = new org.hl7.fhir.instance.model.Signature(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + tgt.setWhen(src.getWhen()); + tgt.setWho(convertType(src.getWho())); + tgt.setContentType(src.getContentType()); + tgt.setBlob(src.getBlob()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Address convertAddress(org.hl7.fhir.instance.model.Address src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Address tgt = new org.hl7.fhir.dstu3.model.Address(); + copyElement(src, tgt); + tgt.setUse(convertAddressUse(src.getUse())); + tgt.setType(convertAddressType(src.getType())); + tgt.setText(src.getText()); + for (org.hl7.fhir.instance.model.StringType t : src.getLine()) + tgt.addLine(t.getValue()); + tgt.setCity(src.getCity()); + tgt.setDistrict(src.getDistrict()); + tgt.setState(src.getState()); + tgt.setPostalCode(src.getPostalCode()); + tgt.setCountry(src.getCountry()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.Address convertAddress(org.hl7.fhir.dstu3.model.Address src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Address tgt = new org.hl7.fhir.instance.model.Address(); + copyElement(src, tgt); + tgt.setUse(convertAddressUse(src.getUse())); + tgt.setType(convertAddressType(src.getType())); + tgt.setText(src.getText()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getLine()) + tgt.addLine(t.getValue()); + tgt.setCity(src.getCity()); + tgt.setDistrict(src.getDistrict()); + tgt.setState(src.getState()); + tgt.setPostalCode(src.getPostalCode()); + tgt.setCountry(src.getCountry()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Address.AddressUse convertAddressUse(org.hl7.fhir.instance.model.Address.AddressUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.dstu3.model.Address.AddressUse.HOME; + case WORK: return org.hl7.fhir.dstu3.model.Address.AddressUse.WORK; + case TEMP: return org.hl7.fhir.dstu3.model.Address.AddressUse.TEMP; + case OLD: return org.hl7.fhir.dstu3.model.Address.AddressUse.OLD; + default: return org.hl7.fhir.dstu3.model.Address.AddressUse.NULL; + } + } + + public org.hl7.fhir.instance.model.Address.AddressUse convertAddressUse(org.hl7.fhir.dstu3.model.Address.AddressUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.instance.model.Address.AddressUse.HOME; + case WORK: return org.hl7.fhir.instance.model.Address.AddressUse.WORK; + case TEMP: return org.hl7.fhir.instance.model.Address.AddressUse.TEMP; + case OLD: return org.hl7.fhir.instance.model.Address.AddressUse.OLD; + default: return org.hl7.fhir.instance.model.Address.AddressUse.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Address.AddressType convertAddressType(org.hl7.fhir.instance.model.Address.AddressType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case POSTAL: return org.hl7.fhir.dstu3.model.Address.AddressType.POSTAL; + case PHYSICAL: return org.hl7.fhir.dstu3.model.Address.AddressType.PHYSICAL; + case BOTH: return org.hl7.fhir.dstu3.model.Address.AddressType.BOTH; + default: return org.hl7.fhir.dstu3.model.Address.AddressType.NULL; + } + } + + public org.hl7.fhir.instance.model.Address.AddressType convertAddressType(org.hl7.fhir.dstu3.model.Address.AddressType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case POSTAL: return org.hl7.fhir.instance.model.Address.AddressType.POSTAL; + case PHYSICAL: return org.hl7.fhir.instance.model.Address.AddressType.PHYSICAL; + case BOTH: return org.hl7.fhir.instance.model.Address.AddressType.BOTH; + default: return org.hl7.fhir.instance.model.Address.AddressType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ContactPoint convertContactPoint(org.hl7.fhir.instance.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactPoint tgt = new org.hl7.fhir.dstu3.model.ContactPoint(); + copyElement(src, tgt); + tgt.setSystem(convertContactPointSystem(src.getSystem())); + tgt.setValue(src.getValue()); + tgt.setUse(convertContactPointUse(src.getUse())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.ContactPoint convertContactPoint(org.hl7.fhir.dstu3.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ContactPoint tgt = new org.hl7.fhir.instance.model.ContactPoint(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(convertContactPointSystem(src.getSystem())); + tgt.setValue(src.getValue()); + tgt.setUse(convertContactPointUse(src.getUse())); + tgt.setRank(src.getRank()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHONE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PHONE; + case FAX: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.FAX; + case EMAIL: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.EMAIL; + case PAGER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PAGER; + case OTHER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.OTHER; + default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.NULL; + } + } + + public org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHONE: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.PHONE; + case FAX: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.FAX; + case EMAIL: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.EMAIL; + case PAGER: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.PAGER; + case OTHER: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.OTHER; + case URL: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.OTHER; + default: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.instance.model.ContactPoint.ContactPointUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.HOME; + case WORK: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.WORK; + case TEMP: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.TEMP; + case OLD: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.OLD; + case MOBILE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.MOBILE; + default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.NULL; + } + } + + public org.hl7.fhir.instance.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.HOME; + case WORK: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.WORK; + case TEMP: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.TEMP; + case OLD: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.OLD; + case MOBILE: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.MOBILE; + default: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ElementDefinition convertElementDefinition(org.hl7.fhir.instance.model.ElementDefinition src, List slicePaths) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition tgt = new org.hl7.fhir.dstu3.model.ElementDefinition(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + for (org.hl7.fhir.instance.model.Enumeration t : src.getRepresentation()) + tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); + if (src.hasName()) { + if (slicePaths.contains(src.getPath())) + tgt.setSliceName(src.getName()); + tgt.setId(src.getName()); + } + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + for (org.hl7.fhir.instance.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + if (src.hasSlicing()) + tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); + if (src.hasShort()) + tgt.setShort(src.getShort()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasComments()) + tgt.setComment(src.getComments()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + for (org.hl7.fhir.instance.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasBase()) + tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); + if (src.hasNameReference()) + tgt.setContentReference("#"+src.getNameReference()); + for (org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent t : src.getType()) + tgt.addType(convertElementDefinitionTypeComponent(t)); + if (src.hasDefaultValue()) + tgt.setDefaultValue(convertType(src.getDefaultValue())); + if (src.hasMeaningWhenMissing()) + tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); + if (src.hasFixed()) + tgt.setFixed(convertType(src.getFixed())); + if (src.hasPattern()) + tgt.setPattern(convertType(src.getPattern())); + if (src.hasExample()) + tgt.addExample().setLabel("General").setValue(convertType(src.getExample())); + if (src.hasMinValue()) + tgt.setMinValue(convertType(src.getMinValue())); + if (src.hasMaxValue()) + tgt.setMaxValue(convertType(src.getMaxValue())); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + for (org.hl7.fhir.instance.model.IdType t : src.getCondition()) + tgt.addCondition(t.getValue()); + for (org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) + tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); + if (src.hasMustSupport()) + tgt.setMustSupport(src.getMustSupport()); + if (src.hasIsModifier()) + tgt.setIsModifier(src.getIsModifier()); + if (src.hasIsSummary()) + tgt.setIsSummary(src.getIsSummary()); + if (src.hasBinding()) + tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); + for (org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertElementDefinitionMappingComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition convertElementDefinition(org.hl7.fhir.dstu3.model.ElementDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition tgt = new org.hl7.fhir.instance.model.ElementDefinition(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getRepresentation()) + tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); + if (src.hasSliceName()) + tgt.setName(src.getSliceName()); + else + tgt.setName(src.getId()); + tgt.setLabel(src.getLabel()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + if (src.hasSlicing()) + tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); + tgt.setShort(src.getShort()); + tgt.setDefinition(src.getDefinition()); + tgt.setComments(src.getComment()); + tgt.setRequirements(src.getRequirements()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + if (src.hasBase()) + tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); + if (src.hasContentReference()) + tgt.setNameReference(src.getContentReference().substring(1)); + for (org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent t : src.getType()) + tgt.addType(convertElementDefinitionTypeComponent(t)); + tgt.setDefaultValue(convertType(src.getDefaultValue())); + tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); + tgt.setFixed(convertType(src.getFixed())); + tgt.setPattern(convertType(src.getPattern())); + if (src.hasExample()) + tgt.setExample(convertType(src.getExampleFirstRep().getValue())); + tgt.setMinValue(convertType(src.getMinValue())); + tgt.setMaxValue(convertType(src.getMaxValue())); + tgt.setMaxLength(src.getMaxLength()); + for (org.hl7.fhir.dstu3.model.IdType t : src.getCondition()) + tgt.addCondition(t.getValue()); + for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) + tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); + tgt.setMustSupport(src.getMustSupport()); + tgt.setIsModifier(src.getIsModifier()); + tgt.setIsSummary(src.getIsSummary()); + if (src.hasBinding()) + tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); + for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertElementDefinitionMappingComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XMLATTR: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XMLATTR; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.NULL; + } + } + + public org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XMLATTR: return org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation.XMLATTR; + default: return org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.StringType t : src.getDiscriminator()) + tgt.addDiscriminator(ProfileUtilities.interpretR2Discriminator(t.getValue())); + tgt.setDescription(src.getDescription()); + tgt.setOrdered(src.getOrdered()); + tgt.setRules(convertSlicingRules(src.getRules())); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent(); + copyElement(src, tgt); + for (ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) + tgt.addDiscriminator(ProfileUtilities.buildR2Discriminator(t)); + tgt.setDescription(src.getDescription()); + tgt.setOrdered(src.getOrdered()); + tgt.setRules(convertSlicingRules(src.getRules())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.instance.model.ElementDefinition.SlicingRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLOSED: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.CLOSED; + case OPEN: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPEN; + case OPENATEND: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPENATEND; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.NULL; + } + } + + public org.hl7.fhir.instance.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLOSED: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.CLOSED; + case OPEN: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.OPEN; + case OPENATEND: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.OPENATEND; + default: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent convertElementDefinitionTypeComponent(org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent(); + copyElement(src, tgt); + tgt.setCodeElement(convertCodeToUri(src.getCodeElement())); + for (org.hl7.fhir.instance.model.UriType t : src.getProfile()) + if (src.hasCode() && "Reference".equals(src.getCode())) + tgt.setTargetProfile(t.getValueAsString()); + else + tgt.setProfile(t.getValue()); + for (org.hl7.fhir.instance.model.Enumeration t : src.getAggregation()) + tgt.addAggregation(convertAggregationMode(t.getValue())); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent convertElementDefinitionTypeComponent(org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent(); + copyElement(src, tgt); + tgt.setCodeElement(convertUriToCode(src.getCodeElement())); + if (src.hasCode() && "Reference".equals(src.getCode())) { + if (src.hasTargetProfile()) + tgt.addProfile(src.getTargetProfile()); + } else if (src.hasProfile()) + tgt.addProfile(src.getProfile()); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getAggregation()) + tgt.addAggregation(convertAggregationMode(t.getValue())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.instance.model.ElementDefinition.AggregationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONTAINED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.CONTAINED; + case REFERENCED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.REFERENCED; + case BUNDLED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.BUNDLED; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.NULL; + } + } + + public org.hl7.fhir.instance.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONTAINED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.CONTAINED; + case REFERENCED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.REFERENCED; + case BUNDLED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.BUNDLED; + default: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent(); + copyElement(src, tgt); + tgt.setKey(src.getKey()); + tgt.setRequirements(src.getRequirements()); + tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); + tgt.setHuman(src.getHuman()); + tgt.setExpression(ToolingExtensions.readStringExtension(src, ToolingExtensions.EXT_EXPRESSION)); + tgt.setXpath(src.getXpath()); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent(); + copyElement(src, tgt); + tgt.setKey(src.getKey()); + tgt.setRequirements(src.getRequirements()); + tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); + tgt.setHuman(src.getHuman()); + if (src.hasExpression()) + ToolingExtensions.addStringExtension(tgt, ToolingExtensions.EXT_EXPRESSION, src.getExpression()); + tgt.setXpath(src.getXpath()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ERROR: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.ERROR; + case WARNING: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.WARNING; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.NULL; + } + } + + public org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ERROR: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.ERROR; + case WARNING: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.WARNING; + default: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setDescription(src.getDescription()); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setDescription(src.getDescription()); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.instance.model.Enumerations.BindingStrength src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.REQUIRED; + case EXTENSIBLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXTENSIBLE; + case PREFERRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.PREFERRED; + case EXAMPLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXAMPLE; + default: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.dstu3.model.Enumerations.BindingStrength src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.REQUIRED; + case EXTENSIBLE: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.EXTENSIBLE; + case PREFERRED: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.PREFERRED; + case EXAMPLE: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.EXAMPLE; + default: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setLanguage(src.getLanguage()); + tgt.setMap(src.getMap()); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setLanguage(src.getLanguage()); + tgt.setMap(src.getMap()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.HumanName convertHumanName(org.hl7.fhir.instance.model.HumanName src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.HumanName tgt = new org.hl7.fhir.dstu3.model.HumanName(); + copyElement(src, tgt); + tgt.setUse(convertNameUse(src.getUse())); + tgt.setText(src.getText()); + for (org.hl7.fhir.instance.model.StringType t : src.getFamily()) + tgt.setFamily(t.getValue()); + for (org.hl7.fhir.instance.model.StringType t : src.getGiven()) + tgt.addGiven(t.getValue()); + for (org.hl7.fhir.instance.model.StringType t : src.getPrefix()) + tgt.addPrefix(t.getValue()); + for (org.hl7.fhir.instance.model.StringType t : src.getSuffix()) + tgt.addSuffix(t.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.HumanName convertHumanName(org.hl7.fhir.dstu3.model.HumanName src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.HumanName tgt = new org.hl7.fhir.instance.model.HumanName(); + copyElement(src, tgt); + tgt.setUse(convertNameUse(src.getUse())); + tgt.setText(src.getText()); + if (src.hasFamily()) + tgt.addFamily(src.getFamily()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getGiven()) + tgt.addGiven(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getPrefix()) + tgt.addPrefix(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getSuffix()) + tgt.addSuffix(t.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.HumanName.NameUse convertNameUse(org.hl7.fhir.instance.model.HumanName.NameUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.USUAL; + case OFFICIAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OFFICIAL; + case TEMP: return org.hl7.fhir.dstu3.model.HumanName.NameUse.TEMP; + case NICKNAME: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NICKNAME; + case ANONYMOUS: return org.hl7.fhir.dstu3.model.HumanName.NameUse.ANONYMOUS; + case OLD: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OLD; + case MAIDEN: return org.hl7.fhir.dstu3.model.HumanName.NameUse.MAIDEN; + default: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NULL; + } + } + + public org.hl7.fhir.instance.model.HumanName.NameUse convertNameUse(org.hl7.fhir.dstu3.model.HumanName.NameUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.instance.model.HumanName.NameUse.USUAL; + case OFFICIAL: return org.hl7.fhir.instance.model.HumanName.NameUse.OFFICIAL; + case TEMP: return org.hl7.fhir.instance.model.HumanName.NameUse.TEMP; + case NICKNAME: return org.hl7.fhir.instance.model.HumanName.NameUse.NICKNAME; + case ANONYMOUS: return org.hl7.fhir.instance.model.HumanName.NameUse.ANONYMOUS; + case OLD: return org.hl7.fhir.instance.model.HumanName.NameUse.OLD; + case MAIDEN: return org.hl7.fhir.instance.model.HumanName.NameUse.MAIDEN; + default: return org.hl7.fhir.instance.model.HumanName.NameUse.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Meta convertMeta(org.hl7.fhir.instance.model.Meta src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Meta tgt = new org.hl7.fhir.dstu3.model.Meta(); + copyElement(src, tgt); + tgt.setVersionId(src.getVersionId()); + tgt.setLastUpdated(src.getLastUpdated()); + for (org.hl7.fhir.instance.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.instance.model.Coding t : src.getSecurity()) + tgt.addSecurity(convertCoding(t)); + for (org.hl7.fhir.instance.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Meta convertMeta(org.hl7.fhir.dstu3.model.Meta src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Meta tgt = new org.hl7.fhir.instance.model.Meta(); + copyElement(src, tgt); + tgt.setVersionId(src.getVersionId()); + tgt.setLastUpdated(src.getLastUpdated()); + for (org.hl7.fhir.dstu3.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurity()) + tgt.addSecurity(convertCoding(t)); + for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Timing convertTiming(org.hl7.fhir.instance.model.Timing src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Timing tgt = new org.hl7.fhir.dstu3.model.Timing(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.DateTimeType t : src.getEvent()) + tgt.addEvent(t.getValue()); + tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public org.hl7.fhir.instance.model.Timing convertTiming(org.hl7.fhir.dstu3.model.Timing src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Timing tgt = new org.hl7.fhir.instance.model.Timing(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.DateTimeType t : src.getEvent()) + tgt.addEvent(t.getValue()); + tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.instance.model.Timing.TimingRepeatComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent(); + copyElement(src, tgt); + tgt.setBounds(convertType(src.getBounds())); + tgt.setCount(src.getCount()); + tgt.setDuration(src.getDuration()); + tgt.setDurationMax(src.getDurationMax()); + tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnits())); + tgt.setFrequency(src.getFrequency()); + tgt.setFrequencyMax(src.getFrequencyMax()); + tgt.setPeriod(src.getPeriod()); + tgt.setPeriodMax(src.getPeriodMax()); + tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnits())); + tgt.addWhen(convertEventTiming(src.getWhen())); + return tgt; + } + + public org.hl7.fhir.instance.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.instance.model.Timing.TimingRepeatComponent(); + copyElement(src, tgt); + tgt.setBounds(convertType(src.getBounds())); + tgt.setCount(src.getCount()); + tgt.setDuration(src.getDuration()); + tgt.setDurationMax(src.getDurationMax()); + tgt.setDurationUnits(convertUnitsOfTime(src.getDurationUnit())); + tgt.setFrequency(src.getFrequency()); + tgt.setFrequencyMax(src.getFrequencyMax()); + tgt.setPeriod(src.getPeriod()); + tgt.setPeriodMax(src.getPeriodMax()); + tgt.setPeriodUnits(convertUnitsOfTime(src.getPeriodUnit())); + for (Enumeration t : src.getWhen()) + tgt.setWhen(convertEventTiming(t.getValue())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.instance.model.Timing.UnitsOfTime src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case S: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.S; + case MIN: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MIN; + case H: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.H; + case D: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.D; + case WK: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.WK; + case MO: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MO; + case A: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.A; + default: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.NULL; + } + } + + public org.hl7.fhir.instance.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.dstu3.model.Timing.UnitsOfTime src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case S: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.S; + case MIN: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.MIN; + case H: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.H; + case D: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.D; + case WK: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.WK; + case MO: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.MO; + case A: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.A; + default: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.instance.model.Timing.EventTiming src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HS: return org.hl7.fhir.dstu3.model.Timing.EventTiming.HS; + case WAKE: return org.hl7.fhir.dstu3.model.Timing.EventTiming.WAKE; + case C: return org.hl7.fhir.dstu3.model.Timing.EventTiming.C; + case CM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CM; + case CD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CD; + case CV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CV; + case AC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.AC; + case ACM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACM; + case ACD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACD; + case ACV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACV; + case PC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PC; + case PCM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCM; + case PCD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCD; + case PCV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCV; + default: return org.hl7.fhir.dstu3.model.Timing.EventTiming.NULL; + } + } + + public org.hl7.fhir.instance.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.dstu3.model.Timing.EventTiming src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HS: return org.hl7.fhir.instance.model.Timing.EventTiming.HS; + case WAKE: return org.hl7.fhir.instance.model.Timing.EventTiming.WAKE; + case C: return org.hl7.fhir.instance.model.Timing.EventTiming.C; + case CM: return org.hl7.fhir.instance.model.Timing.EventTiming.CM; + case CD: return org.hl7.fhir.instance.model.Timing.EventTiming.CD; + case CV: return org.hl7.fhir.instance.model.Timing.EventTiming.CV; + case AC: return org.hl7.fhir.instance.model.Timing.EventTiming.AC; + case ACM: return org.hl7.fhir.instance.model.Timing.EventTiming.ACM; + case ACD: return org.hl7.fhir.instance.model.Timing.EventTiming.ACD; + case ACV: return org.hl7.fhir.instance.model.Timing.EventTiming.ACV; + case PC: return org.hl7.fhir.instance.model.Timing.EventTiming.PC; + case PCM: return org.hl7.fhir.instance.model.Timing.EventTiming.PCM; + case PCD: return org.hl7.fhir.instance.model.Timing.EventTiming.PCD; + case PCV: return org.hl7.fhir.instance.model.Timing.EventTiming.PCV; + default: return org.hl7.fhir.instance.model.Timing.EventTiming.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Age convertAge(org.hl7.fhir.instance.model.Age src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Age tgt = new org.hl7.fhir.dstu3.model.Age(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Age convertAge(org.hl7.fhir.dstu3.model.Age src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Age tgt = new org.hl7.fhir.instance.model.Age(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Count convertCount(org.hl7.fhir.instance.model.Count src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Count tgt = new org.hl7.fhir.dstu3.model.Count(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Count convertCount(org.hl7.fhir.dstu3.model.Count src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Count tgt = new org.hl7.fhir.instance.model.Count(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Distance convertDistance(org.hl7.fhir.instance.model.Distance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Distance tgt = new org.hl7.fhir.dstu3.model.Distance(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Distance convertDistance(org.hl7.fhir.dstu3.model.Distance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Distance tgt = new org.hl7.fhir.instance.model.Distance(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Duration convertDuration(org.hl7.fhir.instance.model.Duration src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Duration tgt = new org.hl7.fhir.dstu3.model.Duration(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Duration convertDuration(org.hl7.fhir.dstu3.model.Duration src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Duration tgt = new org.hl7.fhir.instance.model.Duration(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Money convertMoney(org.hl7.fhir.instance.model.Money src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Money tgt = new org.hl7.fhir.dstu3.model.Money(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Money convertMoney(org.hl7.fhir.dstu3.model.Money src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Money tgt = new org.hl7.fhir.instance.model.Money(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.instance.model.SimpleQuantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.SimpleQuantity tgt = new org.hl7.fhir.dstu3.model.SimpleQuantity(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.dstu3.model.SimpleQuantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SimpleQuantity tgt = new org.hl7.fhir.instance.model.SimpleQuantity(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Type convertType(org.hl7.fhir.instance.model.Type src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.instance.model.Base64BinaryType) + return convertBase64Binary((org.hl7.fhir.instance.model.Base64BinaryType) src); + if (src instanceof org.hl7.fhir.instance.model.BooleanType) + return convertBoolean((org.hl7.fhir.instance.model.BooleanType) src); + if (src instanceof org.hl7.fhir.instance.model.CodeType) + return convertCode((org.hl7.fhir.instance.model.CodeType) src); + if (src instanceof org.hl7.fhir.instance.model.DateType) + return convertDate((org.hl7.fhir.instance.model.DateType) src); + if (src instanceof org.hl7.fhir.instance.model.DateTimeType) + return convertDateTime((org.hl7.fhir.instance.model.DateTimeType) src); + if (src instanceof org.hl7.fhir.instance.model.DecimalType) + return convertDecimal((org.hl7.fhir.instance.model.DecimalType) src); + if (src instanceof org.hl7.fhir.instance.model.IdType) + return convertId((org.hl7.fhir.instance.model.IdType) src); + if (src instanceof org.hl7.fhir.instance.model.InstantType) + return convertInstant((org.hl7.fhir.instance.model.InstantType) src); + if (src instanceof org.hl7.fhir.instance.model.IntegerType) + return convertInteger((org.hl7.fhir.instance.model.IntegerType) src); + if (src instanceof org.hl7.fhir.instance.model.MarkdownType) + return convertMarkdown((org.hl7.fhir.instance.model.MarkdownType) src); + if (src instanceof org.hl7.fhir.instance.model.OidType) + return convertOid((org.hl7.fhir.instance.model.OidType) src); + if (src instanceof org.hl7.fhir.instance.model.PositiveIntType) + return convertPositiveInt((org.hl7.fhir.instance.model.PositiveIntType) src); + if (src instanceof org.hl7.fhir.instance.model.StringType) + return convertString((org.hl7.fhir.instance.model.StringType) src); + if (src instanceof org.hl7.fhir.instance.model.TimeType) + return convertTime((org.hl7.fhir.instance.model.TimeType) src); + if (src instanceof org.hl7.fhir.instance.model.UnsignedIntType) + return convertUnsignedInt((org.hl7.fhir.instance.model.UnsignedIntType) src); + if (src instanceof org.hl7.fhir.instance.model.UriType) + return convertUri((org.hl7.fhir.instance.model.UriType) src); + if (src instanceof org.hl7.fhir.instance.model.UuidType) + return convertUuid((org.hl7.fhir.instance.model.UuidType) src); + if (src instanceof org.hl7.fhir.instance.model.Extension) + return convertExtension((org.hl7.fhir.instance.model.Extension) src); + if (src instanceof org.hl7.fhir.instance.model.Narrative) + return convertNarrative((org.hl7.fhir.instance.model.Narrative) src); + if (src instanceof org.hl7.fhir.instance.model.Annotation) + return convertAnnotation((org.hl7.fhir.instance.model.Annotation) src); + if (src instanceof org.hl7.fhir.instance.model.Attachment) + return convertAttachment((org.hl7.fhir.instance.model.Attachment) src); + if (src instanceof org.hl7.fhir.instance.model.CodeableConcept) + return convertCodeableConcept((org.hl7.fhir.instance.model.CodeableConcept) src); + if (src instanceof org.hl7.fhir.instance.model.Coding) + return convertCoding((org.hl7.fhir.instance.model.Coding) src); + if (src instanceof org.hl7.fhir.instance.model.Identifier) + return convertIdentifier((org.hl7.fhir.instance.model.Identifier) src); + if (src instanceof org.hl7.fhir.instance.model.Period) + return convertPeriod((org.hl7.fhir.instance.model.Period) src); + if (src instanceof org.hl7.fhir.instance.model.Quantity) + return convertQuantity((org.hl7.fhir.instance.model.Quantity) src); + if (src instanceof org.hl7.fhir.instance.model.Range) + return convertRange((org.hl7.fhir.instance.model.Range) src); + if (src instanceof org.hl7.fhir.instance.model.Ratio) + return convertRatio((org.hl7.fhir.instance.model.Ratio) src); + if (src instanceof org.hl7.fhir.instance.model.Reference) + return convertReference((org.hl7.fhir.instance.model.Reference) src); + if (src instanceof org.hl7.fhir.instance.model.SampledData) + return convertSampledData((org.hl7.fhir.instance.model.SampledData) src); + if (src instanceof org.hl7.fhir.instance.model.Signature) + return convertSignature((org.hl7.fhir.instance.model.Signature) src); + if (src instanceof org.hl7.fhir.instance.model.Address) + return convertAddress((org.hl7.fhir.instance.model.Address) src); + if (src instanceof org.hl7.fhir.instance.model.ContactPoint) + return convertContactPoint((org.hl7.fhir.instance.model.ContactPoint) src); + if (src instanceof org.hl7.fhir.instance.model.ElementDefinition) + return convertElementDefinition((org.hl7.fhir.instance.model.ElementDefinition) src, new ArrayList()); + if (src instanceof org.hl7.fhir.instance.model.HumanName) + return convertHumanName((org.hl7.fhir.instance.model.HumanName) src); + if (src instanceof org.hl7.fhir.instance.model.Meta) + return convertMeta((org.hl7.fhir.instance.model.Meta) src); + if (src instanceof org.hl7.fhir.instance.model.Timing) + return convertTiming((org.hl7.fhir.instance.model.Timing) src); + if (src instanceof org.hl7.fhir.instance.model.Age) + return convertAge((org.hl7.fhir.instance.model.Age) src); + if (src instanceof org.hl7.fhir.instance.model.Count) + return convertCount((org.hl7.fhir.instance.model.Count) src); + if (src instanceof org.hl7.fhir.instance.model.Distance) + return convertDistance((org.hl7.fhir.instance.model.Distance) src); + if (src instanceof org.hl7.fhir.instance.model.Duration) + return convertDuration((org.hl7.fhir.instance.model.Duration) src); + if (src instanceof org.hl7.fhir.instance.model.Money) + return convertMoney((org.hl7.fhir.instance.model.Money) src); + if (src instanceof org.hl7.fhir.instance.model.SimpleQuantity) + return convertSimpleQuantity((org.hl7.fhir.instance.model.SimpleQuantity) src); + throw new Error("Unknown type "+src.fhirType()); + } + + public org.hl7.fhir.instance.model.Type convertType(org.hl7.fhir.dstu3.model.Type src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.dstu3.model.Base64BinaryType) + return convertBase64Binary((org.hl7.fhir.dstu3.model.Base64BinaryType) src); + if (src instanceof org.hl7.fhir.dstu3.model.BooleanType) + return convertBoolean((org.hl7.fhir.dstu3.model.BooleanType) src); + if (src instanceof org.hl7.fhir.dstu3.model.CodeType) + return convertCode((org.hl7.fhir.dstu3.model.CodeType) src); + if (src instanceof org.hl7.fhir.dstu3.model.DateType) + return convertDate((org.hl7.fhir.dstu3.model.DateType) src); + if (src instanceof org.hl7.fhir.dstu3.model.DateTimeType) + return convertDateTime((org.hl7.fhir.dstu3.model.DateTimeType) src); + if (src instanceof org.hl7.fhir.dstu3.model.DecimalType) + return convertDecimal((org.hl7.fhir.dstu3.model.DecimalType) src); + if (src instanceof org.hl7.fhir.dstu3.model.IdType) + return convertId((org.hl7.fhir.dstu3.model.IdType) src); + if (src instanceof org.hl7.fhir.dstu3.model.InstantType) + return convertInstant((org.hl7.fhir.dstu3.model.InstantType) src); + if (src instanceof org.hl7.fhir.dstu3.model.IntegerType) + return convertInteger((org.hl7.fhir.dstu3.model.IntegerType) src); + if (src instanceof org.hl7.fhir.dstu3.model.MarkdownType) + return convertMarkdown((org.hl7.fhir.dstu3.model.MarkdownType) src); + if (src instanceof org.hl7.fhir.dstu3.model.OidType) + return convertOid((org.hl7.fhir.dstu3.model.OidType) src); + if (src instanceof org.hl7.fhir.dstu3.model.PositiveIntType) + return convertPositiveInt((org.hl7.fhir.dstu3.model.PositiveIntType) src); + if (src instanceof org.hl7.fhir.dstu3.model.StringType) + return convertString((org.hl7.fhir.dstu3.model.StringType) src); + if (src instanceof org.hl7.fhir.dstu3.model.TimeType) + return convertTime((org.hl7.fhir.dstu3.model.TimeType) src); + if (src instanceof org.hl7.fhir.dstu3.model.UnsignedIntType) + return convertUnsignedInt((org.hl7.fhir.dstu3.model.UnsignedIntType) src); + if (src instanceof org.hl7.fhir.dstu3.model.UriType) + return convertUri((org.hl7.fhir.dstu3.model.UriType) src); + if (src instanceof org.hl7.fhir.dstu3.model.UuidType) + return convertUuid((org.hl7.fhir.dstu3.model.UuidType) src); + if (src instanceof org.hl7.fhir.dstu3.model.Extension) + return convertExtension((org.hl7.fhir.dstu3.model.Extension) src); + if (src instanceof org.hl7.fhir.dstu3.model.Narrative) + return convertNarrative((org.hl7.fhir.dstu3.model.Narrative) src); + if (src instanceof org.hl7.fhir.dstu3.model.Annotation) + return convertAnnotation((org.hl7.fhir.dstu3.model.Annotation) src); + if (src instanceof org.hl7.fhir.dstu3.model.Attachment) + return convertAttachment((org.hl7.fhir.dstu3.model.Attachment) src); + if (src instanceof org.hl7.fhir.dstu3.model.CodeableConcept) + return convertCodeableConcept((org.hl7.fhir.dstu3.model.CodeableConcept) src); + if (src instanceof org.hl7.fhir.dstu3.model.Coding) + return convertCoding((org.hl7.fhir.dstu3.model.Coding) src); + if (src instanceof org.hl7.fhir.dstu3.model.Identifier) + return convertIdentifier((org.hl7.fhir.dstu3.model.Identifier) src); + if (src instanceof org.hl7.fhir.dstu3.model.Period) + return convertPeriod((org.hl7.fhir.dstu3.model.Period) src); + if (src instanceof org.hl7.fhir.dstu3.model.Quantity) + return convertQuantity((org.hl7.fhir.dstu3.model.Quantity) src); + if (src instanceof org.hl7.fhir.dstu3.model.Range) + return convertRange((org.hl7.fhir.dstu3.model.Range) src); + if (src instanceof org.hl7.fhir.dstu3.model.Ratio) + return convertRatio((org.hl7.fhir.dstu3.model.Ratio) src); + if (src instanceof org.hl7.fhir.dstu3.model.Reference) + return convertReference((org.hl7.fhir.dstu3.model.Reference) src); + if (src instanceof org.hl7.fhir.dstu3.model.SampledData) + return convertSampledData((org.hl7.fhir.dstu3.model.SampledData) src); + if (src instanceof org.hl7.fhir.dstu3.model.Signature) + return convertSignature((org.hl7.fhir.dstu3.model.Signature) src); + if (src instanceof org.hl7.fhir.dstu3.model.Address) + return convertAddress((org.hl7.fhir.dstu3.model.Address) src); + if (src instanceof org.hl7.fhir.dstu3.model.ContactPoint) + return convertContactPoint((org.hl7.fhir.dstu3.model.ContactPoint) src); + if (src instanceof org.hl7.fhir.dstu3.model.ElementDefinition) + return convertElementDefinition((org.hl7.fhir.dstu3.model.ElementDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.HumanName) + return convertHumanName((org.hl7.fhir.dstu3.model.HumanName) src); + if (src instanceof org.hl7.fhir.dstu3.model.Meta) + return convertMeta((org.hl7.fhir.dstu3.model.Meta) src); + if (src instanceof org.hl7.fhir.dstu3.model.Timing) + return convertTiming((org.hl7.fhir.dstu3.model.Timing) src); + if (src instanceof org.hl7.fhir.dstu3.model.Age) + return convertAge((org.hl7.fhir.dstu3.model.Age) src); + if (src instanceof org.hl7.fhir.dstu3.model.Count) + return convertCount((org.hl7.fhir.dstu3.model.Count) src); + if (src instanceof org.hl7.fhir.dstu3.model.Distance) + return convertDistance((org.hl7.fhir.dstu3.model.Distance) src); + if (src instanceof org.hl7.fhir.dstu3.model.Duration) + return convertDuration((org.hl7.fhir.dstu3.model.Duration) src); + if (src instanceof org.hl7.fhir.dstu3.model.Money) + return convertMoney((org.hl7.fhir.dstu3.model.Money) src); + if (src instanceof org.hl7.fhir.dstu3.model.SimpleQuantity) + return convertSimpleQuantity((org.hl7.fhir.dstu3.model.SimpleQuantity) src); + throw new Error("Unknown type "+src.fhirType()); + } + + public void copyDomainResource(org.hl7.fhir.instance.model.DomainResource src, org.hl7.fhir.dstu3.model.DomainResource tgt) throws FHIRException { + copyResource(src, tgt); + tgt.setText(convertNarrative(src.getText())); + for (org.hl7.fhir.instance.model.Resource t : src.getContained()) + tgt.addContained(convertResource(t)); + for (org.hl7.fhir.instance.model.Extension t : src.getExtension()) + tgt.addExtension(convertExtension(t)); + for (org.hl7.fhir.instance.model.Extension t : src.getModifierExtension()) + tgt.addModifierExtension(convertExtension(t)); + } + public void copyDomainResource(org.hl7.fhir.dstu3.model.DomainResource src, org.hl7.fhir.instance.model.DomainResource tgt) throws FHIRException { + copyResource(src, tgt); + tgt.setText(convertNarrative(src.getText())); + for (org.hl7.fhir.dstu3.model.Resource t : src.getContained()) + tgt.addContained(convertResource(t)); + for (org.hl7.fhir.dstu3.model.Extension t : src.getExtension()) + tgt.addExtension(convertExtension(t)); + for (org.hl7.fhir.dstu3.model.Extension t : src.getModifierExtension()) + tgt.addModifierExtension(convertExtension(t)); + } + + public org.hl7.fhir.dstu3.model.Parameters convertParameters(org.hl7.fhir.instance.model.Parameters src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Parameters tgt = new org.hl7.fhir.dstu3.model.Parameters(); + copyResource(src, tgt); + for (org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent t : src.getParameter()) + tgt.addParameter(convertParametersParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Parameters convertParameters(org.hl7.fhir.dstu3.model.Parameters src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Parameters tgt = new org.hl7.fhir.instance.model.Parameters(); + copyResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getParameter()) + tgt.addParameter(convertParametersParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + tgt.setResource(convertResource(src.getResource())); + for (org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent t : src.getPart()) + tgt.addPart(convertParametersParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + tgt.setResource(convertResource(src.getResource())); + for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getPart()) + tgt.addPart(convertParametersParameterComponent(t)); + return tgt; + } + + public void copyResource(org.hl7.fhir.instance.model.Resource src, org.hl7.fhir.dstu3.model.Resource tgt) throws FHIRException { + tgt.setId(src.getId()); + tgt.setMeta(convertMeta(src.getMeta())); + tgt.setImplicitRules(src.getImplicitRules()); + tgt.setLanguage(src.getLanguage()); + } + public void copyResource(org.hl7.fhir.dstu3.model.Resource src, org.hl7.fhir.instance.model.Resource tgt) throws FHIRException { + tgt.setId(src.getId()); + if (src.hasMeta()) + tgt.setMeta(convertMeta(src.getMeta())); + if (src.hasImplicitRules()) + tgt.setImplicitRules(src.getImplicitRules()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + } + + public org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.instance.model.Enumerations.AdministrativeGender src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MALE: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.MALE; + case FEMALE: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.FEMALE; + case OTHER: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.OTHER; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MALE: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.MALE; + case FEMALE: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.FEMALE; + case OTHER: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.OTHER; + case UNKNOWN: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.UNKNOWN; + default: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.instance.model.Enumerations.SearchParamType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NUMBER: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NUMBER; + case DATE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.DATE; + case STRING: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.STRING; + case TOKEN: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.TOKEN; + case REFERENCE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.REFERENCE; + case COMPOSITE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.COMPOSITE; + case QUANTITY: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.QUANTITY; + case URI: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.URI; + default: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.dstu3.model.Enumerations.SearchParamType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NUMBER: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.NUMBER; + case DATE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.DATE; + case STRING: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.STRING; + case TOKEN: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.TOKEN; + case REFERENCE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.REFERENCE; + case COMPOSITE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.COMPOSITE; + case QUANTITY: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.QUANTITY; + case URI: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.URI; + default: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Account convertAccount(org.hl7.fhir.instance.model.Account src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Account tgt = new org.hl7.fhir.dstu3.model.Account(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setStatus(convertAccountStatus(src.getStatus())); + tgt.setActive(convertPeriod(src.getActivePeriod())); + tgt.setBalance(convertMoney(src.getBalance())); +// tgt.setCoveragePeriod(convertPeriod(src.getCoveragePeriod())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setOwner(convertReference(src.getOwner())); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.instance.model.Account convertAccount(org.hl7.fhir.dstu3.model.Account src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Account tgt = new org.hl7.fhir.instance.model.Account(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setName(src.getName()); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setStatus(convertAccountStatus(src.getStatus())); + tgt.setActivePeriod(convertPeriod(src.getActive())); + tgt.setBalance(convertMoney(src.getBalance())); +// tgt.setCoveragePeriod(convertPeriod(src.getCoveragePeriod())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setOwner(convertReference(src.getOwner())); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.instance.model.Account.AccountStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Account.AccountStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.dstu3.model.Account.AccountStatus.INACTIVE; + default: return org.hl7.fhir.dstu3.model.Account.AccountStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.dstu3.model.Account.AccountStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.Account.AccountStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.instance.model.Account.AccountStatus.INACTIVE; + default: return org.hl7.fhir.instance.model.Account.AccountStatus.NULL; + } + } + + + public org.hl7.fhir.dstu3.model.Appointment convertAppointment(org.hl7.fhir.instance.model.Appointment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Appointment tgt = new org.hl7.fhir.dstu3.model.Appointment(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertAppointmentStatus(src.getStatus())); + if (src.hasType()) + tgt.addServiceType(convertCodeableConcept(src.getType())); +// tgt.setReason(convertCodeableConcept(src.getReason())); + tgt.setPriority(src.getPriority()); + tgt.setDescription(src.getDescription()); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + tgt.setMinutesDuration(src.getMinutesDuration()); + for (org.hl7.fhir.instance.model.Reference t : src.getSlot()) + tgt.addSlot(convertReference(t)); + tgt.setComment(src.getComment()); + for (org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertAppointmentParticipantComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Appointment convertAppointment(org.hl7.fhir.dstu3.model.Appointment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Appointment tgt = new org.hl7.fhir.instance.model.Appointment(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertAppointmentStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) + tgt.setType(convertCodeableConcept(t)); +// tgt.setReason(convertCodeableConcept(src.getReason())); + tgt.setPriority(src.getPriority()); + tgt.setDescription(src.getDescription()); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + tgt.setMinutesDuration(src.getMinutesDuration()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSlot()) + tgt.addSlot(convertReference(t)); + tgt.setComment(src.getComment()); + for (org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertAppointmentParticipantComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.instance.model.Appointment.AppointmentStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.PROPOSED; + case PENDING: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.PENDING; + case BOOKED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.BOOKED; + case ARRIVED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.ARRIVED; + case FULFILLED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.FULFILLED; + case CANCELLED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.CANCELLED; + case NOSHOW: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.NOSHOW; + default: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.PROPOSED; + case PENDING: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.PENDING; + case BOOKED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.BOOKED; + case ARRIVED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.ARRIVED; + case FULFILLED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.FULFILLED; + case CANCELLED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.CANCELLED; + case NOSHOW: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.NOSHOW; + default: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setActor(convertReference(src.getActor())); + tgt.setRequired(convertParticipantRequired(src.getRequired())); + tgt.setStatus(convertParticipationStatus(src.getStatus())); + return tgt; + } + + public org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setActor(convertReference(src.getActor())); + tgt.setRequired(convertParticipantRequired(src.getRequired())); + tgt.setStatus(convertParticipationStatus(src.getStatus())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.instance.model.Appointment.ParticipantRequired src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.REQUIRED; + case OPTIONAL: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.OPTIONAL; + case INFORMATIONONLY: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.INFORMATIONONLY; + default: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.NULL; + } + } + + public org.hl7.fhir.instance.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.REQUIRED; + case OPTIONAL: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.OPTIONAL; + case INFORMATIONONLY: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.INFORMATIONONLY; + default: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.instance.model.Appointment.ParticipationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.TENTATIVE; + case NEEDSACTION: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.NEEDSACTION; + default: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.TENTATIVE; + case NEEDSACTION: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.NEEDSACTION; + default: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.instance.model.AppointmentResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.AppointmentResponse tgt = new org.hl7.fhir.dstu3.model.AppointmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setAppointment(convertReference(src.getAppointment())); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getParticipantType()) + tgt.addParticipantType(convertCodeableConcept(t)); + tgt.setActor(convertReference(src.getActor())); + tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); + tgt.setComment(src.getComment()); + return tgt; + } + + private org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus src) { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.TENTATIVE; + case INPROCESS: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.ACCEPTED; + case COMPLETED: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.ACCEPTED; + case NEEDSACTION: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; + default: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.NULL; + } + } + + private org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus src) { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.TENTATIVE; + case NEEDSACTION: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; + default: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.dstu3.model.AppointmentResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AppointmentResponse tgt = new org.hl7.fhir.instance.model.AppointmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setAppointment(convertReference(src.getAppointment())); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getParticipantType()) + tgt.addParticipantType(convertCodeableConcept(t)); + tgt.setActor(convertReference(src.getActor())); + tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); + tgt.setComment(src.getComment()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.AuditEvent convertAuditEvent(org.hl7.fhir.instance.model.AuditEvent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.AuditEvent tgt = new org.hl7.fhir.dstu3.model.AuditEvent(); + copyDomainResource(src, tgt); + if (src.hasEvent()) { + tgt.setType(convertCoding(src.getEvent().getType())); + for (org.hl7.fhir.instance.model.Coding t : src.getEvent().getSubtype()) + tgt.addSubtype(convertCoding(t)); + tgt.setAction(convertAuditEventAction(src.getEvent().getAction())); + tgt.setRecorded(src.getEvent().getDateTime()); + tgt.setOutcome(convertAuditEventOutcome(src.getEvent().getOutcome())); + tgt.setOutcomeDesc(src.getEvent().getOutcomeDesc()); + for (org.hl7.fhir.instance.model.Coding t : src.getEvent().getPurposeOfEvent()) + tgt.addPurposeOfEvent().addCoding(convertCoding(t)); + } + for (org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent t : src.getParticipant()) + tgt.addAgent(convertAuditEventAgentComponent(t)); + tgt.setSource(convertAuditEventSourceComponent(src.getSource())); + for (org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent t : src.getObject()) + tgt.addEntity(convertAuditEventEntityComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent convertAuditEvent(org.hl7.fhir.dstu3.model.AuditEvent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent tgt = new org.hl7.fhir.instance.model.AuditEvent(); + copyDomainResource(src, tgt); + tgt.getEvent().setType(convertCoding(src.getType())); + for (org.hl7.fhir.dstu3.model.Coding t : src.getSubtype()) + tgt.getEvent().addSubtype(convertCoding(t)); + tgt.getEvent().setAction(convertAuditEventAction(src.getAction())); + tgt.getEvent().setDateTime(src.getRecorded()); + tgt.getEvent().setOutcome(convertAuditEventOutcome(src.getOutcome())); + tgt.getEvent().setOutcomeDesc(src.getOutcomeDesc()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPurposeOfEvent()) + for (org.hl7.fhir.dstu3.model.Coding cc : t.getCoding()) + tgt.getEvent().addPurposeOfEvent(convertCoding(cc)); + for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) + tgt.addParticipant(convertAuditEventAgentComponent(t)); + tgt.setSource(convertAuditEventSourceComponent(src.getSource())); + for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent t : src.getEntity()) + tgt.addObject(convertAuditEventEntityComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.instance.model.AuditEvent.AuditEventAction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case C: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.C; + case R: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.R; + case U: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.U; + case D: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.D; + case E: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.E; + default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.NULL; + } + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case C: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.C; + case R: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.R; + case U: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.U; + case D: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.D; + case E: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.E; + default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.NULL; + } + } + + public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _0: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._0; + case _4: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._4; + case _8: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._8; + case _12: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._12; + default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome.NULL; + } + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _0: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._0; + case _4: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._4; + case _8: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._8; + case _12: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._12; + default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome.NULL; + } + } + + public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent convertAuditEventAgentComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + tgt.setReference(convertReference(src.getReference())); + tgt.setUserId(convertIdentifier(src.getUserId())); + tgt.setAltId(src.getAltId()); + tgt.setName(src.getName()); + tgt.setRequestor(src.getRequestor()); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.instance.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + tgt.setMedia(convertCoding(src.getMedia())); + tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); + for (org.hl7.fhir.instance.model.Coding t : src.getPurposeOfUse()) + tgt.addPurposeOfUse().addCoding(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent convertAuditEventAgentComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + tgt.setReference(convertReference(src.getReference())); + tgt.setUserId(convertIdentifier(src.getUserId())); + tgt.setAltId(src.getAltId()); + tgt.setName(src.getName()); + tgt.setRequestor(src.getRequestor()); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.dstu3.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + tgt.setMedia(convertCoding(src.getMedia())); + tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPurposeOfUse()) + for (org.hl7.fhir.dstu3.model.Coding cc : t.getCoding()) + tgt.addPurposeOfUse(convertCoding(cc)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent(); + copyElement(src, tgt); + tgt.setAddress(src.getAddress()); + tgt.setType(convertAuditEventParticipantNetworkType(src.getType())); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent(); + copyElement(src, tgt); + tgt.setAddress(src.getAddress()); + tgt.setType(convertAuditEventParticipantNetworkType(src.getType())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType convertAuditEventParticipantNetworkType(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _1: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._1; + case _2: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._2; + case _3: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._3; + case _4: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._4; + case _5: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._5; + default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType.NULL; + } + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType convertAuditEventParticipantNetworkType(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _1: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._1; + case _2: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._2; + case _3: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._3; + case _4: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._4; + case _5: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._5; + default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent(); + copyElement(src, tgt); + tgt.setSite(src.getSite()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.instance.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent(); + copyElement(src, tgt); + tgt.setSite(src.getSite()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent convertAuditEventEntityComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setReference(convertReference(src.getReference())); + tgt.setType(convertCoding(src.getType())); + tgt.setRole(convertCoding(src.getRole())); + tgt.setLifecycle(convertCoding(src.getLifecycle())); + for (org.hl7.fhir.instance.model.Coding t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCoding(t)); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setQuery(src.getQuery()); + for (org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent t : src.getDetail()) + tgt.addDetail(convertAuditEventEntityDetailComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent convertAuditEventEntityComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setReference(convertReference(src.getReference())); + tgt.setType(convertCoding(src.getType())); + tgt.setRole(convertCoding(src.getRole())); + tgt.setLifecycle(convertCoding(src.getLifecycle())); + for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCoding(t)); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setQuery(src.getQuery()); + for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent t : src.getDetail()) + tgt.addDetail(convertAuditEventEntityDetailComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Basic convertBasic(org.hl7.fhir.instance.model.Basic src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Basic tgt = new org.hl7.fhir.dstu3.model.Basic(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setCreated(src.getCreated()); + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public org.hl7.fhir.instance.model.Basic convertBasic(org.hl7.fhir.dstu3.model.Basic src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Basic tgt = new org.hl7.fhir.instance.model.Basic(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setCreated(src.getCreated()); + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Binary convertBinary(org.hl7.fhir.instance.model.Binary src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Binary tgt = new org.hl7.fhir.dstu3.model.Binary(); + copyResource(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setContent(src.getContent()); + return tgt; + } + + public org.hl7.fhir.instance.model.Binary convertBinary(org.hl7.fhir.dstu3.model.Binary src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Binary tgt = new org.hl7.fhir.instance.model.Binary(); + copyResource(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setContent(src.getContent()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Bundle convertBundle(org.hl7.fhir.instance.model.Bundle src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle tgt = new org.hl7.fhir.dstu3.model.Bundle(); + copyResource(src, tgt); + tgt.setType(convertBundleType(src.getType())); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + for (org.hl7.fhir.instance.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + for (org.hl7.fhir.instance.model.Bundle.BundleEntryComponent t : src.getEntry()) + tgt.addEntry(convertBundleEntryComponent(t)); + tgt.setSignature(convertSignature(src.getSignature())); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle convertBundle(org.hl7.fhir.dstu3.model.Bundle src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Bundle tgt = new org.hl7.fhir.instance.model.Bundle(); + copyResource(src, tgt); + tgt.setType(convertBundleType(src.getType())); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + for (org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent t : src.getEntry()) + tgt.addEntry(convertBundleEntryComponent(t)); + if (src.hasSignature()) + tgt.setSignature(convertSignature(src.getSignature())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Bundle.BundleType convertBundleType(org.hl7.fhir.instance.model.Bundle.BundleType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENT: return org.hl7.fhir.dstu3.model.Bundle.BundleType.DOCUMENT; + case MESSAGE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.MESSAGE; + case TRANSACTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTION; + case TRANSACTIONRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTIONRESPONSE; + case BATCH: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCH; + case BATCHRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCHRESPONSE; + case HISTORY: return org.hl7.fhir.dstu3.model.Bundle.BundleType.HISTORY; + case SEARCHSET: return org.hl7.fhir.dstu3.model.Bundle.BundleType.SEARCHSET; + case COLLECTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.COLLECTION; + default: return org.hl7.fhir.dstu3.model.Bundle.BundleType.NULL; + } + } + + public org.hl7.fhir.instance.model.Bundle.BundleType convertBundleType(org.hl7.fhir.dstu3.model.Bundle.BundleType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENT: return org.hl7.fhir.instance.model.Bundle.BundleType.DOCUMENT; + case MESSAGE: return org.hl7.fhir.instance.model.Bundle.BundleType.MESSAGE; + case TRANSACTION: return org.hl7.fhir.instance.model.Bundle.BundleType.TRANSACTION; + case TRANSACTIONRESPONSE: return org.hl7.fhir.instance.model.Bundle.BundleType.TRANSACTIONRESPONSE; + case BATCH: return org.hl7.fhir.instance.model.Bundle.BundleType.BATCH; + case BATCHRESPONSE: return org.hl7.fhir.instance.model.Bundle.BundleType.BATCHRESPONSE; + case HISTORY: return org.hl7.fhir.instance.model.Bundle.BundleType.HISTORY; + case SEARCHSET: return org.hl7.fhir.instance.model.Bundle.BundleType.SEARCHSET; + case COLLECTION: return org.hl7.fhir.instance.model.Bundle.BundleType.COLLECTION; + default: return org.hl7.fhir.instance.model.Bundle.BundleType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.instance.model.Bundle.BundleLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent(); + copyElement(src, tgt); + tgt.setRelation(src.getRelation()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleLinkComponent(); + copyElement(src, tgt); + tgt.setRelation(src.getRelation()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + tgt.setFullUrl(src.getFullUrl()); + tgt.setResource(convertResource(src.getResource())); + tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); + tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); + tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (advisor.ignoreEntry(src)) + return null; + + org.hl7.fhir.instance.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + tgt.setFullUrl(src.getFullUrl()); + org.hl7.fhir.instance.model.Resource res = advisor.convert(src.getResource()); + if (res == null) + res = convertResource(src.getResource()); + tgt.setResource(res); + if (src.hasSearch()) + tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); + if (src.hasRequest()) + tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent(); + copyElement(src, tgt); + tgt.setMode(convertSearchEntryMode(src.getMode())); + tgt.setScore(src.getScore()); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent(); + copyElement(src, tgt); + tgt.setMode(convertSearchEntryMode(src.getMode())); + tgt.setScore(src.getScore()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.instance.model.Bundle.SearchEntryMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MATCH: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.MATCH; + case INCLUDE: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.INCLUDE; + case OUTCOME: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.OUTCOME; + default: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MATCH: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.MATCH; + case INCLUDE: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.INCLUDE; + case OUTCOME: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.OUTCOME; + default: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent(); + copyElement(src, tgt); + tgt.setMethod(convertHTTPVerb(src.getMethod())); + tgt.setUrl(src.getUrl()); + tgt.setIfNoneMatch(src.getIfNoneMatch()); + tgt.setIfModifiedSince(src.getIfModifiedSince()); + tgt.setIfMatch(src.getIfMatch()); + tgt.setIfNoneExist(src.getIfNoneExist()); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent(); + copyElement(src, tgt); + tgt.setMethod(convertHTTPVerb(src.getMethod())); + tgt.setUrl(src.getUrl()); + tgt.setIfNoneMatch(src.getIfNoneMatch()); + tgt.setIfModifiedSince(src.getIfModifiedSince()); + tgt.setIfMatch(src.getIfMatch()); + tgt.setIfNoneExist(src.getIfNoneExist()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.instance.model.Bundle.HTTPVerb src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GET: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.GET; + case POST: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.POST; + case PUT: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.PUT; + case DELETE: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.DELETE; + default: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.NULL; + } + } + + public org.hl7.fhir.instance.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.dstu3.model.Bundle.HTTPVerb src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GET: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.GET; + case POST: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.POST; + case PUT: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.PUT; + case DELETE: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.DELETE; + default: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent(); + copyElement(src, tgt); + tgt.setStatus(src.getStatus()); + tgt.setLocation(src.getLocation()); + tgt.setEtag(src.getEtag()); + tgt.setLastModified(src.getLastModified()); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent(); + copyElement(src, tgt); + tgt.setStatus(src.getStatus()); + tgt.setLocation(src.getLocation()); + tgt.setEtag(src.getEtag()); + tgt.setLastModified(src.getLastModified()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CarePlan convertCarePlan(org.hl7.fhir.instance.model.CarePlan src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CarePlan tgt = new org.hl7.fhir.dstu3.model.CarePlan(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setStatus(convertCarePlanStatus(src.getStatus())); + tgt.setContext(convertReference(src.getContext())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); +// tgt.setModified(src.getModified()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.Reference t : src.getAddresses()) + tgt.addAddresses(convertReference(t)); +// for (org.hl7.fhir.instance.model.Reference t : src.getSupport()) +// tgt.addSupport(convertReference(t)); +// for (org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent t : src.getRelatedPlan()) +// tgt.addRelatedPlan(convertCarePlanRelatedPlanComponent(t)); +// for (org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent t : src.getParticipant()) +// tgt.addParticipant(convertCarePlanParticipantComponent(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + for (org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) + tgt.addActivity(convertCarePlanActivityComponent(t)); +// tgt.setNote(convertAnnotation(src.getNote())); + return tgt; + } + + public org.hl7.fhir.instance.model.CarePlan convertCarePlan(org.hl7.fhir.dstu3.model.CarePlan src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CarePlan tgt = new org.hl7.fhir.instance.model.CarePlan(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setStatus(convertCarePlanStatus(src.getStatus())); + tgt.setContext(convertReference(src.getContext())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); +// tgt.setModified(src.getModified()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAddresses()) + tgt.addAddresses(convertReference(t)); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getSupport()) +// tgt.addSupport(convertReference(t)); +// for (org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelatedPlanComponent t : src.getRelatedPlan()) +// tgt.addRelatedPlan(convertCarePlanRelatedPlanComponent(t)); +// for (org.hl7.fhir.dstu3.model.CarePlan.CarePlanParticipantComponent t : src.getParticipant()) +// tgt.addParticipant(convertCarePlanParticipantComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) + tgt.addActivity(convertCarePlanActivityComponent(t)); +// tgt.setNote(convertAnnotation(src.getNote())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.instance.model.CarePlan.CarePlanStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.DRAFT; + case DRAFT: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.CANCELLED; + default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { +// case PROPOSED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.PROPOSED; + case DRAFT: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.CANCELLED; + default: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.NULL; + } + } + +// public org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelatedPlanComponent convertCarePlanRelatedPlanComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelatedPlanComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelatedPlanComponent(); +// copyElement(src, tgt); +// tgt.setCode(convertCarePlanRelationship(src.getCode())); +// tgt.setPlan(convertReference(src.getPlan())); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent convertCarePlanRelatedPlanComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelatedPlanComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent(); +// copyElement(src, tgt); +// tgt.setCode(convertCarePlanRelationship(src.getCode())); +// tgt.setPlan(convertReference(src.getPlan())); +// return tgt; +// } + +// public org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship convertCarePlanRelationship(org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case INCLUDES: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship.INCLUDES; +// case REPLACES: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship.REPLACES; +// case FULFILLS: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship.FULFILLS; +// default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship.NULL; +// } +// } + +// public org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship convertCarePlanRelationship(org.hl7.fhir.dstu3.model.CarePlan.CarePlanRelationship src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case INCLUDES: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.INCLUDES; +// case REPLACES: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.REPLACES; +// case FULFILLS: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.FULFILLS; +// default: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.NULL; +// } +// } + +// public org.hl7.fhir.dstu3.model.CarePlan.CarePlanParticipantComponent convertCarePlanParticipantComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.CarePlan.CarePlanParticipantComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanParticipantComponent(); +// copyElement(src, tgt); +// tgt.setRole(convertCodeableConcept(src.getRole())); +// tgt.setMember(convertReference(src.getMember())); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent convertCarePlanParticipantComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanParticipantComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent(); +// copyElement(src, tgt); +// tgt.setRole(convertCodeableConcept(src.getRole())); +// tgt.setMember(convertReference(src.getMember())); +// return tgt; +// } +// + public org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent(); + copyElement(src, tgt); +// for (org.hl7.fhir.instance.model.Reference t : src.getActionResulting()) +// tgt.addActionResulting(convertReference(t)); + for (org.hl7.fhir.instance.model.Annotation t : src.getProgress()) + tgt.addProgress(convertAnnotation(t)); + tgt.setReference(convertReference(src.getReference())); + tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); + return tgt; + } + + public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent(); + copyElement(src, tgt); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getActionResulting()) +// tgt.addActionResulting(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getProgress()) + tgt.addProgress(convertAnnotation(t)); + tgt.setReference(convertReference(src.getReference())); + tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent(); + copyElement(src, tgt); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); +// tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); + tgt.setProhibited(src.getProhibited()); + tgt.setScheduled(convertType(src.getScheduled())); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.instance.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + tgt.setProduct(convertType(src.getProduct())); + tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent(); + copyElement(src, tgt); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); +// tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); + tgt.setProhibited(src.getProhibited()); + tgt.setScheduled(convertType(src.getScheduled())); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + tgt.setProduct(convertType(src.getProduct())); + tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSTARTED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; + case SCHEDULED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.SCHEDULED; + case INPROGRESS: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.CANCELLED; + default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSTARTED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; + case SCHEDULED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.SCHEDULED; + case INPROGRESS: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.CANCELLED; + default: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.instance.model.ClinicalImpression src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ClinicalImpression tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression(); + copyDomainResource(src, tgt); + tgt.setSubject(convertReference(src.getPatient())); + tgt.setAssessor(convertReference(src.getAssessor())); + tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + tgt.setPrevious(convertReference(src.getPrevious())); + for (org.hl7.fhir.instance.model.Reference t : src.getProblem()) + tgt.addProblem(convertReference(t)); +// for (org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent t : src.getInvestigations()) +// tgt.addInvestigations(convertClinicalImpressionInvestigationsComponent(t)); + tgt.addProtocol(src.getProtocol()); + tgt.setSummary(src.getSummary()); + for (org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) + tgt.addFinding(convertClinicalImpressionFindingComponent(t)); + if (src.hasPrognosis()) + tgt.addPrognosisCodeableConcept ().setText(src.getPrognosis()); +// for (org.hl7.fhir.instance.model.Reference t : src.getPlan()) +// tgt.addPlan(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getAction()) + tgt.addAction(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.dstu3.model.ClinicalImpression src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ClinicalImpression tgt = new org.hl7.fhir.instance.model.ClinicalImpression(); + copyDomainResource(src, tgt); + tgt.setPatient(convertReference(src.getSubject())); + tgt.setAssessor(convertReference(src.getAssessor())); + tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + tgt.setPrevious(convertReference(src.getPrevious())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProblem()) + tgt.addProblem(convertReference(t)); +// for (org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent t : src.getInvestigations()) +// tgt.addInvestigations(convertClinicalImpressionInvestigationsComponent(t)); + for (UriType t : src.getProtocol()) + tgt.setProtocol(t.asStringValue()); + tgt.setSummary(src.getSummary()); + for (org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) + tgt.addFinding(convertClinicalImpressionFindingComponent(t)); + tgt.setPrognosis(src.getPrognosisCodeableConceptFirstRep().getText()); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getPlan()) +// tgt.addPlan(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAction()) + tgt.addAction(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.DRAFT; + case COMPLETED: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.NULL; + } + } + +// public org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent convertClinicalImpressionInvestigationsComponent(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent(); +// copyElement(src, tgt); +// tgt.setCode(convertCodeableConcept(src.getCode())); +// for (org.hl7.fhir.instance.model.Reference t : src.getItem()) +// tgt.addItem(convertReference(t)); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent convertClinicalImpressionInvestigationsComponent(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent tgt = new org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent(); +// copyElement(src, tgt); +// tgt.setCode(convertCodeableConcept(src.getCode())); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getItem()) +// tgt.addItem(convertReference(t)); +// return tgt; +// } + + public org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent(); + copyElement(src, tgt); + tgt.setItem(convertCodeableConcept(src.getItem())); +// tgt.setCause(src.getCause()); + return tgt; + } + + public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent(); + copyElement(src, tgt); + if (src.hasItemCodeableConcept()) + try { + tgt.setItem(convertCodeableConcept(src.getItemCodeableConcept())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + } +// tgt.setCause(src.getCause()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Communication convertCommunication(org.hl7.fhir.instance.model.Communication src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Communication tgt = new org.hl7.fhir.dstu3.model.Communication(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.addCategory(convertCodeableConcept(src.getCategory())); + tgt.setSender(convertReference(src.getSender())); + for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationPayloadComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + tgt.setStatus(convertCommunicationStatus(src.getStatus())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setSent(src.getSent()); + tgt.setReceived(src.getReceived()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + tgt.addReasonCode(convertCodeableConcept(t)); + tgt.setSubject(convertReference(src.getSubject())); + return tgt; + } + + public org.hl7.fhir.instance.model.Communication convertCommunication(org.hl7.fhir.dstu3.model.Communication src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Communication tgt = new org.hl7.fhir.instance.model.Communication(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); + tgt.setSender(convertReference(src.getSender())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationPayloadComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + tgt.setStatus(convertCommunicationStatus(src.getStatus())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setSent(src.getSent()); + tgt.setReceived(src.getReceived()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReason(convertCodeableConcept(t)); + tgt.setSubject(convertReference(src.getSubject())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.instance.model.Communication.CommunicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.SUSPENDED; + case REJECTED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.ENTEREDINERROR; + case FAILED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.ABORTED; + default: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.dstu3.model.Communication.CommunicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.SUSPENDED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.REJECTED; + case ABORTED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.FAILED; + default: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.instance.model.CommunicationRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CommunicationRequest tgt = new org.hl7.fhir.dstu3.model.CommunicationRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.addCategory(convertCodeableConcept(src.getCategory())); + tgt.setSender(convertReference(src.getSender())); + for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + tgt.getRequester().setAgent(convertReference(src.getRequester())); + tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setOccurrence(convertType(src.getScheduled())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + tgt.addReasonCode(convertCodeableConcept(t)); + tgt.setAuthoredOn(src.getRequestedOn()); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setPriority(convertPriorityCode(src.getPriority())); + return tgt; + } + + private org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority convertPriorityCode(org.hl7.fhir.instance.model.CodeableConcept priority) { + for (org.hl7.fhir.instance.model.Coding c : priority.getCoding()) { + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "routine".equals(c.getCode())) + return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.ROUTINE; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "urgent".equals(c.getCode())) + return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.URGENT; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "stat".equals(c.getCode())) + return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.STAT; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "asap".equals(c.getCode())) + return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.ASAP; + } + return null; + } + + public org.hl7.fhir.instance.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.dstu3.model.CommunicationRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CommunicationRequest tgt = new org.hl7.fhir.instance.model.CommunicationRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); + tgt.setSender(convertReference(src.getSender())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + tgt.setRequester(convertReference(src.getRequester().getAgent())); + tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setScheduled(convertType(src.getOccurrence())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReason(convertCodeableConcept(t)); + tgt.setRequestedOn(src.getAuthoredOn()); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setPriority(convertPriorityCode(src.getPriority())); + return tgt; + } + + private org.hl7.fhir.instance.model.CodeableConcept convertPriorityCode(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority priority) { + org.hl7.fhir.instance.model.CodeableConcept cc = new org.hl7.fhir.instance.model.CodeableConcept(); + switch (priority) { + case ROUTINE: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("routine"); break; + case URGENT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("urgent"); break; + case STAT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("stat"); break; + case ASAP: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("asap"); break; + default: return null; + } + return cc; + } + + public org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.DRAFT; + case PLANNED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case REQUESTED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case RECEIVED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case ACCEPTED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case INPROGRESS: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; + case REJECTED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ENTEREDINERROR; +// case FAILED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.FAILED; + default: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.PROPOSED; +// case PLANNED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.PLANNED; +// case REQUESTED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.REQUESTED; +// case RECEIVED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.RECEIVED; +// case ACCEPTED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.ACCEPTED; + case ACTIVE: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.REJECTED; +// case FAILED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.FAILED; + default: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Composition convertComposition(org.hl7.fhir.instance.model.Composition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Composition tgt = new org.hl7.fhir.dstu3.model.Composition(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setClass_(convertCodeableConcept(src.getClass_())); + tgt.setTitle(src.getTitle()); + tgt.setStatus(convertCompositionStatus(src.getStatus())); + try { + tgt.setConfidentiality(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.fromCode(src.getConfidentiality())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + for (org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent t : src.getAttester()) + tgt.addAttester(convertCompositionAttesterComponent(t)); + tgt.setCustodian(convertReference(src.getCustodian())); + for (org.hl7.fhir.instance.model.Composition.CompositionEventComponent t : src.getEvent()) + tgt.addEvent(convertCompositionEventComponent(t)); + tgt.setEncounter(convertReference(src.getEncounter())); + for (org.hl7.fhir.instance.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Composition convertComposition(org.hl7.fhir.dstu3.model.Composition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Composition tgt = new org.hl7.fhir.instance.model.Composition(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setClass_(convertCodeableConcept(src.getClass_())); + tgt.setTitle(src.getTitle()); + tgt.setStatus(convertCompositionStatus(src.getStatus())); + tgt.setConfidentiality(src.getConfidentiality().toCode()); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent t : src.getAttester()) + tgt.addAttester(convertCompositionAttesterComponent(t)); + tgt.setCustodian(convertReference(src.getCustodian())); + for (org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent t : src.getEvent()) + tgt.addEvent(convertCompositionEventComponent(t)); + tgt.setEncounter(convertReference(src.getEncounter())); + for (org.hl7.fhir.dstu3.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.instance.model.Composition.CompositionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRELIMINARY: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.FINAL; + case AMENDED: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.AMENDED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.dstu3.model.Composition.CompositionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRELIMINARY: return org.hl7.fhir.instance.model.Composition.CompositionStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.instance.model.Composition.CompositionStatus.FINAL; + case AMENDED: return org.hl7.fhir.instance.model.Composition.CompositionStatus.AMENDED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Composition.CompositionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.Composition.CompositionStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Enumeration t : src.getMode()) + tgt.addMode(convertCompositionAttestationMode(t.getValue())); + tgt.setTime(src.getTime()); + tgt.setParty(convertReference(src.getParty())); + return tgt; + } + + public org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getMode()) + tgt.addMode(convertCompositionAttestationMode(t.getValue())); + tgt.setTime(src.getTime()); + tgt.setParty(convertReference(src.getParty())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.instance.model.Composition.CompositionAttestationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSONAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.PERSONAL; + case PROFESSIONAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.PROFESSIONAL; + case LEGAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.LEGAL; + case OFFICIAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.OFFICIAL; + default: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSONAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.PERSONAL; + case PROFESSIONAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.PROFESSIONAL; + case LEGAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.LEGAL; + case OFFICIAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.OFFICIAL; + default: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.instance.model.Composition.CompositionEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.instance.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.instance.model.Composition.CompositionEventComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.instance.model.Composition.SectionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Composition.SectionComponent tgt = new org.hl7.fhir.dstu3.model.Composition.SectionComponent(); + copyElement(src, tgt); + tgt.setTitle(src.getTitle()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setText(convertNarrative(src.getText())); + try { + tgt.setMode(org.hl7.fhir.dstu3.model.Composition.SectionMode.fromCode(src.getMode())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + for (org.hl7.fhir.instance.model.Reference t : src.getEntry()) + tgt.addEntry(convertReference(t)); + tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); + for (org.hl7.fhir.instance.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.dstu3.model.Composition.SectionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Composition.SectionComponent tgt = new org.hl7.fhir.instance.model.Composition.SectionComponent(); + copyElement(src, tgt); + tgt.setTitle(src.getTitle()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setText(convertNarrative(src.getText())); + tgt.setMode(src.getMode().toCode()); + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEntry()) + tgt.addEntry(convertReference(t)); + tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); + for (org.hl7.fhir.dstu3.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + private class SourceElementComponentWrapper { + public SourceElementComponentWrapper(SourceElementComponent comp, String source, String target) { + super(); + this.source = source; + this.target = target; + this.comp = comp; + } + private String source; + private String target; + private org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent comp; + + } + + public org.hl7.fhir.dstu3.model.ConceptMap convertConceptMap(org.hl7.fhir.instance.model.ConceptMap src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ConceptMap tgt = new org.hl7.fhir.dstu3.model.ConceptMap(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent t : src.getContact()) + tgt.addContact(convertConceptMapContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setPurpose(src.getRequirements()); + tgt.setCopyright(src.getCopyright()); + tgt.setSource(convertType(src.getSource())); + tgt.setTarget(convertType(src.getTarget())); + for (org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent t : src.getElement()) { + List ws = convertSourceElementComponent(t); + for (SourceElementComponentWrapper w : ws) + getGroup(tgt, w.source, w.target).addElement(w.comp); + } + return tgt; + } + + public org.hl7.fhir.dstu3.model.UsageContext convertCodeableConceptToUsageContext(org.hl7.fhir.instance.model.CodeableConcept t) throws FHIRException { + org.hl7.fhir.dstu3.model.UsageContext result = new org.hl7.fhir.dstu3.model.UsageContext(); + // todo: set type.. + result.setValue(convertCodeableConcept(t)); + return result; + } + + + private ConceptMapGroupComponent getGroup(ConceptMap map, String srcs, String tgts) { + for (ConceptMapGroupComponent grp : map.getGroup()) { + if (grp.getSource().equals(srcs) && grp.getTarget().equals(tgts)) + return grp; + } + ConceptMapGroupComponent grp = map.addGroup(); + grp.setSource(srcs); + grp.setTarget(tgts); + return grp; + } + + + public org.hl7.fhir.instance.model.ConceptMap convertConceptMap(org.hl7.fhir.dstu3.model.ConceptMap src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ConceptMap tgt = new org.hl7.fhir.instance.model.ConceptMap(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertConceptMapContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setRequirements(src.getPurpose()); + tgt.setCopyright(src.getCopyright()); + tgt.setSource(convertType(src.getSource())); + tgt.setTarget(convertType(src.getTarget())); + for (org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g : src.getGroup()) + for (org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent t : g.getElement()) + tgt.addElement(convertSourceElementComponent(t, g)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus convertConformanceResourceStatus(org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.RETIRED; + default: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus convertConformanceResourceStatus(org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.RETIRED; + default: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ContactDetail convertConceptMapContactComponent(org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent convertConceptMapContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public List convertSourceElementComponent(org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent src) throws FHIRException { + List res = new ArrayList(); + if (src == null || src.isEmpty()) + return res; + for (org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent t : src.getTarget()) { + org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.addTarget(convertTargetElementComponent(t)); + res.add(new SourceElementComponentWrapper(tgt, src.getCodeSystem(), t.getCodeSystem())); + } + return res; + } + + public org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent src, org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent(); + copyElement(src, tgt); + tgt.setCodeSystem(g.getSource()); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent t : src.getTarget()) + tgt.addTarget(convertTargetElementComponent(t, g)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); + tgt.setComment(src.getComments()); + for (org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) + tgt.addDependsOn(convertOtherElementComponent(t)); + for (org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent t : src.getProduct()) + tgt.addProduct(convertOtherElementComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent src, org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent(); + copyElement(src, tgt); + tgt.setCodeSystem(g.getTarget()); + tgt.setCode(src.getCode()); + tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); + tgt.setComments(src.getComment()); + for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) + tgt.addDependsOn(convertOtherElementComponent(t)); + for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getProduct()) + tgt.addProduct(convertOtherElementComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUIVALENT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; + case EQUAL: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUAL; + case WIDER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.WIDER; + case SUBSUMES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SUBSUMES; + case NARROWER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NARROWER; + case SPECIALIZES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; + case INEXACT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.INEXACT; + case UNMATCHED: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.UNMATCHED; + case DISJOINT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.DISJOINT; + default: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUIVALENT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; + case EQUAL: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.EQUAL; + case WIDER: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.WIDER; + case SUBSUMES: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.SUBSUMES; + case NARROWER: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.NARROWER; + case SPECIALIZES: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; + case INEXACT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.INEXACT; + case UNMATCHED: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.UNMATCHED; + case DISJOINT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.DISJOINT; + default: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getElement()); + tgt.setSystem(src.getCodeSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent(); + copyElement(src, tgt); + tgt.setElement(src.getProperty()); + tgt.setCodeSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Condition convertCondition(org.hl7.fhir.instance.model.Condition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Condition tgt = new org.hl7.fhir.dstu3.model.Condition(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getPatient())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setAsserter(convertReference(src.getAsserter())); + if (src.hasDateRecorded()) + tgt.setAssertedDate(src.getDateRecorded()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.addCategory(convertCodeableConcept(src.getCategory())); + try { + tgt.setClinicalStatus(org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.fromCode(src.getClinicalStatus())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); + tgt.setSeverity(convertCodeableConcept(src.getSeverity())); + tgt.setOnset(convertType(src.getOnset())); + tgt.setAbatement(convertType(src.getAbatement())); + tgt.setStage(convertConditionStageComponent(src.getStage())); + for (org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) + tgt.addEvidence(convertConditionEvidenceComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); +// tgt.setNotes(src.getNotes()); + return tgt; + } + + public org.hl7.fhir.instance.model.Condition convertCondition(org.hl7.fhir.dstu3.model.Condition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Condition tgt = new org.hl7.fhir.instance.model.Condition(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setAsserter(convertReference(src.getAsserter())); + if (src.hasAssertedDate()) + tgt.setDateRecorded(src.getAssertedDate()); + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.setCategory(convertCodeableConcept(t)); + tgt.setClinicalStatus(src.getClinicalStatus().toCode()); + tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); + tgt.setSeverity(convertCodeableConcept(src.getSeverity())); + tgt.setOnset(convertType(src.getOnset())); + tgt.setAbatement(convertType(src.getAbatement())); + tgt.setStage(convertConditionStageComponent(src.getStage())); + for (org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) + tgt.addEvidence(convertConditionEvidenceComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); +// tgt.setNotes(src.getNotes()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROVISIONAL: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.PROVISIONAL; + case DIFFERENTIAL: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; + case CONFIRMED: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.CONFIRMED; + case REFUTED: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.REFUTED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROVISIONAL: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.PROVISIONAL; + case DIFFERENTIAL: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; + case CONFIRMED: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.CONFIRMED; + case REFUTED: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.REFUTED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.UNKNOWN; + default: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.instance.model.Condition.ConditionStageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent(); + copyElement(src, tgt); + tgt.setSummary(convertCodeableConcept(src.getSummary())); + for (org.hl7.fhir.instance.model.Reference t : src.getAssessment()) + tgt.addAssessment(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.instance.model.Condition.ConditionStageComponent(); + copyElement(src, tgt); + tgt.setSummary(convertCodeableConcept(src.getSummary())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAssessment()) + tgt.addAssessment(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent(); + copyElement(src, tgt); + tgt.addCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.instance.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept cc : src.getCode()) + tgt.setCode(convertCodeableConcept(cc)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement convertConformance(org.hl7.fhir.instance.model.Conformance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent t : src.getContact()) + tgt.addContact(convertConformanceContactComponent(t)); + tgt.setDescription(src.getDescription()); + tgt.setPurpose(src.getRequirements()); + tgt.setCopyright(src.getCopyright()); + tgt.setKind(convertConformanceStatementKind(src.getKind())); + tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); + tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); + tgt.setFhirVersion(src.getFhirVersion()); + tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); + for (org.hl7.fhir.instance.model.CodeType t : src.getFormat()) + tgt.addFormat(t.getValue()); + for (org.hl7.fhir.instance.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent t : src.getRest()) + tgt.addRest(convertConformanceRestComponent(t)); + for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent t : src.getMessaging()) + tgt.addMessaging(convertConformanceMessagingComponent(t)); + for (org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent t : src.getDocument()) + tgt.addDocument(convertConformanceDocumentComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance convertConformance(org.hl7.fhir.dstu3.model.CapabilityStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance tgt = new org.hl7.fhir.instance.model.Conformance(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertConformanceContactComponent(t)); + tgt.setDescription(src.getDescription()); + tgt.setRequirements(src.getPurpose()); + tgt.setCopyright(src.getCopyright()); + tgt.setKind(convertConformanceStatementKind(src.getKind())); + tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); + if (src.hasImplementation()) + tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); + tgt.setFhirVersion(src.getFhirVersion()); + tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getFormat()) + tgt.addFormat(t.getValue()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) + tgt.addRest(convertConformanceRestComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) + tgt.addMessaging(convertConformanceMessagingComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) + tgt.addDocument(convertConformanceDocumentComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind convertConformanceStatementKind(org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; + case CAPABILITY: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; + case REQUIREMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind convertConformanceStatementKind(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.INSTANCE; + case CAPABILITY: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.CAPABILITY; + case REQUIREMENTS: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.REQUIREMENTS; + default: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.NULL; + } + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.instance.model.Conformance.UnknownContentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NO: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NO; + case EXTENSIONS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; + case ELEMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.ELEMENTS; + case BOTH: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.BOTH; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NO: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.NO; + case EXTENSIONS: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.EXTENSIONS; + case ELEMENTS: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.ELEMENTS; + case BOTH: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.BOTH; + default: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ContactDetail convertConformanceContactComponent(org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent convertConformanceContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setVersion(src.getVersion()); + tgt.setReleaseDate(src.getReleaseDate()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setVersion(src.getVersion()); + tgt.setReleaseDate(src.getReleaseDate()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent convertConformanceRestComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent(); + copyElement(src, tgt); + tgt.setMode(convertRestfulConformanceMode(src.getMode())); + tgt.setDocumentation(src.getDocumentation()); + tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent t : src.getResource()) + tgt.addResource(convertConformanceRestResourceComponent(t)); + for (org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertSystemInteractionComponent(t)); + if (src.getTransactionMode() == org.hl7.fhir.instance.model.Conformance.TransactionMode.BATCH || src.getTransactionMode() == org.hl7.fhir.instance.model.Conformance.TransactionMode.BOTH) + tgt.addInteraction().setCode(SystemRestfulInteraction.BATCH); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent t : src.getOperation()) + tgt.addOperation(convertConformanceRestOperationComponent(t)); + for (org.hl7.fhir.instance.model.UriType t : src.getCompartment()) + tgt.addCompartment(t.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent convertConformanceRestComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent(); + copyElement(src, tgt); + tgt.setMode(convertRestfulConformanceMode(src.getMode())); + tgt.setDocumentation(src.getDocumentation()); + tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) + tgt.addResource(convertConformanceRestResourceComponent(t)); + boolean batch = false; + boolean transaction = false; + for (org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) { + if (t.getCode().equals(SystemRestfulInteraction.BATCH)) + batch = true; + else + tgt.addInteraction(convertSystemInteractionComponent(t)); + if (t.getCode().equals(SystemRestfulInteraction.TRANSACTION)) + transaction = true; + } + if (batch) + tgt.setTransactionMode(transaction ? org.hl7.fhir.instance.model.Conformance.TransactionMode.BOTH : org.hl7.fhir.instance.model.Conformance.TransactionMode.BATCH); + else + tgt.setTransactionMode(transaction ? org.hl7.fhir.instance.model.Conformance.TransactionMode.TRANSACTION : org.hl7.fhir.instance.model.Conformance.TransactionMode.NOTSUPPORTED); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) + tgt.addOperation(convertConformanceRestOperationComponent(t)); + for (org.hl7.fhir.dstu3.model.UriType t : src.getCompartment()) + tgt.addCompartment(t.getValue()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode convertRestfulConformanceMode(org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLIENT: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; + case SERVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.SERVER; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode convertRestfulConformanceMode(org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLIENT: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.CLIENT; + case SERVER: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.SERVER; + default: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.NULL; + } + } + + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); + copyElement(src, tgt); + tgt.setCors(src.getCors()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getService()) + tgt.addService(convertCodeableConcept(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent t : src.getCertificate()) + tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent(); + copyElement(src, tgt); + tgt.setCors(src.getCors()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getService()) + tgt.addService(convertCodeableConcept(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) + tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setBlob(src.getBlob()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setBlob(src.getBlob()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + for (org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertResourceInteractionComponent(t)); + tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); + tgt.setReadHistory(src.getReadHistory()); + tgt.setUpdateCreate(src.getUpdateCreate()); + tgt.setConditionalCreate(src.getConditionalCreate()); + tgt.setConditionalUpdate(src.getConditionalUpdate()); + tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); + for (org.hl7.fhir.instance.model.StringType t : src.getSearchInclude()) + tgt.addSearchInclude(t.getValue()); + for (org.hl7.fhir.instance.model.StringType t : src.getSearchRevInclude()) + tgt.addSearchRevInclude(t.getValue()); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertResourceInteractionComponent(t)); + tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); + tgt.setReadHistory(src.getReadHistory()); + tgt.setUpdateCreate(src.getUpdateCreate()); + tgt.setConditionalCreate(src.getConditionalCreate()); + tgt.setConditionalUpdate(src.getConditionalUpdate()); + tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); + for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchInclude()) + tgt.addSearchInclude(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchRevInclude()) + tgt.addSearchRevInclude(t.getValue()); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOVERSION: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; + case VERSIONED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; + case VERSIONEDUPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOVERSION: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.NOVERSION; + case VERSIONED: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.VERSIONED; + case VERSIONEDUPDATE: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.VERSIONEDUPDATE; + default: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.NULL; + } + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; + case SINGLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; + case MULTIPLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.NOTSUPPORTED; + case SINGLE: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.SINGLE; + case MULTIPLE: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.MULTIPLE; + default: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertTypeRestfulInteraction(src.getCode())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent tgt = new org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertTypeRestfulInteraction(src.getCode())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case READ: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.READ; + case VREAD: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.VREAD; + case UPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; + case DELETE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.DELETE; + case HISTORYINSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; + case HISTORYTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; + case CREATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.CREATE; + case SEARCHTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case READ: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.READ; + case VREAD: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.VREAD; + case UPDATE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.UPDATE; + case DELETE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.DELETE; + case HISTORYINSTANCE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.HISTORYINSTANCE; + case HISTORYTYPE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.HISTORYTYPE; + case CREATE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.CREATE; + case SEARCHTYPE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.SEARCHTYPE; + default: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.NULL; + } + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(src.getDefinition()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(src.getDefinition()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertSystemRestfulInteraction(src.getCode())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent tgt = new org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertSystemRestfulInteraction(src.getCode())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TRANSACTION: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; + case SEARCHSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; + case HISTORYSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TRANSACTION: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.TRANSACTION; + case SEARCHSYSTEM: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.SEARCHSYSTEM; + case HISTORYSYSTEM: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.HISTORYSYSTEM; + default: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.NULL; + } + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent t : src.getEndpoint()) + tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); + tgt.setReliableCache(src.getReliableCache()); + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent t : src.getEvent()) + tgt.addEvent(convertConformanceMessagingEventComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) + tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); + tgt.setReliableCache(src.getReliableCache()); + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) + tgt.addEvent(convertConformanceMessagingEventComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); + copyElement(src, tgt); + tgt.setProtocol(convertCoding(src.getProtocol())); + tgt.setAddress(src.getAddress()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent(); + copyElement(src, tgt); + tgt.setProtocol(convertCoding(src.getProtocol())); + tgt.setAddress(src.getAddress()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); + copyElement(src, tgt); + tgt.setCode(convertCoding(src.getCode())); + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + tgt.setMode(convertConformanceEventMode(src.getMode())); + tgt.setFocus(src.getFocus()); + tgt.setRequest(convertReference(src.getRequest())); + tgt.setResponse(convertReference(src.getResponse())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent(); + copyElement(src, tgt); + tgt.setCode(convertCoding(src.getCode())); + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + tgt.setMode(convertConformanceEventMode(src.getMode())); + tgt.setFocus(src.getFocus()); + tgt.setRequest(convertReference(src.getRequest())); + tgt.setResponse(convertReference(src.getResponse())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.NULL; + } + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode convertConformanceEventMode(org.hl7.fhir.instance.model.Conformance.ConformanceEventMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SENDER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.SENDER; + case RECEIVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.RECEIVER; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceEventMode convertConformanceEventMode(org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SENDER: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.SENDER; + case RECEIVER: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.RECEIVER; + default: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.NULL; + } + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent(); + copyElement(src, tgt); + tgt.setMode(convertDocumentMode(src.getMode())); + tgt.setDocumentation(src.getDocumentation()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent(); + copyElement(src, tgt); + tgt.setMode(convertDocumentMode(src.getMode())); + tgt.setDocumentation(src.getDocumentation()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.instance.model.Conformance.DocumentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRODUCER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.PRODUCER; + case CONSUMER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.CONSUMER; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.DocumentMode convertDocumentMode(org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRODUCER: return org.hl7.fhir.instance.model.Conformance.DocumentMode.PRODUCER; + case CONSUMER: return org.hl7.fhir.instance.model.Conformance.DocumentMode.CONSUMER; + default: return org.hl7.fhir.instance.model.Conformance.DocumentMode.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Contract convertContract(org.hl7.fhir.instance.model.Contract src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Contract tgt = new org.hl7.fhir.dstu3.model.Contract(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setIssued(src.getIssued()); + tgt.setApplies(convertPeriod(src.getApplies())); + for (org.hl7.fhir.instance.model.Reference t : src.getSubject()) + tgt.addSubject(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthority()) + tgt.addAuthority(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getDomain()) + tgt.addDomain(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSubType()) + tgt.addSubType(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getAction()) + tgt.addAction(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getActionReason()) + tgt.addActionReason(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Contract.ActorComponent t : src.getActor()) + tgt.addAgent(convertAgentComponent(t)); + for (org.hl7.fhir.instance.model.Contract.SignatoryComponent t : src.getSigner()) + tgt.addSigner(convertSignatoryComponent(t)); + for (org.hl7.fhir.instance.model.Contract.ValuedItemComponent t : src.getValuedItem()) + tgt.addValuedItem(convertValuedItemComponent(t)); + for (org.hl7.fhir.instance.model.Contract.TermComponent t : src.getTerm()) + tgt.addTerm(convertTermComponent(t)); + tgt.setBinding(convertType(src.getBinding())); + for (org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) + tgt.addFriendly(convertFriendlyLanguageComponent(t)); + for (org.hl7.fhir.instance.model.Contract.LegalLanguageComponent t : src.getLegal()) + tgt.addLegal(convertLegalLanguageComponent(t)); + for (org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent t : src.getRule()) + tgt.addRule(convertComputableLanguageComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract convertContract(org.hl7.fhir.dstu3.model.Contract src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract tgt = new org.hl7.fhir.instance.model.Contract(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setIssued(src.getIssued()); + tgt.setApplies(convertPeriod(src.getApplies())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSubject()) + tgt.addSubject(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthority()) + tgt.addAuthority(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDomain()) + tgt.addDomain(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubType()) + tgt.addSubType(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAction()) + tgt.addAction(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getActionReason()) + tgt.addActionReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Contract.AgentComponent t : src.getAgent()) + tgt.addActor(convertAgentComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.SignatoryComponent t : src.getSigner()) + tgt.addSigner(convertSignatoryComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent t : src.getValuedItem()) + tgt.addValuedItem(convertValuedItemComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.TermComponent t : src.getTerm()) + tgt.addTerm(convertTermComponent(t)); + tgt.setBinding(convertType(src.getBinding())); + for (org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) + tgt.addFriendly(convertFriendlyLanguageComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent t : src.getLegal()) + tgt.addLegal(convertLegalLanguageComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent t : src.getRule()) + tgt.addRule(convertComputableLanguageComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Contract.AgentComponent convertAgentComponent(org.hl7.fhir.instance.model.Contract.ActorComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Contract.AgentComponent tgt = new org.hl7.fhir.dstu3.model.Contract.AgentComponent(); + copyElement(src, tgt); + tgt.setActor(convertReference(src.getEntity())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.ActorComponent convertAgentComponent(org.hl7.fhir.dstu3.model.Contract.AgentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.ActorComponent tgt = new org.hl7.fhir.instance.model.Contract.ActorComponent(); + copyElement(src, tgt); + tgt.setEntity(convertReference(src.getActor())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.instance.model.Contract.SignatoryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.dstu3.model.Contract.SignatoryComponent(); + copyElement(src, tgt); + tgt.setType(convertCoding(src.getType())); + tgt.setParty(convertReference(src.getParty())); + if (src.hasSignature()) + tgt.addSignature(new org.hl7.fhir.dstu3.model.Signature().setBlob(src.getSignature().getBytes())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.dstu3.model.Contract.SignatoryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.instance.model.Contract.SignatoryComponent(); + copyElement(src, tgt); + tgt.setType(convertCoding(src.getType())); + tgt.setParty(convertReference(src.getParty())); + for (org.hl7.fhir.dstu3.model.Signature t : src.getSignature()) + tgt.setSignature(Base64.encodeBase64String(t.getBlob())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.instance.model.Contract.ValuedItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent(); + copyElement(src, tgt); + tgt.setEntity(convertType(src.getEntity())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setEffectiveTime(src.getEffectiveTime()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + tgt.setFactor(src.getFactor()); + tgt.setPoints(src.getPoints()); + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.instance.model.Contract.ValuedItemComponent(); + copyElement(src, tgt); + tgt.setEntity(convertType(src.getEntity())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setEffectiveTime(src.getEffectiveTime()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + tgt.setFactor(src.getFactor()); + tgt.setPoints(src.getPoints()); + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.instance.model.Contract.TermComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Contract.TermComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setIssued(src.getIssued()); + tgt.setApplies(convertPeriod(src.getApplies())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setSubType(convertCodeableConcept(src.getSubType())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getAction()) + tgt.addAction(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getActionReason()) + tgt.addActionReason(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Contract.TermActorComponent t : src.getActor()) + tgt.addAgent(convertTermAgentComponent(t)); + tgt.setText(src.getText()); + for (org.hl7.fhir.instance.model.Contract.TermValuedItemComponent t : src.getValuedItem()) + tgt.addValuedItem(convertTermValuedItemComponent(t)); + for (org.hl7.fhir.instance.model.Contract.TermComponent t : src.getGroup()) + tgt.addGroup(convertTermComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.dstu3.model.Contract.TermComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.TermComponent tgt = new org.hl7.fhir.instance.model.Contract.TermComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setIssued(src.getIssued()); + tgt.setApplies(convertPeriod(src.getApplies())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setSubType(convertCodeableConcept(src.getSubType())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAction()) + tgt.addAction(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getActionReason()) + tgt.addActionReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Contract.TermAgentComponent t : src.getAgent()) + tgt.addActor(convertTermAgentComponent(t)); + tgt.setText(src.getText()); + for (org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent t : src.getValuedItem()) + tgt.addValuedItem(convertTermValuedItemComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.TermComponent t : src.getGroup()) + tgt.addGroup(convertTermComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Contract.TermAgentComponent convertTermAgentComponent(org.hl7.fhir.instance.model.Contract.TermActorComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Contract.TermAgentComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermAgentComponent(); + copyElement(src, tgt); + tgt.setActor(convertReference(src.getEntity())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.TermActorComponent convertTermAgentComponent(org.hl7.fhir.dstu3.model.Contract.TermAgentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.TermActorComponent tgt = new org.hl7.fhir.instance.model.Contract.TermActorComponent(); + copyElement(src, tgt); + tgt.setEntity(convertReference(src.getActor())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.instance.model.Contract.TermValuedItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent(); + copyElement(src, tgt); + tgt.setEntity(convertType(src.getEntity())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setEffectiveTime(src.getEffectiveTime()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + tgt.setFactor(src.getFactor()); + tgt.setPoints(src.getPoints()); + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.TermValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.TermValuedItemComponent tgt = new org.hl7.fhir.instance.model.Contract.TermValuedItemComponent(); + copyElement(src, tgt); + tgt.setEntity(convertType(src.getEntity())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setEffectiveTime(src.getEffectiveTime()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + tgt.setFactor(src.getFactor()); + tgt.setPoints(src.getPoints()); + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.instance.model.Contract.LegalLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.LegalLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + + public org.hl7.fhir.dstu3.model.DataElement convertDataElement(org.hl7.fhir.instance.model.DataElement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DataElement tgt = new org.hl7.fhir.dstu3.model.DataElement(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.DataElement.DataElementContactComponent t : src.getContact()) + tgt.addContact(convertDataElementContactComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setCopyright(src.getCopyright()); + tgt.setStringency(convertDataElementStringency(src.getStringency())); + for (org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent t : src.getMapping()) + tgt.addMapping(convertDataElementMappingComponent(t)); + List slicePaths = new ArrayList(); + for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { + if (t.hasSlicing()) + slicePaths.add(t.getPath()); + tgt.addElement(convertElementDefinition(t, slicePaths)); + } + return tgt; + } + + public org.hl7.fhir.instance.model.DataElement convertDataElement(org.hl7.fhir.dstu3.model.DataElement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DataElement tgt = new org.hl7.fhir.instance.model.DataElement(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertDataElementContactComponent(t)); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setCopyright(src.getCopyright()); + tgt.setStringency(convertDataElementStringency(src.getStringency())); + for (org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent t : src.getMapping()) + tgt.addMapping(convertDataElementMappingComponent(t)); + for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.instance.model.DataElement.DataElementStringency src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPARABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.COMPARABLE; + case FULLYSPECIFIED: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FULLYSPECIFIED; + case EQUIVALENT: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.EQUIVALENT; + case CONVERTABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.CONVERTABLE; + case SCALEABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.SCALEABLE; + case FLEXIBLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FLEXIBLE; + default: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.NULL; + } + } + + public org.hl7.fhir.instance.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.dstu3.model.DataElement.DataElementStringency src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPARABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.COMPARABLE; + case FULLYSPECIFIED: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.FULLYSPECIFIED; + case EQUIVALENT: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.EQUIVALENT; + case CONVERTABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.CONVERTABLE; + case SCALEABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.SCALEABLE; + case FLEXIBLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.FLEXIBLE; + default: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ContactDetail convertDataElementContactComponent(org.hl7.fhir.instance.model.DataElement.DataElementContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DataElement.DataElementContactComponent convertDataElementContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DataElement.DataElementContactComponent tgt = new org.hl7.fhir.instance.model.DataElement.DataElementContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setUri(src.getUri()); + tgt.setName(src.getName()); + tgt.setComment(src.getComments()); + return tgt; + } + + public org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setUri(src.getUri()); + tgt.setName(src.getName()); + tgt.setComments(src.getComment()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.instance.model.DetectedIssue src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DetectedIssue tgt = new org.hl7.fhir.dstu3.model.DetectedIssue(); + copyDomainResource(src, tgt); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); + for (org.hl7.fhir.instance.model.Reference t : src.getImplicated()) + tgt.addImplicated(convertReference(t)); + tgt.setDetail(src.getDetail()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setReference(src.getReference()); + for (org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) + tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.dstu3.model.DetectedIssue src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DetectedIssue tgt = new org.hl7.fhir.instance.model.DetectedIssue(); + copyDomainResource(src, tgt); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getImplicated()) + tgt.addImplicated(convertReference(t)); + tgt.setDetail(src.getDetail()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setReference(src.getReference()); + for (org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) + tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HIGH: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.HIGH; + case MODERATE: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.MODERATE; + case LOW: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.LOW; + default: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.NULL; + } + } + + public org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HIGH: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.HIGH; + case MODERATE: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.MODERATE; + case LOW: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.LOW; + default: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent(); + copyElement(src, tgt); + tgt.setAction(convertCodeableConcept(src.getAction())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent(); + copyElement(src, tgt); + tgt.setAction(convertCodeableConcept(src.getAction())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Device convertDevice(org.hl7.fhir.instance.model.Device src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Device tgt = new org.hl7.fhir.dstu3.model.Device(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setUdi((new org.hl7.fhir.dstu3.model.Device.DeviceUdiComponent()).setDeviceIdentifier(src.getUdi())); + tgt.setStatus(convertDeviceStatus(src.getStatus())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setLotNumber(src.getLotNumber()); + tgt.setManufacturer(src.getManufacturer()); + tgt.setManufactureDate(src.getManufactureDate()); + tgt.setExpirationDate(src.getExpiry()); + tgt.setModel(src.getModel()); + tgt.setVersion(src.getVersion()); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setOwner(convertReference(src.getOwner())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.instance.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Device convertDevice(org.hl7.fhir.dstu3.model.Device src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Device tgt = new org.hl7.fhir.instance.model.Device(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasUdi()) + tgt.setUdi(src.getUdi().getDeviceIdentifier()); + tgt.setStatus(convertDeviceStatus(src.getStatus())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setLotNumber(src.getLotNumber()); + tgt.setManufacturer(src.getManufacturer()); + tgt.setManufactureDate(src.getManufactureDate()); + tgt.setExpiry(src.getExpirationDate()); + tgt.setModel(src.getModel()); + tgt.setVersion(src.getVersion()); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setOwner(convertReference(src.getOwner())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus convertDeviceStatus(org.hl7.fhir.instance.model.Device.DeviceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case AVAILABLE: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.ACTIVE; + case NOTAVAILABLE: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Device.DeviceStatus convertDeviceStatus(org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.Device.DeviceStatus.AVAILABLE; + case INACTIVE: return org.hl7.fhir.instance.model.Device.DeviceStatus.NOTAVAILABLE; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Device.DeviceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.Device.DeviceStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.instance.model.DeviceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DeviceComponent tgt = new org.hl7.fhir.dstu3.model.DeviceComponent(); + copyDomainResource(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setLastSystemChange(src.getLastSystemChange()); + tgt.setSource(convertReference(src.getSource())); + tgt.setParent(convertReference(src.getParent())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getOperationalStatus()) + tgt.addOperationalStatus(convertCodeableConcept(t)); + tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); + tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); + for (org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) + tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); + tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); + return tgt; + } + + public org.hl7.fhir.instance.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.dstu3.model.DeviceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DeviceComponent tgt = new org.hl7.fhir.instance.model.DeviceComponent(); + copyDomainResource(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setLastSystemChange(src.getLastSystemChange()); + tgt.setSource(convertReference(src.getSource())); + tgt.setParent(convertReference(src.getParent())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getOperationalStatus()) + tgt.addOperationalStatus(convertCodeableConcept(t)); + tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); + tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); + for (org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) + tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); + tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OTHER: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.OTHER; + case CHEMICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; + case ELECTRICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; + case IMPEDANCE: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; + case NUCLEAR: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; + case OPTICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.OPTICAL; + case THERMAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.THERMAL; + case BIOLOGICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; + case MECHANICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; + case ACOUSTICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; + case MANUAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.MANUAL; + default: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OTHER: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.OTHER; + case CHEMICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; + case ELECTRICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; + case IMPEDANCE: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; + case NUCLEAR: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; + case OPTICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.OPTICAL; + case THERMAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.THERMAL; + case BIOLOGICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; + case MECHANICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; + case ACOUSTICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; + case MANUAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.MANUAL; + default: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); + copyElement(src, tgt); + tgt.setSpecType(convertCodeableConcept(src.getSpecType())); + tgt.setComponentId(convertIdentifier(src.getComponentId())); + tgt.setProductionSpec(src.getProductionSpec()); + return tgt; + } + + public org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); + copyElement(src, tgt); + tgt.setSpecType(convertCodeableConcept(src.getSpecType())); + tgt.setComponentId(convertIdentifier(src.getComponentId())); + tgt.setProductionSpec(src.getProductionSpec()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.instance.model.DeviceMetric src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DeviceMetric tgt = new org.hl7.fhir.dstu3.model.DeviceMetric(); + copyDomainResource(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setUnit(convertCodeableConcept(src.getUnit())); + tgt.setSource(convertReference(src.getSource())); + tgt.setParent(convertReference(src.getParent())); + tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); + tgt.setColor(convertDeviceMetricColor(src.getColor())); + tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); + tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); + for (org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) + tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.dstu3.model.DeviceMetric src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DeviceMetric tgt = new org.hl7.fhir.instance.model.DeviceMetric(); + copyDomainResource(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setUnit(convertCodeableConcept(src.getUnit())); + tgt.setSource(convertReference(src.getSource())); + tgt.setParent(convertReference(src.getParent())); + tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); + tgt.setColor(convertDeviceMetricColor(src.getColor())); + tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); + tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); + for (org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) + tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ON: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.ON; + case OFF: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; + case STANDBY: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; + default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ON: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.ON; + case OFF: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; + case STANDBY: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; + default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BLACK: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.BLACK; + case RED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.RED; + case GREEN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.GREEN; + case YELLOW: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.YELLOW; + case BLUE: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.BLUE; + case MAGENTA: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.MAGENTA; + case CYAN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.CYAN; + case WHITE: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.WHITE; + default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BLACK: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.BLACK; + case RED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.RED; + case GREEN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.GREEN; + case YELLOW: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.YELLOW; + case BLUE: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.BLUE; + case MAGENTA: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.MAGENTA; + case CYAN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.CYAN; + case WHITE: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.WHITE; + default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MEASUREMENT: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; + case SETTING: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.SETTING; + case CALCULATION: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.CALCULATION; + case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; + default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MEASUREMENT: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; + case SETTING: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.SETTING; + case CALCULATION: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.CALCULATION; + case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; + default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent(); + copyElement(src, tgt); + tgt.setType(convertDeviceMetricCalibrationType(src.getType())); + tgt.setState(convertDeviceMetricCalibrationState(src.getState())); + tgt.setTime(src.getTime()); + return tgt; + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent(); + copyElement(src, tgt); + tgt.setType(convertDeviceMetricCalibrationType(src.getType())); + tgt.setState(convertDeviceMetricCalibrationState(src.getState())); + tgt.setTime(src.getTime()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; + case OFFSET: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; + case GAIN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; + case TWOPOINT: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; + default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; + case OFFSET: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; + case GAIN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; + case TWOPOINT: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; + default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTCALIBRATED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; + case CALIBRATIONREQUIRED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; + case CALIBRATED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; + case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; + default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTCALIBRATED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; + case CALIBRATIONREQUIRED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; + case CALIBRATED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; + case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; + default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.instance.model.DeviceUseStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DeviceUseStatement tgt = new org.hl7.fhir.dstu3.model.DeviceUseStatement(); + copyDomainResource(src, tgt); + if (src.hasBodySiteCodeableConcept()) + tgt.setBodySite(convertCodeableConcept(src.getBodySiteCodeableConcept())); + tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getIndication()) + tgt.addIndication(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.StringType t : src.getNotes()) + tgt.addNote().setText(t.getValue()); + tgt.setRecordedOn(src.getRecordedOn()); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setTiming(convertType(src.getTiming())); + return tgt; + } + + public org.hl7.fhir.instance.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.dstu3.model.DeviceUseStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DeviceUseStatement tgt = new org.hl7.fhir.instance.model.DeviceUseStatement(); + copyDomainResource(src, tgt); + tgt.setBodySite(convertType(src.getBodySite())); + tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getIndication()) + tgt.addIndication(convertCodeableConcept(t)); + for (Annotation t : src.getNote()) + tgt.addNotes(t.getText()); + tgt.setRecordedOn(src.getRecordedOn()); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setTiming(convertType(src.getTiming())); + return tgt; + } + +// public org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus convertDiagnosticOrderStatus(org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus src) throws FHIRException { +// if (src ==/* null || src.isEmpty()*/) +// return null; +// switch (src) { +// case PROPOSED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.PROPOSED; +// case DRAFT: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.DRAFT; +// case PLANNED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.PLANNED; +// case REQUESTED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.REQUESTED; +// case RECEIVED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.RECEIVED; +// case ACCEPTED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.ACCEPTED; +// case INPROGRESS: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.INPROGRESS; +// case REVIEW: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.REVIEW; +// case COMPLETED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.COMPLETED; +// case CANCELLED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.CANCELLED; +// case SUSPENDED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.SUSPENDED; +// case REJECTED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.REJECTED; +// case FAILED: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.FAILED; +// default: return org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus.NULL; +// } +// } +// +// public org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus convertDiagnosticOrderStatus(org.hl7.fhir.dstu3.model.DiagnosticRequest.DiagnosticRequestStatus src) throws FHIRException { +// if (src ==/* null || src.isEmpty()*/) +// return null; +// switch (src) { +// case PROPOSED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.PROPOSED; +// case DRAFT: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.DRAFT; +// case PLANNED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.PLANNED; +// case REQUESTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REQUESTED; +// case RECEIVED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.RECEIVED; +// case ACCEPTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.ACCEPTED; +// case INPROGRESS: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.INPROGRESS; +// case REVIEW: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REVIEW; +// case COMPLETED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.COMPLETED; +// case CANCELLED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.CANCELLED; +// case SUSPENDED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.SUSPENDED; +// case REJECTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REJECTED; +// case FAILED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.FAILED; +// default: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.NULL; +// } +// } + + + public org.hl7.fhir.dstu3.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.instance.model.DiagnosticReport src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DiagnosticReport tgt = new org.hl7.fhir.dstu3.model.DiagnosticReport(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setIssued(src.getIssued()); +// tgt.setPerformer(convertReference(src.getPerformer())); +// for (org.hl7.fhir.instance.model.Reference t : src.getRequest()) +// tgt.addRequest(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getSpecimen()) + tgt.addSpecimen(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getResult()) + tgt.addResult(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getImagingStudy()) + tgt.addImagingStudy(convertReference(t)); + for (org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) + tgt.addImage(convertDiagnosticReportImageComponent(t)); + tgt.setConclusion(src.getConclusion()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCodedDiagnosis()) + tgt.addCodedDiagnosis(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Attachment t : src.getPresentedForm()) + tgt.addPresentedForm(convertAttachment(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.dstu3.model.DiagnosticReport src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DiagnosticReport tgt = new org.hl7.fhir.instance.model.DiagnosticReport(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setIssued(src.getIssued()); +// tgt.setPerformer(convertReference(src.getPerformer())); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getRequest()) +// tgt.addRequest(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSpecimen()) + tgt.addSpecimen(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getResult()) + tgt.addResult(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getImagingStudy()) + tgt.addImagingStudy(convertReference(t)); + for (org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) + tgt.addImage(convertDiagnosticReportImageComponent(t)); + tgt.setConclusion(src.getConclusion()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCodedDiagnosis()) + tgt.addCodedDiagnosis(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getPresentedForm()) + tgt.addPresentedForm(convertAttachment(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; + case PARTIAL: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; + case FINAL: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.FINAL; + case CORRECTED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; + case APPENDED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; + case CANCELLED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; + case PARTIAL: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; + case FINAL: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.FINAL; + case CORRECTED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; + case APPENDED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; + case CANCELLED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent(); + copyElement(src, tgt); + tgt.setComment(src.getComment()); + tgt.setLink(convertReference(src.getLink())); + return tgt; + } + + public org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent(); + copyElement(src, tgt); + tgt.setComment(src.getComment()); + tgt.setLink(convertReference(src.getLink())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.instance.model.DocumentManifest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DocumentManifest tgt = new org.hl7.fhir.dstu3.model.DocumentManifest(); + copyDomainResource(src, tgt); + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + tgt.setCreated(src.getCreated()); + tgt.setSource(src.getSource()); + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) + tgt.addContent(convertDocumentManifestContentComponent(t)); + for (org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentManifestRelatedComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.dstu3.model.DocumentManifest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentManifest tgt = new org.hl7.fhir.instance.model.DocumentManifest(); + copyDomainResource(src, tgt); + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + tgt.setCreated(src.getCreated()); + tgt.setSource(src.getSource()); + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) + tgt.addContent(convertDocumentManifestContentComponent(t)); + for (org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentManifestRelatedComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.CURRENT; + case SUPERSEDED: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.CURRENT; + case SUPERSEDED: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent(); + copyElement(src, tgt); + tgt.setP(convertType(src.getP())); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent(); + copyElement(src, tgt); + tgt.setP(convertType(src.getP())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DocumentReference convertDocumentReference(org.hl7.fhir.instance.model.DocumentReference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DocumentReference tgt = new org.hl7.fhir.dstu3.model.DocumentReference(); + copyDomainResource(src, tgt); + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setClass_(convertCodeableConcept(src.getClass_())); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + tgt.setCustodian(convertReference(src.getCustodian())); + tgt.setAuthenticator(convertReference(src.getAuthenticator())); + tgt.setCreated(src.getCreated()); + tgt.setIndexed(src.getIndexed()); + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + tgt.setDocStatus(convertDocStatus(src.getDocStatus())); + for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) + tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) + tgt.addContent(convertDocumentReferenceContentComponent(t)); + tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); + return tgt; + } + + private ReferredDocumentStatus convertDocStatus(CodeableConcept cc) { + if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "preliminary")) + return ReferredDocumentStatus.PRELIMINARY; + if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "final")) + return ReferredDocumentStatus.FINAL; + if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "amended")) + return ReferredDocumentStatus.AMENDED; + if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "entered-in-error")) + return ReferredDocumentStatus.ENTEREDINERROR; + + return null; + } + + private CodeableConcept convertDocStatus(ReferredDocumentStatus docStatus) { + CodeableConcept cc = new CodeableConcept (); + switch (docStatus) { + case AMENDED: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("amended"); break; + case ENTEREDINERROR: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("entered-in-error"); break; + case FINAL: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("final"); break; + case PRELIMINARY: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("preliminary"); break; + default: return null; + } + return cc; + } + + public org.hl7.fhir.instance.model.DocumentReference convertDocumentReference(org.hl7.fhir.dstu3.model.DocumentReference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentReference tgt = new org.hl7.fhir.instance.model.DocumentReference(); + copyDomainResource(src, tgt); + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setClass_(convertCodeableConcept(src.getClass_())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + tgt.setCustodian(convertReference(src.getCustodian())); + tgt.setAuthenticator(convertReference(src.getAuthenticator())); + tgt.setCreated(src.getCreated()); + tgt.setIndexed(src.getIndexed()); + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + tgt.setDocStatus(convertDocStatus(src.getDocStatus())); + for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) + tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) + tgt.addContent(convertDocumentReferenceContentComponent(t)); + tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); + return tgt; + } + + + public org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent(); + copyElement(src, tgt); + tgt.setCode(convertDocumentRelationshipType(src.getCode())); + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent(); + copyElement(src, tgt); + tgt.setCode(convertDocumentRelationshipType(src.getCode())); + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACES: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.REPLACES; + case TRANSFORMS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; + case SIGNS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.SIGNS; + case APPENDS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.APPENDS; + default: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.NULL; + } + } + + public org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACES: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.REPLACES; + case TRANSFORMS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; + case SIGNS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.SIGNS; + case APPENDS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.APPENDS; + default: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent(); + copyElement(src, tgt); + tgt.setAttachment(convertAttachment(src.getAttachment())); + for (org.hl7.fhir.instance.model.Coding t : src.getFormat()) + tgt.setFormat(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent(); + copyElement(src, tgt); + tgt.setAttachment(convertAttachment(src.getAttachment())); + tgt.addFormat(convertCoding(src.getFormat())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent(); + copyElement(src, tgt); + tgt.setEncounter(convertReference(src.getEncounter())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getEvent()) + tgt.addEvent(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); + tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); + tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); + for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent(); + copyElement(src, tgt); + tgt.setEncounter(convertReference(src.getEncounter())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getEvent()) + tgt.addEvent(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); + tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); + tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); + for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + + public org.hl7.fhir.dstu3.model.Encounter convertEncounter(org.hl7.fhir.instance.model.Encounter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Encounter tgt = new org.hl7.fhir.dstu3.model.Encounter(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertEncounterState(src.getStatus())); +// for (org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent t : src.getStatusHistory()) +// tgt.addStatusHistory(convertEncounterStatusHistoryComponent(t)); + tgt.setClass_(convertEncounterClass(src.getClass_())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPriority(convertCodeableConcept(src.getPriority())); + tgt.setSubject(convertReference(src.getPatient())); + for (org.hl7.fhir.instance.model.Reference t : src.getEpisodeOfCare()) + tgt.addEpisodeOfCare(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getIncomingReferral()) + tgt.addIncomingReferral(convertReference(t)); + for (org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertEncounterParticipantComponent(t)); + tgt.setAppointment(convertReference(src.getAppointment())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setLength(convertDuration(src.getLength())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); + for (org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent t : src.getLocation()) + tgt.addLocation(convertEncounterLocationComponent(t)); + tgt.setServiceProvider(convertReference(src.getServiceProvider())); + tgt.setPartOf(convertReference(src.getPartOf())); + return tgt; + } + + public org.hl7.fhir.instance.model.Encounter convertEncounter(org.hl7.fhir.dstu3.model.Encounter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Encounter tgt = new org.hl7.fhir.instance.model.Encounter(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertEncounterState(src.getStatus())); +// for (org.hl7.fhir.dstu3.model.Encounter.EncounterStatusHistoryComponent t : src.getStatusHistory()) +// tgt.addStatusHistory(convertEncounterStatusHistoryComponent(t)); + tgt.setClass_(convertEncounterClass(src.getClass_())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPriority(convertCodeableConcept(src.getPriority())); + tgt.setPatient(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEpisodeOfCare()) + tgt.addEpisodeOfCare(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getIncomingReferral()) + tgt.addIncomingReferral(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertEncounterParticipantComponent(t)); + tgt.setAppointment(convertReference(src.getAppointment())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setLength(convertDuration(src.getLength())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); + for (org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent t : src.getLocation()) + tgt.addLocation(convertEncounterLocationComponent(t)); + tgt.setServiceProvider(convertReference(src.getServiceProvider())); + tgt.setPartOf(convertReference(src.getPartOf())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Encounter.EncounterStatus convertEncounterState(org.hl7.fhir.instance.model.Encounter.EncounterState src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.PLANNED; + case ARRIVED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.ARRIVED; + case INPROGRESS: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.INPROGRESS; + case ONLEAVE: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.ONLEAVE; + case FINISHED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.FINISHED; + case CANCELLED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.CANCELLED; + default: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Encounter.EncounterState convertEncounterState(org.hl7.fhir.dstu3.model.Encounter.EncounterStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.instance.model.Encounter.EncounterState.PLANNED; + case ARRIVED: return org.hl7.fhir.instance.model.Encounter.EncounterState.ARRIVED; + case INPROGRESS: return org.hl7.fhir.instance.model.Encounter.EncounterState.INPROGRESS; + case ONLEAVE: return org.hl7.fhir.instance.model.Encounter.EncounterState.ONLEAVE; + case FINISHED: return org.hl7.fhir.instance.model.Encounter.EncounterState.FINISHED; + case CANCELLED: return org.hl7.fhir.instance.model.Encounter.EncounterState.CANCELLED; + default: return org.hl7.fhir.instance.model.Encounter.EncounterState.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Coding convertEncounterClass(org.hl7.fhir.instance.model.Encounter.EncounterClass src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPATIENT: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("IMP"); + case OUTPATIENT: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("AMB"); + case AMBULATORY: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("AMB"); + case EMERGENCY: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("EMER"); + case HOME: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("HH"); + case FIELD: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("FLD"); + case DAYTIME: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("SS"); + case VIRTUAL: return new org.hl7.fhir.dstu3.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("VR"); + default: return null; + } + } + + public org.hl7.fhir.instance.model.Encounter.EncounterClass convertEncounterClass(org.hl7.fhir.dstu3.model.Coding src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src.getSystem().equals("http://hl7.org/fhir/v3/ActCode")) { + if (src.getCode().equals("IMP")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.INPATIENT; + if (src.getCode().equals("AMB")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.AMBULATORY; + if (src.getCode().equals("EMER")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.EMERGENCY; + if (src.getCode().equals("HH")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.HOME; + if (src.getCode().equals("FLD")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.FIELD; + if (src.getCode().equals("")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.DAYTIME; + if (src.getCode().equals("VR")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.VIRTUAL; + } + return org.hl7.fhir.instance.model.Encounter.EncounterClass.NULL; + } + +// public org.hl7.fhir.dstu3.model.Encounter.EncounterStatusHistoryComponent convertEncounterStatusHistoryComponent(org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.Encounter.EncounterStatusHistoryComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterStatusHistoryComponent(); +// copyElement(src, tgt); +// tgt.setStatus(convertEncounterState(src.getStatus())); +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent convertEncounterStatusHistoryComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterStatusHistoryComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent(); +// copyElement(src, tgt); +// tgt.setStatus(convertEncounterState(src.getStatus())); +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// return tgt; +// } + + public org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setIndividual(convertReference(src.getIndividual())); + return tgt; + } + + public org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setIndividual(convertReference(src.getIndividual())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent(); + copyElement(src, tgt); + tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); + tgt.setOrigin(convertReference(src.getOrigin())); + tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); + tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getDietPreference()) + tgt.addDietPreference(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialCourtesy()) + tgt.addSpecialCourtesy(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialArrangement()) + tgt.addSpecialArrangement(convertCodeableConcept(t)); + tgt.setDestination(convertReference(src.getDestination())); + tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); + return tgt; + } + + public org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent(); + copyElement(src, tgt); + tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); + tgt.setOrigin(convertReference(src.getOrigin())); + tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); + tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getDietPreference()) + tgt.addDietPreference(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialCourtesy()) + tgt.addSpecialCourtesy(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialArrangement()) + tgt.addSpecialArrangement(convertCodeableConcept(t)); + tgt.setDestination(convertReference(src.getDestination())); + tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent(); + copyElement(src, tgt); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent(); + copyElement(src, tgt); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.PLANNED; + case ACTIVE: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.ACTIVE; + case RESERVED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.RESERVED; + case COMPLETED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.COMPLETED; + default: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.PLANNED; + case ACTIVE: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.ACTIVE; + case RESERVED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.RESERVED; + case COMPLETED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.COMPLETED; + default: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.instance.model.EnrollmentRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.EnrollmentRequest tgt = new org.hl7.fhir.dstu3.model.EnrollmentRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCreated(src.getCreated()); +// tgt.setTarget(convertReference(src.getTarget())); + tgt.setProvider(convertReference(src.getProvider())); + tgt.setOrganization(convertReference(src.getOrganization())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setCoverage(convertReference(src.getCoverage())); +// tgt.setRelationship(convertCoding(src.getRelationship())); + return tgt; + } + + public org.hl7.fhir.instance.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.dstu3.model.EnrollmentRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.EnrollmentRequest tgt = new org.hl7.fhir.instance.model.EnrollmentRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCreated(src.getCreated()); +// tgt.setTarget(convertReference(src.getTarget())); +// tgt.setProvider(convertReference(src.getProvider())); +// tgt.setOrganization(convertReference(src.getOrganization())); +// tgt.setSubject(convertReference(src.getSubject())); + tgt.setCoverage(convertReference(src.getCoverage())); +// tgt.setRelationship(convertCoding(src.getRelationship())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.instance.model.EnrollmentResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.EnrollmentResponse tgt = new org.hl7.fhir.dstu3.model.EnrollmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setRequest(convertReference(src.getRequest())); +// tgt.setOutcome(convertRemittanceOutcome(src.getOutcome())); + tgt.setDisposition(src.getDisposition()); + tgt.setCreated(src.getCreated()); + tgt.setOrganization(convertReference(src.getOrganization())); + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + return tgt; + } + + public org.hl7.fhir.instance.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.dstu3.model.EnrollmentResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.EnrollmentResponse tgt = new org.hl7.fhir.instance.model.EnrollmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); +// tgt.setRequest(convertReference(src.getRequestReference())); +// tgt.setOutcome(convertRemittanceOutcome(src.getOutcome())); + tgt.setDisposition(src.getDisposition()); + tgt.setCreated(src.getCreated()); +// tgt.setOrganization(convertReference(src.getOrganizationReference())); +// tgt.setRequestProvider(convertReference(src.getRequestProviderReference())); +// tgt.setRequestOrganization(convertReference(src.getRequestOrganizationReference())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.instance.model.EpisodeOfCare src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.EpisodeOfCare tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + for (org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) + tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.instance.model.Reference t : src.getReferralRequest()) + tgt.addReferralRequest(convertReference(t)); + tgt.setCareManager(convertReference(src.getCareManager())); + return tgt; + } + + public org.hl7.fhir.instance.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.dstu3.model.EpisodeOfCare src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.EpisodeOfCare tgt = new org.hl7.fhir.instance.model.EpisodeOfCare(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) + tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReferralRequest()) + tgt.addReferralRequest(convertReference(t)); + tgt.setCareManager(convertReference(src.getCareManager())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; + case WAITLIST: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; + case ACTIVE: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; + case ONHOLD: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; + case FINISHED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; + case CANCELLED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; + default: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; + case WAITLIST: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; + case ACTIVE: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; + case ONHOLD: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; + case FINISHED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; + case CANCELLED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; + default: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); + copyElement(src, tgt); + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); + copyElement(src, tgt); + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + + public org.hl7.fhir.dstu3.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.instance.model.FamilyMemberHistory src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.FamilyMemberHistory tgt = new org.hl7.fhir.dstu3.model.FamilyMemberHistory(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); + tgt.setName(src.getName()); + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBorn(convertType(src.getBorn())); + tgt.setAge(convertType(src.getAge())); + tgt.setDeceased(convertType(src.getDeceased())); +// tgt.setNote(convertAnnotation(src.getNote())); + for (org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) + tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.dstu3.model.FamilyMemberHistory src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.FamilyMemberHistory tgt = new org.hl7.fhir.instance.model.FamilyMemberHistory(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); + tgt.setName(src.getName()); + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBorn(convertType(src.getBorn())); + tgt.setAge(convertType(src.getAge())); + tgt.setDeceased(convertType(src.getDeceased())); +// tgt.setNote(convertAnnotation(src.getNote())); + for (org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) + tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PARTIAL: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; + case COMPLETED: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; + case HEALTHUNKNOWN: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; + default: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PARTIAL: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; + case COMPLETED: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; + case HEALTHUNKNOWN: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; + default: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + tgt.setOnset(convertType(src.getOnset())); +// tgt.setNote(convertAnnotation(src.getNote())); + return tgt; + } + + public org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + tgt.setOnset(convertType(src.getOnset())); +// tgt.setNote(convertAnnotation(src.getNote())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Flag convertFlag(org.hl7.fhir.instance.model.Flag src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Flag tgt = new org.hl7.fhir.dstu3.model.Flag(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setStatus(convertFlagStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public org.hl7.fhir.instance.model.Flag convertFlag(org.hl7.fhir.dstu3.model.Flag src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Flag tgt = new org.hl7.fhir.instance.model.Flag(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setStatus(convertFlagStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.instance.model.Flag.FlagStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.dstu3.model.Flag.FlagStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.Flag.FlagStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.instance.model.Flag.FlagStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Flag.FlagStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.Flag.FlagStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Group convertGroup(org.hl7.fhir.instance.model.Group src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Group tgt = new org.hl7.fhir.dstu3.model.Group(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setType(convertGroupType(src.getType())); + tgt.setActual(src.getActual()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setName(src.getName()); + tgt.setQuantity(src.getQuantity()); + for (org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) + tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); + for (org.hl7.fhir.instance.model.Group.GroupMemberComponent t : src.getMember()) + tgt.addMember(convertGroupMemberComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Group convertGroup(org.hl7.fhir.dstu3.model.Group src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Group tgt = new org.hl7.fhir.instance.model.Group(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setType(convertGroupType(src.getType())); + tgt.setActual(src.getActual()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setName(src.getName()); + tgt.setQuantity(src.getQuantity()); + for (org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) + tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); + for (org.hl7.fhir.dstu3.model.Group.GroupMemberComponent t : src.getMember()) + tgt.addMember(convertGroupMemberComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Group.GroupType convertGroupType(org.hl7.fhir.instance.model.Group.GroupType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSON: return org.hl7.fhir.dstu3.model.Group.GroupType.PERSON; + case ANIMAL: return org.hl7.fhir.dstu3.model.Group.GroupType.ANIMAL; + case PRACTITIONER: return org.hl7.fhir.dstu3.model.Group.GroupType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.dstu3.model.Group.GroupType.DEVICE; + case MEDICATION: return org.hl7.fhir.dstu3.model.Group.GroupType.MEDICATION; + case SUBSTANCE: return org.hl7.fhir.dstu3.model.Group.GroupType.SUBSTANCE; + default: return org.hl7.fhir.dstu3.model.Group.GroupType.NULL; + } + } + + public org.hl7.fhir.instance.model.Group.GroupType convertGroupType(org.hl7.fhir.dstu3.model.Group.GroupType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSON: return org.hl7.fhir.instance.model.Group.GroupType.PERSON; + case ANIMAL: return org.hl7.fhir.instance.model.Group.GroupType.ANIMAL; + case PRACTITIONER: return org.hl7.fhir.instance.model.Group.GroupType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.instance.model.Group.GroupType.DEVICE; + case MEDICATION: return org.hl7.fhir.instance.model.Group.GroupType.MEDICATION; + case SUBSTANCE: return org.hl7.fhir.instance.model.Group.GroupType.SUBSTANCE; + default: return org.hl7.fhir.instance.model.Group.GroupType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(convertType(src.getValue())); + tgt.setExclude(src.getExclude()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(convertType(src.getValue())); + tgt.setExclude(src.getExclude()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.instance.model.Group.GroupMemberComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.dstu3.model.Group.GroupMemberComponent(); + copyElement(src, tgt); + tgt.setEntity(convertReference(src.getEntity())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setInactive(src.getInactive()); + return tgt; + } + + public org.hl7.fhir.instance.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.dstu3.model.Group.GroupMemberComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.instance.model.Group.GroupMemberComponent(); + copyElement(src, tgt); + tgt.setEntity(convertReference(src.getEntity())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setInactive(src.getInactive()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.HealthcareService convertHealthcareService(org.hl7.fhir.instance.model.HealthcareService src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.HealthcareService tgt = new org.hl7.fhir.dstu3.model.HealthcareService(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setProvidedBy(convertReference(src.getProvidedBy())); +// tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); + for (org.hl7.fhir.instance.model.HealthcareService.ServiceTypeComponent t : src.getServiceType()) { +// if (t.hasType()) +// tgt.addServiceType(convertCodeableConcept(t.getType())); + for (org.hl7.fhir.instance.model.CodeableConcept tj : t.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(tj)); + } + tgt.addLocation(convertReference(src.getLocation())); +// tgt.setServiceName(src.getServiceName()); + tgt.setComment(src.getComment()); + tgt.setExtraDetails(src.getExtraDetails()); + tgt.setPhoto(convertAttachment(src.getPhoto())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getCoverageArea()) + tgt.addCoverageArea(convertReference(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getServiceProvisionCode()) + tgt.addServiceProvisionCode(convertCodeableConcept(t)); + tgt.setEligibility(convertCodeableConcept(src.getEligibility())); + tgt.setEligibilityNote(src.getEligibilityNote()); + for (org.hl7.fhir.instance.model.StringType t : src.getProgramName()) + tgt.addProgramName(t.getValue()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCharacteristic()) + tgt.addCharacteristic(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReferralMethod()) + tgt.addReferralMethod(convertCodeableConcept(t)); +// tgt.setPublicKey(src.getPublicKey()); + tgt.setAppointmentRequired(src.getAppointmentRequired()); + for (org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) + tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); + for (org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) + tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); + tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); + return tgt; + } + + public org.hl7.fhir.instance.model.HealthcareService convertHealthcareService(org.hl7.fhir.dstu3.model.HealthcareService src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.HealthcareService tgt = new org.hl7.fhir.instance.model.HealthcareService(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setProvidedBy(convertReference(src.getProvidedBy())); +// tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); +// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) +// tgt.addServiceType().setType(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) { + if (!tgt.hasServiceType()) + tgt.addServiceType(); + tgt.getServiceType().get(0).addSpecialty(convertCodeableConcept(t)); + } + for (org.hl7.fhir.dstu3.model.Reference t : src.getLocation()) + tgt.setLocation(convertReference(t)); +// tgt.setServiceName(src.getServiceName()); + tgt.setComment(src.getComment()); + tgt.setExtraDetails(src.getExtraDetails()); + tgt.setPhoto(convertAttachment(src.getPhoto())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getCoverageArea()) + tgt.addCoverageArea(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceProvisionCode()) + tgt.addServiceProvisionCode(convertCodeableConcept(t)); + tgt.setEligibility(convertCodeableConcept(src.getEligibility())); + tgt.setEligibilityNote(src.getEligibilityNote()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getProgramName()) + tgt.addProgramName(t.getValue()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCharacteristic()) + tgt.addCharacteristic(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReferralMethod()) + tgt.addReferralMethod(convertCodeableConcept(t)); +// tgt.setPublicKey(src.getPublicKey()); + tgt.setAppointmentRequired(src.getAppointmentRequired()); + for (org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) + tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); + for (org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) + tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); + tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Enumeration t : src.getDaysOfWeek()) + tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); + tgt.setAllDay(src.getAllDay()); + tgt.setAvailableStartTime(src.getAvailableStartTime()); + tgt.setAvailableEndTime(src.getAvailableEndTime()); + return tgt; + } + + public org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getDaysOfWeek()) + tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); + tgt.setAllDay(src.getAllDay()); + tgt.setAvailableStartTime(src.getAvailableStartTime()); + tgt.setAvailableEndTime(src.getAvailableEndTime()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MON: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.MON; + case TUE: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.TUE; + case WED: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.WED; + case THU: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.THU; + case FRI: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.FRI; + case SAT: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.SAT; + case SUN: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.SUN; + default: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.NULL; + } + } + + public org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MON: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.MON; + case TUE: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.TUE; + case WED: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.WED; + case THU: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.THU; + case FRI: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.FRI; + case SAT: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.SAT; + case SUN: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.SUN; + default: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.NULL; + } + } + + public org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + tgt.setDuring(convertPeriod(src.getDuring())); + return tgt; + } + + public org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + tgt.setDuring(convertPeriod(src.getDuring())); + return tgt; + } + +// public org.hl7.fhir.dstu3.model.ImagingObjectSelection convertImagingObjectSelection(org.hl7.fhir.instance.model.ImagingObjectSelection src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.ImagingObjectSelection tgt = new org.hl7.fhir.dstu3.model.ImagingObjectSelection(); +// copyDomainResource(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setAuthoringTime(src.getAuthoringTime()); +// tgt.setAuthor(convertReference(src.getAuthor())); +// tgt.setTitle(convertCodeableConcept(src.getTitle())); +// tgt.setDescription(src.getDescription()); +// for (org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent t : src.getStudy()) +// tgt.addStudy(convertStudyComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ImagingObjectSelection convertImagingObjectSelection(org.hl7.fhir.dstu3.model.ImagingObjectSelection src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ImagingObjectSelection tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection(); +// copyDomainResource(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setAuthoringTime(src.getAuthoringTime()); +// tgt.setAuthor(convertReference(src.getAuthor())); +// tgt.setTitle(convertCodeableConcept(src.getTitle())); +// tgt.setDescription(src.getDescription()); +// for (org.hl7.fhir.dstu3.model.ImagingObjectSelection.StudyComponent t : src.getStudy()) +// tgt.addStudy(convertStudyComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.dstu3.model.ImagingObjectSelection.StudyComponent convertStudyComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.ImagingObjectSelection.StudyComponent tgt = new org.hl7.fhir.dstu3.model.ImagingObjectSelection.StudyComponent(); +// copyElement(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// tgt.setImagingStudy(convertReference(src.getImagingStudy())); +// for (org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent t : src.getSeries()) +// tgt.addSeries(convertSeriesComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent convertStudyComponent(org.hl7.fhir.dstu3.model.ImagingObjectSelection.StudyComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent(); +// copyElement(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// tgt.setImagingStudy(convertReference(src.getImagingStudy())); +// for (org.hl7.fhir.dstu3.model.ImagingObjectSelection.SeriesComponent t : src.getSeries()) +// tgt.addSeries(convertSeriesComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.dstu3.model.ImagingObjectSelection.SeriesComponent convertSeriesComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.ImagingObjectSelection.SeriesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingObjectSelection.SeriesComponent(); +// copyElement(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent t : src.getInstance()) +// tgt.addInstance(convertInstanceComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent convertSeriesComponent(org.hl7.fhir.dstu3.model.ImagingObjectSelection.SeriesComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent(); +// copyElement(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.dstu3.model.ImagingObjectSelection.InstanceComponent t : src.getInstance()) +// tgt.addInstance(convertInstanceComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.dstu3.model.ImagingObjectSelection.InstanceComponent convertInstanceComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.ImagingObjectSelection.InstanceComponent tgt = new org.hl7.fhir.dstu3.model.ImagingObjectSelection.InstanceComponent(); +// copyElement(src, tgt); +// tgt.setSopClass(src.getSopClass()); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent t : src.getFrames()) +// tgt.addFrame(convertFramesComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent convertInstanceComponent(org.hl7.fhir.dstu3.model.ImagingObjectSelection.InstanceComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent(); +// copyElement(src, tgt); +// tgt.setSopClass(src.getSopClass()); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.dstu3.model.ImagingObjectSelection.FramesComponent t : src.getFrame()) +// tgt.addFrames(convertFramesComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.dstu3.model.ImagingObjectSelection.FramesComponent convertFramesComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.ImagingObjectSelection.FramesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingObjectSelection.FramesComponent(); +// copyElement(src, tgt); +// for (org.hl7.fhir.instance.model.UnsignedIntType t : src.getFrameNumbers()) +// tgt.addNumber(t.getValue()); +// tgt.setUrl(src.getUrl()); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent convertFramesComponent(org.hl7.fhir.dstu3.model.ImagingObjectSelection.FramesComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent(); +// copyElement(src, tgt); +// for (org.hl7.fhir.dstu3.model.UnsignedIntType t : src.getNumber()) +// tgt.addFrameNumbers(t.getValue()); +// tgt.setUrl(src.getUrl()); +// return tgt; +// } +// + public org.hl7.fhir.dstu3.model.ImagingStudy convertImagingStudy(org.hl7.fhir.instance.model.ImagingStudy src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImagingStudy tgt = new org.hl7.fhir.dstu3.model.ImagingStudy(); + copyDomainResource(src, tgt); + tgt.setUid(src.getUid()); + tgt.setAccession(convertIdentifier(src.getAccession())); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + for (org.hl7.fhir.instance.model.Coding t : src.getModalityList()) + tgt.addModalityList(convertCoding(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setStarted(src.getStarted()); + tgt.setReferrer(convertReference(src.getReferrer())); + tgt.addInterpreter(convertReference(src.getInterpreter())); + tgt.setNumberOfSeries(src.getNumberOfSeries()); + tgt.setNumberOfInstances(src.getNumberOfInstances()); + for (org.hl7.fhir.instance.model.Reference t : src.getProcedure()) + tgt.addProcedureReference(convertReference(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) + tgt.addSeries(convertImagingStudySeriesComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImagingStudy convertImagingStudy(org.hl7.fhir.dstu3.model.ImagingStudy src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImagingStudy tgt = new org.hl7.fhir.instance.model.ImagingStudy(); + copyDomainResource(src, tgt); + tgt.setUid(src.getUid()); + tgt.setAccession(convertIdentifier(src.getAccession())); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + for (org.hl7.fhir.dstu3.model.Coding t : src.getModalityList()) + tgt.addModalityList(convertCoding(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setStarted(src.getStarted()); + tgt.setReferrer(convertReference(src.getReferrer())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getInterpreter()) + tgt.setInterpreter(convertReference(t)); + tgt.setNumberOfSeries(src.getNumberOfSeries()); + tgt.setNumberOfInstances(src.getNumberOfInstances()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProcedureReference()) + tgt.addProcedure(convertReference(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) + tgt.addSeries(convertImagingStudySeriesComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ONLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.ONLINE; + case OFFLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.OFFLINE; + case NEARLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.NEARLINE; + case UNAVAILABLE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; + default: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.NULL; + } + } + + public org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ONLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.ONLINE; + case OFFLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.OFFLINE; + case NEARLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.NEARLINE; + case UNAVAILABLE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; + default: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent(); + copyElement(src, tgt); + tgt.setUid(src.getUid()); + tgt.setNumber(src.getNumber()); + tgt.setModality(convertCoding(src.getModality())); + tgt.setDescription(src.getDescription()); + tgt.setNumberOfInstances(src.getNumberOfInstances()); + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + tgt.setBodySite(convertCoding(src.getBodySite())); + tgt.setLaterality(convertCoding(src.getLaterality())); + tgt.setStarted(src.getStarted()); + for (org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) + tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent(); + copyElement(src, tgt); + tgt.setUid(src.getUid()); + tgt.setNumber(src.getNumber()); + tgt.setModality(convertCoding(src.getModality())); + tgt.setDescription(src.getDescription()); + tgt.setNumberOfInstances(src.getNumberOfInstances()); + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + tgt.setBodySite(convertCoding(src.getBodySite())); + tgt.setLaterality(convertCoding(src.getLaterality())); + tgt.setStarted(src.getStarted()); + for (org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) + tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); + copyElement(src, tgt); + tgt.setUid(src.getUid()); + tgt.setNumber(src.getNumber()); + tgt.setSopClass(src.getSopClass()); + tgt.setTitle(src.getTitle()); + return tgt; + } + + public org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); + copyElement(src, tgt); + tgt.setUid(src.getUid()); + tgt.setNumber(src.getNumber()); + tgt.setSopClass(src.getSopClass()); + tgt.setTitle(src.getTitle()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Immunization convertImmunization(org.hl7.fhir.instance.model.Immunization src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Immunization tgt = new org.hl7.fhir.dstu3.model.Immunization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + try { + tgt.setStatus(org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus.fromCode(src.getStatus())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setNotGiven(src.getWasNotGiven()); + tgt.setPrimarySource(!src.getReported()); + if (src.hasPerformer()) + tgt.addPractitioner().setActor(convertReference(src.getPerformer())).setRole(new org.hl7.fhir.dstu3.model.CodeableConcept().addCoding(new Coding().setSystem("http://hl7.org/fhir/v2/0443").setCode("AP"))); + if (src.hasRequester()) + tgt.addPractitioner().setActor(convertReference(src.getRequester())).setRole(new org.hl7.fhir.dstu3.model.CodeableConcept().addCoding(new Coding().setSystem("http://hl7.org/fhir/v2/0443").setCode("OP"))); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setManufacturer(convertReference(src.getManufacturer())); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setLotNumber(src.getLotNumber()); + tgt.setExpirationDate(src.getExpirationDate()); + tgt.setSite(convertCodeableConcept(src.getSite())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); + for (org.hl7.fhir.instance.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); + for (org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) + tgt.addReaction(convertImmunizationReactionComponent(t)); + for (org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) + tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Immunization convertImmunization(org.hl7.fhir.dstu3.model.Immunization src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Immunization tgt = new org.hl7.fhir.instance.model.Immunization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(src.getStatus().toCode()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setWasNotGiven(src.getNotGiven()); + tgt.setReported(!src.getPrimarySource()); + tgt.setPerformer(convertReference(getPerformer(src.getPractitioner()))); + tgt.setRequester(convertReference(getRequester(src.getPractitioner()))); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setManufacturer(convertReference(src.getManufacturer())); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setLotNumber(src.getLotNumber()); + tgt.setExpirationDate(src.getExpirationDate()); + tgt.setSite(convertCodeableConcept(src.getSite())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); + for (org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) + tgt.addReaction(convertImmunizationReactionComponent(t)); + for (org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) + tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); + return tgt; + } + + private org.hl7.fhir.dstu3.model.Reference getPerformer(List practitioner) { + for (ImmunizationPractitionerComponent p : practitioner) { + if (hasConcept(p.getRole(), "http://hl7.org/fhir/v2/0443", "AP")) + return p.getActor(); + } + return null; + } + + private org.hl7.fhir.dstu3.model.Reference getRequester(List practitioner) { + for (ImmunizationPractitionerComponent p : practitioner) { + if (hasConcept(p.getRole(), "http://hl7.org/fhir/v2/0443", "OP")) + return p.getActor(); + } + return null; + } + + private boolean hasConcept(org.hl7.fhir.dstu3.model.CodeableConcept cc, String system, String code) { + for (org.hl7.fhir.dstu3.model.Coding c : cc.getCoding()) { + if (system.equals(c.getSystem()) && code.equals(c.getCode())) + return true; + } + return false; + } + + private boolean hasConcept(org.hl7.fhir.instance.model.CodeableConcept cc, String system, String code) { + for (org.hl7.fhir.instance.model.Coding c : cc.getCoding()) { + if (system.equals(c.getSystem()) && code.equals(c.getCode())) + return true; + } + return false; + } + + public org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotGiven()) + tgt.addReasonNotGiven(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotGiven()) + tgt.addReasonNotGiven(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDetail(convertReference(src.getDetail())); + tgt.setReported(src.getReported()); + return tgt; + } + + public org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDetail(convertReference(src.getDetail())); + tgt.setReported(src.getReported()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent(); + copyElement(src, tgt); + tgt.setDoseSequence(src.getDoseSequence()); + tgt.setDescription(src.getDescription()); + tgt.setAuthority(convertReference(src.getAuthority())); + tgt.setSeries(src.getSeries()); + tgt.setSeriesDoses(src.getSeriesDoses()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getTargetDisease()) + tgt.addTargetDisease(convertCodeableConcept(t)); + tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); + tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); + return tgt; + } + + public org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent(); + copyElement(src, tgt); + tgt.setDoseSequence(src.getDoseSequence()); + tgt.setDescription(src.getDescription()); + tgt.setAuthority(convertReference(src.getAuthority())); + tgt.setSeries(src.getSeries()); + tgt.setSeriesDoses(src.getSeriesDoses()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTargetDisease()) + tgt.addTargetDisease(convertCodeableConcept(t)); + tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); + tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.instance.model.ImmunizationRecommendation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImmunizationRecommendation tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + for (org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) + tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.dstu3.model.ImmunizationRecommendation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImmunizationRecommendation tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + for (org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) + tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + tgt.setDoseNumber(src.getDoseNumber()); + tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); + for (org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) + tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); + tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); + for (org.hl7.fhir.instance.model.Reference t : src.getSupportingImmunization()) + tgt.addSupportingImmunization(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getSupportingPatientInformation()) + tgt.addSupportingPatientInformation(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + tgt.setDoseNumber(src.getDoseNumber()); + tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); + for (org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) + tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); + tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingImmunization()) + tgt.addSupportingImmunization(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingPatientInformation()) + tgt.addSupportingPatientInformation(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); + copyElement(src, tgt); + tgt.setDoseSequence(src.getDoseSequence()); + tgt.setDescription(src.getDescription()); + tgt.setAuthority(convertReference(src.getAuthority())); + tgt.setSeries(src.getSeries()); + return tgt; + } + + public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); + copyElement(src, tgt); + tgt.setDoseSequence(src.getDoseSequence()); + tgt.setDescription(src.getDescription()); + tgt.setAuthority(convertReference(src.getAuthority())); + tgt.setSeries(src.getSeries()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.instance.model.ImplementationGuide src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent t : src.getContact()) + tgt.addContact(convertImplementationGuideContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setCopyright(src.getCopyright()); + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) + tgt.addDependency(convertImplementationGuideDependencyComponent(t)); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) + tgt.addPackage(convertImplementationGuidePackageComponent(t)); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) + tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); + for (org.hl7.fhir.instance.model.UriType t : src.getBinary()) + tgt.addBinary(t.getValue()); + tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.dstu3.model.ImplementationGuide src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide tgt = new org.hl7.fhir.instance.model.ImplementationGuide(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertImplementationGuideContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setCopyright(src.getCopyright()); + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) + tgt.addDependency(convertImplementationGuideDependencyComponent(t)); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) + tgt.addPackage(convertImplementationGuidePackageComponent(t)); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) + tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); + for (org.hl7.fhir.dstu3.model.UriType t : src.getBinary()) + tgt.addBinary(t.getValue()); + tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ContactDetail convertImplementationGuideContactComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent convertImplementationGuideContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent(); + copyElement(src, tgt); + tgt.setType(convertGuideDependencyType(src.getType())); + tgt.setUri(src.getUri()); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent(); + copyElement(src, tgt); + tgt.setType(convertGuideDependencyType(src.getType())); + tgt.setUri(src.getUri()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REFERENCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.REFERENCE; + case INCLUSION: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.INCLUSION; + default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.NULL; + } + } + + public org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REFERENCE: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.REFERENCE; + case INCLUSION: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.INCLUSION; + default: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) + tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) + tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); + copyElement(src, tgt); + tgt.setExample(src.getPurpose() == org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.EXAMPLE); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setAcronym(src.getAcronym()); + tgt.setSource(convertType(src.getSource())); + tgt.setExampleFor(convertReference(src.getExampleFor())); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); + copyElement(src, tgt); + if (src.getExample()) + tgt.setPurpose(org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.EXAMPLE); + else + tgt.setPurpose(org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.PROFILE); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setAcronym(src.getAcronym()); + tgt.setSource(convertType(src.getSource())); + tgt.setExampleFor(convertReference(src.getExampleFor())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent(); + copyElement(src, tgt); + tgt.setSource(src.getSource()); + tgt.setTitle(src.getName()); + tgt.setKind(convertGuidePageKind(src.getKind())); + for (org.hl7.fhir.instance.model.CodeType t : src.getType()) + tgt.addType(t.getValue()); + for (org.hl7.fhir.instance.model.StringType t : src.getPackage()) + tgt.addPackage(t.getValue()); + tgt.setFormat(src.getFormat()); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) + tgt.addPage(convertImplementationGuidePageComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent(); + copyElement(src, tgt); + tgt.setSource(src.getSource()); + tgt.setName(src.getTitle()); + tgt.setKind(convertGuidePageKind(src.getKind())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getType()) + tgt.addType(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getPackage()) + tgt.addPackage(t.getValue()); + tgt.setFormat(src.getFormat()); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) + tgt.addPage(convertImplementationGuidePageComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PAGE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.PAGE; + case EXAMPLE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.EXAMPLE; + case LIST: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.LIST; + case INCLUDE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.INCLUDE; + case DIRECTORY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DIRECTORY; + case DICTIONARY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DICTIONARY; + case TOC: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.TOC; + case RESOURCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.RESOURCE; + default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.NULL; + } + } + + public org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PAGE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.PAGE; + case EXAMPLE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.EXAMPLE; + case LIST: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.LIST; + case INCLUDE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.INCLUDE; + case DIRECTORY: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.DIRECTORY; + case DICTIONARY: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.DICTIONARY; + case TOC: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.TOC; + case RESOURCE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.RESOURCE; + default: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.NULL; + } + } + + + public org.hl7.fhir.dstu3.model.Location convertLocation(org.hl7.fhir.instance.model.Location src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Location tgt = new org.hl7.fhir.dstu3.model.Location(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertLocationStatus(src.getStatus())); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setMode(convertLocationMode(src.getMode())); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); + tgt.setPosition(convertLocationPositionComponent(src.getPosition())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setPartOf(convertReference(src.getPartOf())); + return tgt; + } + + public org.hl7.fhir.instance.model.Location convertLocation(org.hl7.fhir.dstu3.model.Location src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Location tgt = new org.hl7.fhir.instance.model.Location(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertLocationStatus(src.getStatus())); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setMode(convertLocationMode(src.getMode())); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); + tgt.setPosition(convertLocationPositionComponent(src.getPosition())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setPartOf(convertReference(src.getPartOf())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.instance.model.Location.LocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Location.LocationStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.Location.LocationStatus.SUSPENDED; + case INACTIVE: return org.hl7.fhir.dstu3.model.Location.LocationStatus.INACTIVE; + default: return org.hl7.fhir.dstu3.model.Location.LocationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.dstu3.model.Location.LocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.Location.LocationStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.instance.model.Location.LocationStatus.SUSPENDED; + case INACTIVE: return org.hl7.fhir.instance.model.Location.LocationStatus.INACTIVE; + default: return org.hl7.fhir.instance.model.Location.LocationStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Location.LocationMode convertLocationMode(org.hl7.fhir.instance.model.Location.LocationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.dstu3.model.Location.LocationMode.INSTANCE; + case KIND: return org.hl7.fhir.dstu3.model.Location.LocationMode.KIND; + default: return org.hl7.fhir.dstu3.model.Location.LocationMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Location.LocationMode convertLocationMode(org.hl7.fhir.dstu3.model.Location.LocationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.instance.model.Location.LocationMode.INSTANCE; + case KIND: return org.hl7.fhir.instance.model.Location.LocationMode.KIND; + default: return org.hl7.fhir.instance.model.Location.LocationMode.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.instance.model.Location.LocationPositionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.dstu3.model.Location.LocationPositionComponent(); + copyElement(src, tgt); + tgt.setLongitude(src.getLongitude()); + tgt.setLatitude(src.getLatitude()); + tgt.setAltitude(src.getAltitude()); + return tgt; + } + + public org.hl7.fhir.instance.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.dstu3.model.Location.LocationPositionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.instance.model.Location.LocationPositionComponent(); + copyElement(src, tgt); + tgt.setLongitude(src.getLongitude()); + tgt.setLatitude(src.getLatitude()); + tgt.setAltitude(src.getAltitude()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Media convertMedia(org.hl7.fhir.instance.model.Media src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Media tgt = new org.hl7.fhir.dstu3.model.Media(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setType(convertDigitalMediaType(src.getType())); + tgt.setSubtype(convertCodeableConcept(src.getSubtype())); + tgt.setView(convertCodeableConcept(src.getView())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setOperator(convertReference(src.getOperator())); + tgt.getDevice().setDisplay(src.getDeviceName()); + tgt.setHeight(src.getHeight()); + tgt.setWidth(src.getWidth()); + tgt.setFrames(src.getFrames()); + tgt.setDuration(src.getDuration()); + tgt.setContent(convertAttachment(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Media convertMedia(org.hl7.fhir.dstu3.model.Media src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Media tgt = new org.hl7.fhir.instance.model.Media(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setType(convertDigitalMediaType(src.getType())); + tgt.setSubtype(convertCodeableConcept(src.getSubtype())); + tgt.setView(convertCodeableConcept(src.getView())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setOperator(convertReference(src.getOperator())); + tgt.setDeviceName(src.getDevice().getDisplay()); + tgt.setHeight(src.getHeight()); + tgt.setWidth(src.getWidth()); + tgt.setFrames(src.getFrames()); + tgt.setDuration(src.getDuration()); + tgt.setContent(convertAttachment(src.getContent())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.instance.model.Media.DigitalMediaType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHOTO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.PHOTO; + case VIDEO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.VIDEO; + case AUDIO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.AUDIO; + default: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.NULL; + } + } + + public org.hl7.fhir.instance.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.dstu3.model.Media.DigitalMediaType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHOTO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.PHOTO; + case VIDEO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.VIDEO; + case AUDIO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.AUDIO; + default: return org.hl7.fhir.instance.model.Media.DigitalMediaType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Medication convertMedication(org.hl7.fhir.instance.model.Medication src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Medication tgt = new org.hl7.fhir.dstu3.model.Medication(); + copyDomainResource(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setIsBrand(src.getIsBrand()); + tgt.setManufacturer(convertReference(src.getManufacturer())); +// tgt.setProduct(convertMedicationProductComponent(src.getProduct())); + tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); + return tgt; + } + + public org.hl7.fhir.instance.model.Medication convertMedication(org.hl7.fhir.dstu3.model.Medication src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Medication tgt = new org.hl7.fhir.instance.model.Medication(); + copyDomainResource(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setIsBrand(src.getIsBrand()); + tgt.setManufacturer(convertReference(src.getManufacturer())); +// tgt.setProduct(convertMedicationProductComponent(src.getProduct())); + tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); + return tgt; + } + +// public org.hl7.fhir.dstu3.model.Medication.MedicationProductComponent convertMedicationProductComponent(org.hl7.fhir.instance.model.Medication.MedicationProductComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.Medication.MedicationProductComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationProductComponent(); +// copyElement(src, tgt); +// tgt.setForm(convertCodeableConcept(src.getForm())); +// for (org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent t : src.getIngredient()) +// tgt.addIngredient(convertMedicationProductIngredientComponent(t)); +// for (org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent t : src.getBatch()) +// tgt.addBatch(convertMedicationProductBatchComponent(t)); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.Medication.MedicationProductComponent convertMedicationProductComponent(org.hl7.fhir.dstu3.model.Medication.MedicationProductComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.Medication.MedicationProductComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductComponent(); +// copyElement(src, tgt); +// tgt.setForm(convertCodeableConcept(src.getForm())); +// for (org.hl7.fhir.dstu3.model.Medication.MedicationProductIngredientComponent t : src.getIngredient()) +// tgt.addIngredient(convertMedicationProductIngredientComponent(t)); +// for (org.hl7.fhir.dstu3.model.Medication.MedicationProductBatchComponent t : src.getBatch()) +// tgt.addBatch(convertMedicationProductBatchComponent(t)); +// return tgt; +// } + +// public org.hl7.fhir.dstu3.model.Medication.MedicationProductIngredientComponent convertMedicationProductIngredientComponent(org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.Medication.MedicationProductIngredientComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationProductIngredientComponent(); +// copyElement(src, tgt); +// tgt.setItem(convertType(src.getItem())); +// tgt.setAmount(convertRatio(src.getAmount())); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent convertMedicationProductIngredientComponent(org.hl7.fhir.dstu3.model.Medication.MedicationProductIngredientComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent(); +// copyElement(src, tgt); +// if (src.hasItemReference()) +// tgt.setItem((org.hl7.fhir.instance.model.Reference) convertType(src.getItem())); +// tgt.setAmount(convertRatio(src.getAmount())); +// return tgt; +// } + +// public org.hl7.fhir.dstu3.model.Medication.MedicationProductBatchComponent convertMedicationProductBatchComponent(org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.Medication.MedicationProductBatchComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationProductBatchComponent(); +// copyElement(src, tgt); +// tgt.setLotNumber(src.getLotNumber()); +// tgt.setExpirationDate(src.getExpirationDate()); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent convertMedicationProductBatchComponent(org.hl7.fhir.dstu3.model.Medication.MedicationProductBatchComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent(); +// copyElement(src, tgt); +// tgt.setLotNumber(src.getLotNumber()); +// tgt.setExpirationDate(src.getExpirationDate()); +// return tgt; +// } + + public org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.instance.model.Medication.MedicationPackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent(); + copyElement(src, tgt); + tgt.setContainer(convertCodeableConcept(src.getContainer())); + for (org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent t : src.getContent()) + tgt.addContent(convertMedicationPackageContentComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationPackageComponent(); + copyElement(src, tgt); + tgt.setContainer(convertCodeableConcept(src.getContainer())); + for (org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent t : src.getContent()) + tgt.addContent(convertMedicationPackageContentComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent(); + copyElement(src, tgt); + tgt.setItem(convertType(src.getItem())); + tgt.setAmount(convertSimpleQuantity(src.getAmount())); + return tgt; + } + + public org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent(); + copyElement(src, tgt); + if (src.hasItemReference()) + tgt.setItem((org.hl7.fhir.instance.model.Reference) convertType(src.getItem())); + tgt.setAmount(convertSimpleQuantity(src.getAmount())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.instance.model.MedicationDispense src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.MedicationDispense tgt = new org.hl7.fhir.dstu3.model.MedicationDispense(); + copyDomainResource(src, tgt); + tgt.addIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); + tgt.setMedication(convertType(src.getMedication())); + tgt.setSubject(convertReference(src.getPatient())); +// tgt.setDispenser(convertReference(src.getDispenser())); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthorizingPrescription()) + tgt.addAuthorizingPrescription(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); + tgt.setWhenPrepared(src.getWhenPrepared()); + tgt.setWhenHandedOver(src.getWhenHandedOver()); + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.instance.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + if (src.hasNote()) + tgt.addNote().setText(src.getNote()); + for (org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent t : src.getDosageInstruction()) + tgt.addDosageInstruction(convertMedicationDispenseDosageInstructionComponent(t)); + tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.dstu3.model.MedicationDispense src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationDispense tgt = new org.hl7.fhir.instance.model.MedicationDispense(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifierFirstRep())); + tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); + tgt.setMedication(convertType(src.getMedication())); + tgt.setPatient(convertReference(src.getSubject())); +// tgt.setDispenser(convertReference(src.getDispenser())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthorizingPrescription()) + tgt.addAuthorizingPrescription(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); + tgt.setWhenPrepared(src.getWhenPrepared()); + tgt.setWhenHandedOver(src.getWhenHandedOver()); + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.setNote(t.getText()); + for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosageInstruction()) + tgt.addDosageInstruction(convertMedicationDispenseDosageInstructionComponent(t)); + tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.STOPPED; + default: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.STOPPED; + default: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Dosage convertMedicationDispenseDosageInstructionComponent(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Dosage tgt = new org.hl7.fhir.dstu3.model.Dosage(); + copyElement(src, tgt); + tgt.setText(src.getText()); +// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + if (src.hasSiteCodeableConcept()) + tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setDose(convertType(src.getDose())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent convertMedicationDispenseDosageInstructionComponent(Dosage src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent tgt = new org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent(); + copyElement(src, tgt); + tgt.setText(src.getText()); +// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + tgt.setSite(convertType(src.getSite())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setDose(convertType(src.getDose())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); + copyElement(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getResponsibleParty()) + tgt.addResponsibleParty(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); + copyElement(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getResponsibleParty()) + tgt.addResponsibleParty(convertReference(t)); + return tgt; + } + +// public org.hl7.fhir.dstu3.model.MedicationOrder convertMedicationOrder(org.hl7.fhir.instance.model.MedicationOrder src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.MedicationOrder tgt = new org.hl7.fhir.dstu3.model.MedicationOrder(); +// copyDomainResource(src, tgt); +// for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) +// tgt.addIdentifier(convertIdentifier(t)); +// tgt.setStatus(convertMedicationOrderStatus(src.getStatus())); +// tgt.setMedication(convertType(src.getMedication())); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setEncounter(convertReference(src.getEncounter())); +// if (src.hasDateWritten()) +// tgt.setDateWritten(src.getDateWritten()); +// tgt.setPrescriber(convertReference(src.getPrescriber())); +// if (src.hasReasonCodeableConcept()) +// tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); +// if (src.hasReasonReference()) +// tgt.addReasonReference(convertReference(src.getReasonReference())); +//// tgt.setDateEnded(src.getDateEnded()); +//// tgt.setReasonEnded(convertCodeableConcept(src.getReasonEnded())); +// if (src.hasNote()) +// tgt.addNote().setText(src.getNote()); +// for (org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent t : src.getDosageInstruction()) +// tgt.addDosageInstruction(convertMedicationOrderDosageInstructionComponent(t)); +// tgt.setDispenseRequest(convertMedicationOrderDispenseRequestComponent(src.getDispenseRequest())); +// tgt.setSubstitution(convertMedicationOrderSubstitutionComponent(src.getSubstitution())); +// tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.MedicationOrder convertMedicationOrder(org.hl7.fhir.dstu3.model.MedicationOrder src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.MedicationOrder tgt = new org.hl7.fhir.instance.model.MedicationOrder(); +// copyDomainResource(src, tgt); +// for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) +// tgt.addIdentifier(convertIdentifier(t)); +// tgt.setStatus(convertMedicationOrderStatus(src.getStatus())); +// tgt.setMedication(convertType(src.getMedication())); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setEncounter(convertReference(src.getEncounter())); +// if (src.hasDateWritten()) +// tgt.setDateWritten(src.getDateWritten()); +// tgt.setPrescriber(convertReference(src.getPrescriber())); +// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) +// tgt.setReason(convertCodeableConcept(t)); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) +// tgt.setReason(convertReference(t)); +//// tgt.setDateEnded(src.getDateEnded()); +//// tgt.setReasonEnded(convertCodeableConcept(src.getReasonEnded())); +// for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) +// tgt.setNote(t.getText()); +// for (org.hl7.fhir.dstu3.model.DosageInstruction t : src.getDosageInstruction()) +// tgt.addDosageInstruction(convertMedicationOrderDosageInstructionComponent(t)); +// tgt.setDispenseRequest(convertMedicationOrderDispenseRequestComponent(src.getDispenseRequest())); +// tgt.setSubstitution(convertMedicationOrderSubstitutionComponent(src.getSubstitution())); +// tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); +// return tgt; +// } +// +// public org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus convertMedicationOrderStatus(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case ACTIVE: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.ACTIVE; +// case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.ONHOLD; +// case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.COMPLETED; +// case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.ENTEREDINERROR; +// case STOPPED: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.STOPPED; +// case DRAFT: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.DRAFT; +// default: return org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus.NULL; +// } +// } +// +// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus convertMedicationOrderStatus(org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderStatus src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case ACTIVE: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ACTIVE; +// case ONHOLD: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ONHOLD; +// case COMPLETED: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.COMPLETED; +// case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ENTEREDINERROR; +// case STOPPED: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.STOPPED; +// case DRAFT: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.DRAFT; +// default: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.NULL; +// } +// } + + public org.hl7.fhir.dstu3.model.Dosage convertMedicationOrderDosageInstructionComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Dosage tgt = new org.hl7.fhir.dstu3.model.Dosage(); + copyElement(src, tgt); + tgt.setText(src.getText()); +// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + if (src.hasSiteCodeableConcept()) + tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setDose(convertType(src.getDose())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent convertMedicationOrderDosageInstructionComponent(org.hl7.fhir.dstu3.model.Dosage src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent(); + copyElement(src, tgt); + tgt.setText(src.getText()); +// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + tgt.setSite(convertType(src.getSite())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setDose(convertType(src.getDose())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + +// public org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderDispenseRequestComponent convertMedicationOrderDispenseRequestComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderDispenseRequestComponent tgt = new org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderDispenseRequestComponent(); +// copyElement(src, tgt); +//// tgt.setMedication(convertType(src.getMedication())); +// tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); +// tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); +// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); +// tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent convertMedicationOrderDispenseRequestComponent(org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderDispenseRequestComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent(); +// copyElement(src, tgt); +//// tgt.setMedication(convertType(src.getMedication())); +// tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); +// tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); +// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); +// tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); +// return tgt; +// } +// +// public org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderSubstitutionComponent convertMedicationOrderSubstitutionComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderSubstitutionComponent tgt = new org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderSubstitutionComponent(); +// copyElement(src, tgt); +//// tgt.setType(convertCodeableConcept(src.getType())); +// tgt.setReason(convertCodeableConcept(src.getReason())); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent convertMedicationOrderSubstitutionComponent(org.hl7.fhir.dstu3.model.MedicationOrder.MedicationOrderSubstitutionComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent(); +// copyElement(src, tgt); +//// tgt.setType(convertCodeableConcept(src.getType())); +// tgt.setReason(convertCodeableConcept(src.getReason())); +// return tgt; +// } + + public org.hl7.fhir.dstu3.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.instance.model.MedicationStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.MedicationStatement tgt = new org.hl7.fhir.dstu3.model.MedicationStatement(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); + tgt.setMedication(convertType(src.getMedication())); + tgt.setSubject(convertReference(src.getPatient())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setInformationSource(convertReference(src.getInformationSource())); + for (org.hl7.fhir.instance.model.Reference t : src.getSupportingInformation()) + tgt.addDerivedFrom(convertReference(t)); + if (src.hasDateAsserted()) + tgt.setDateAsserted(src.getDateAsserted()); +// tgt.getNotTakenElement().setValueAsString(src.getWasNotTaken() ? "Y" : "N"); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotTaken()) + tgt.addReasonNotTaken(convertCodeableConcept(t)); +// tgt.setReasonForUse(convertType(src.getReasonForUse())); + if (src.hasNote()) + tgt.addNote().setText(src.getNote()); + for (org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent t : src.getDosage()) + tgt.addDosage(convertMedicationStatementDosageComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.dstu3.model.MedicationStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationStatement tgt = new org.hl7.fhir.instance.model.MedicationStatement(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); + tgt.setMedication(convertType(src.getMedication())); + tgt.setPatient(convertReference(src.getSubject())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setInformationSource(convertReference(src.getInformationSource())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDerivedFrom()) + tgt.addSupportingInformation(convertReference(t)); + if (src.hasDateAsserted()) + tgt.setDateAsserted(src.getDateAsserted()); +// tgt.setWasNotTaken("Y".equals(src.getNotTakenElement().getValueAsString())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotTaken()) + tgt.addReasonNotTaken(convertCodeableConcept(t)); +// tgt.setReasonForUse(convertType(src.getReasonForUse())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.setNote(t.getText()); + for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosage()) + tgt.addDosage(convertMedicationStatementDosageComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; + case INTENDED: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.INTENDED; + default: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; + case INTENDED: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.INTENDED; + default: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Dosage convertMedicationStatementDosageComponent(org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Dosage tgt = new org.hl7.fhir.dstu3.model.Dosage(); + copyElement(src, tgt); + tgt.setText(src.getText()); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + if (src.hasSiteCodeableConcept()) + tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); +// tgt.setQuantity(convertType(src.getQuantity())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent convertMedicationStatementDosageComponent(org.hl7.fhir.dstu3.model.Dosage src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent tgt = new org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent(); + copyElement(src, tgt); + tgt.setText(src.getText()); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + tgt.setSite(convertType(src.getSite())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); +// tgt.setQuantity(convertType(src.getQuantity())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.MessageHeader convertMessageHeader(org.hl7.fhir.instance.model.MessageHeader src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.MessageHeader tgt = new org.hl7.fhir.dstu3.model.MessageHeader(); + copyDomainResource(src, tgt); + tgt.setTimestamp(src.getTimestamp()); + tgt.setEvent(convertCoding(src.getEvent())); + tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); + tgt.setSource(convertMessageSourceComponent(src.getSource())); + for (org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) + tgt.addDestination(convertMessageDestinationComponent(t)); + tgt.setEnterer(convertReference(src.getEnterer())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setReceiver(convertReference(src.getReceiver())); + tgt.setResponsible(convertReference(src.getResponsible())); + tgt.setReason(convertCodeableConcept(src.getReason())); + for (org.hl7.fhir.instance.model.Reference t : src.getData()) + tgt.addFocus(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.MessageHeader convertMessageHeader(org.hl7.fhir.dstu3.model.MessageHeader src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MessageHeader tgt = new org.hl7.fhir.instance.model.MessageHeader(); + copyDomainResource(src, tgt); + tgt.setTimestamp(src.getTimestamp()); + tgt.setEvent(convertCoding(src.getEvent())); + tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); + tgt.setSource(convertMessageSourceComponent(src.getSource())); + for (org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) + tgt.addDestination(convertMessageDestinationComponent(t)); + tgt.setEnterer(convertReference(src.getEnterer())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setReceiver(convertReference(src.getReceiver())); + tgt.setResponsible(convertReference(src.getResponsible())); + tgt.setReason(convertCodeableConcept(src.getReason())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getFocus()) + tgt.addData(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setCode(convertResponseType(src.getCode())); + tgt.setDetails(convertReference(src.getDetails())); + return tgt; + } + + public org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setCode(convertResponseType(src.getCode())); + tgt.setDetails(convertReference(src.getDetails())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.instance.model.MessageHeader.ResponseType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OK: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.OK; + case TRANSIENTERROR: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.TRANSIENTERROR; + case FATALERROR: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.FATALERROR; + default: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.NULL; + } + } + + public org.hl7.fhir.instance.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.dstu3.model.MessageHeader.ResponseType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OK: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.OK; + case TRANSIENTERROR: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.TRANSIENTERROR; + case FATALERROR: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.FATALERROR; + default: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setSoftware(src.getSoftware()); + tgt.setVersion(src.getVersion()); + tgt.setContact(convertContactPoint(src.getContact())); + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setSoftware(src.getSoftware()); + tgt.setVersion(src.getVersion()); + tgt.setContact(convertContactPoint(src.getContact())); + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setTarget(convertReference(src.getTarget())); + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setTarget(convertReference(src.getTarget())); + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.NamingSystem convertNamingSystem(org.hl7.fhir.instance.model.NamingSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.NamingSystem tgt = new org.hl7.fhir.dstu3.model.NamingSystem(); + copyDomainResource(src, tgt); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertNamingSystemType(src.getKind())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent t : src.getContact()) + tgt.addContact(convertNamingSystemContactComponent(t)); + tgt.setResponsible(src.getResponsible()); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setUsage(src.getUsage()); + for (org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) + tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); + tgt.setReplacedBy(convertReference(src.getReplacedBy())); + return tgt; + } + + public org.hl7.fhir.instance.model.NamingSystem convertNamingSystem(org.hl7.fhir.dstu3.model.NamingSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.NamingSystem tgt = new org.hl7.fhir.instance.model.NamingSystem(); + copyDomainResource(src, tgt); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertNamingSystemType(src.getKind())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertNamingSystemContactComponent(t)); + tgt.setResponsible(src.getResponsible()); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setUsage(src.getUsage()); + for (org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) + tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); + tgt.setReplacedBy(convertReference(src.getReplacedBy())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.instance.model.NamingSystem.NamingSystemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODESYSTEM: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.CODESYSTEM; + case IDENTIFIER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.IDENTIFIER; + case ROOT: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.ROOT; + default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.NULL; + } + } + + public org.hl7.fhir.instance.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODESYSTEM: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.CODESYSTEM; + case IDENTIFIER: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.IDENTIFIER; + case ROOT: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.ROOT; + default: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ContactDetail convertNamingSystemContactComponent(org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent convertNamingSystemContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent tgt = new org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent(); + copyElement(src, tgt); + tgt.setType(convertNamingSystemIdentifierType(src.getType())); + tgt.setValue(src.getValue()); + tgt.setPreferred(src.getPreferred()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent(); + copyElement(src, tgt); + tgt.setType(convertNamingSystemIdentifierType(src.getType())); + tgt.setValue(src.getValue()); + tgt.setPreferred(src.getPreferred()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OID; + case UUID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.UUID; + case URI: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.URI; + case OTHER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OTHER; + default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.NULL; + } + } + + public org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OID: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.OID; + case UUID: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.UUID; + case URI: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.URI; + case OTHER: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.OTHER; + default: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Observation convertObservation(org.hl7.fhir.instance.model.Observation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Observation tgt = new org.hl7.fhir.dstu3.model.Observation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertObservationStatus(src.getStatus())); + tgt.addCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setIssued(src.getIssued()); + for (org.hl7.fhir.instance.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + tgt.setValue(convertType(src.getValue())); + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); + tgt.setComment(src.getComments()); + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setSpecimen(convertReference(src.getSpecimen())); + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + for (org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent t : src.getRelated()) + tgt.addRelated(convertObservationRelatedComponent(t)); + for (org.hl7.fhir.instance.model.Observation.ObservationComponentComponent t : src.getComponent()) + tgt.addComponent(convertObservationComponentComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Observation convertObservation(org.hl7.fhir.dstu3.model.Observation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Observation tgt = new org.hl7.fhir.instance.model.Observation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertObservationStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.CodeableConcept c : src.getCategory()) + tgt.setCategory(convertCodeableConcept(c)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setIssued(src.getIssued()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + tgt.setValue(convertType(src.getValue())); + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); + tgt.setComments(src.getComment()); + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setSpecimen(convertReference(src.getSpecimen())); + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + for (org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent t : src.getRelated()) + tgt.addRelated(convertObservationRelatedComponent(t)); + for (org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent t : src.getComponent()) + tgt.addComponent(convertObservationComponentComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.instance.model.Observation.ObservationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.REGISTERED; + case PRELIMINARY: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.FINAL; + case AMENDED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.AMENDED; + case CANCELLED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.dstu3.model.Observation.ObservationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.REGISTERED; + case PRELIMINARY: return org.hl7.fhir.instance.model.Observation.ObservationStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.instance.model.Observation.ObservationStatus.FINAL; + case AMENDED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.AMENDED; + case CANCELLED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Observation.ObservationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.instance.model.Observation.ObservationStatus.UNKNOWN; + default: return org.hl7.fhir.instance.model.Observation.ObservationStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + tgt.setType(convertCodeableConcept(src.getMeaning())); + tgt.setAge(convertRange(src.getAge())); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); +// for (org.hl7.fhir.dstu3.model.CodeableConcept c : src.getMeaning()) + tgt.setMeaning(convertCodeableConcept(src.getType())); + tgt.setAge(convertRange(src.getAge())); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent(); + copyElement(src, tgt); + tgt.setType(convertObservationRelationshipType(src.getType())); + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + public org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent(); + copyElement(src, tgt); + tgt.setType(convertObservationRelationshipType(src.getType())); + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.instance.model.Observation.ObservationRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HASMEMBER: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.HASMEMBER; + case DERIVEDFROM: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.DERIVEDFROM; + case SEQUELTO: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.SEQUELTO; + case REPLACES: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.REPLACES; + case QUALIFIEDBY: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.QUALIFIEDBY; + case INTERFEREDBY: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.INTERFEREDBY; + default: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.NULL; + } + } + + public org.hl7.fhir.instance.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HASMEMBER: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.HASMEMBER; + case DERIVEDFROM: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.DERIVEDFROM; + case SEQUELTO: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.SEQUELTO; + case REPLACES: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.REPLACES; + case QUALIFIEDBY: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.QUALIFIEDBY; + case INTERFEREDBY: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.INTERFEREDBY; + default: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.instance.model.Observation.ObservationComponentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(convertType(src.getValue())); + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + for (org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationComponentComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(convertType(src.getValue())); + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + for (org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.instance.model.OperationDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.OperationDefinition tgt = new org.hl7.fhir.dstu3.model.OperationDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertOperationKind(src.getKind())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent t : src.getContact()) + tgt.addContact(convertOperationDefinitionContactComponent(t)); + tgt.setDescription(src.getDescription()); + tgt.setPurpose(src.getRequirements()); + if (src.hasIdempotent()) + tgt.setIdempotent(src.getIdempotent()); + tgt.setCode(src.getCode()); + tgt.setComment(src.getNotes()); + tgt.setBase(convertReference(src.getBase())); + tgt.setSystem(src.getSystem()); + for (org.hl7.fhir.instance.model.CodeType t : src.getType()) + tgt.addResource(t.getValue()); + tgt.setType(tgt.hasResource()); + tgt.setInstance(src.getInstance()); + for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) + tgt.addParameter(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.dstu3.model.OperationDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationDefinition tgt = new org.hl7.fhir.instance.model.OperationDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertOperationKind(src.getKind())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertOperationDefinitionContactComponent(t)); + tgt.setDescription(src.getDescription()); + tgt.setRequirements(src.getPurpose()); + tgt.setIdempotent(src.getIdempotent()); + tgt.setCode(src.getCode()); + tgt.setNotes(src.getComment()); + if (src.hasBase()) + tgt.setBase(convertReference(src.getBase())); + tgt.setSystem(src.getSystem()); + if (src.getType()) + for (org.hl7.fhir.dstu3.model.CodeType t : src.getResource()) + tgt.addType(t.getValue()); + tgt.setInstance(src.getInstance()); + for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) + tgt.addParameter(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.instance.model.OperationDefinition.OperationKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OPERATION: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.OPERATION; + case QUERY: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.QUERY; + default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.NULL; + } + } + + public org.hl7.fhir.instance.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OPERATION: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.OPERATION; + case QUERY: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.QUERY; + default: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ContactDetail convertOperationDefinitionContactComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent convertOperationDefinitionContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setUse(convertOperationParameterUse(src.getUse())); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + tgt.setDocumentation(src.getDocumentation()); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); + for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) + tgt.addPart(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setUse(convertOperationParameterUse(src.getUse())); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + tgt.setDocumentation(src.getDocumentation()); + if (src.hasSearchType()) { + tgt.setType(src.getSearchType().toCode()); + tgt.setType("string"); + } else + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + if (src.hasBinding()) + tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); + for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) + tgt.addPart(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.IN; + case OUT: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.OUT; + default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.NULL; + } + } + + public org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.IN; + case OUT: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.OUT; + default: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.NULL; + } + } + + public org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.instance.model.OperationOutcome src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.OperationOutcome tgt = new org.hl7.fhir.dstu3.model.OperationOutcome(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) + tgt.addIssue(convertOperationOutcomeIssueComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.dstu3.model.OperationOutcome src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationOutcome tgt = new org.hl7.fhir.instance.model.OperationOutcome(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) + tgt.addIssue(convertOperationOutcomeIssueComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent(); + copyElement(src, tgt); + tgt.setSeverity(convertIssueSeverity(src.getSeverity())); + tgt.setCode(convertIssueType(src.getCode())); + tgt.setDetails(convertCodeableConcept(src.getDetails())); + tgt.setDiagnostics(src.getDiagnostics()); + for (org.hl7.fhir.instance.model.StringType t : src.getLocation()) + tgt.addLocation(t.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent(); + copyElement(src, tgt); + tgt.setSeverity(convertIssueSeverity(src.getSeverity())); + tgt.setCode(convertIssueType(src.getCode())); + tgt.setDetails(convertCodeableConcept(src.getDetails())); + tgt.setDiagnostics(src.getDiagnostics()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getLocation()) + tgt.addLocation(t.getValue()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FATAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.FATAL; + case ERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.ERROR; + case WARNING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.WARNING; + case INFORMATION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.INFORMATION; + default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.NULL; + } + } + + public org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FATAL: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.FATAL; + case ERROR: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.ERROR; + case WARNING: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.WARNING; + case INFORMATION: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.INFORMATION; + default: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.NULL; + } + } + + public org.hl7.fhir.dstu3.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.instance.model.OperationOutcome.IssueType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVALID; + case STRUCTURE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.STRUCTURE; + case REQUIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.REQUIRED; + case VALUE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.VALUE; + case INVARIANT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVARIANT; + case SECURITY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SECURITY; + case LOGIN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOGIN; + case UNKNOWN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.UNKNOWN; + case EXPIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXPIRED; + case FORBIDDEN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.FORBIDDEN; + case SUPPRESSED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SUPPRESSED; + case PROCESSING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.PROCESSING; + case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTSUPPORTED; + case DUPLICATE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.DUPLICATE; + case NOTFOUND: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTFOUND; + case TOOLONG: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOLONG; + case CODEINVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CODEINVALID; + case EXTENSION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXTENSION; + case TOOCOSTLY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOCOSTLY; + case BUSINESSRULE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.BUSINESSRULE; + case CONFLICT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CONFLICT; + case INCOMPLETE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INCOMPLETE; + case TRANSIENT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TRANSIENT; + case LOCKERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOCKERROR; + case NOSTORE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOSTORE; + case EXCEPTION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXCEPTION; + case TIMEOUT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TIMEOUT; + case THROTTLED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.THROTTLED; + case INFORMATIONAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INFORMATIONAL; + default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NULL; + } + } + + public org.hl7.fhir.instance.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.dstu3.model.OperationOutcome.IssueType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INVALID: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INVALID; + case STRUCTURE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.STRUCTURE; + case REQUIRED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.REQUIRED; + case VALUE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.VALUE; + case INVARIANT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INVARIANT; + case SECURITY: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.SECURITY; + case LOGIN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.LOGIN; + case UNKNOWN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.UNKNOWN; + case EXPIRED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXPIRED; + case FORBIDDEN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.FORBIDDEN; + case SUPPRESSED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.SUPPRESSED; + case PROCESSING: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.PROCESSING; + case NOTSUPPORTED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOTSUPPORTED; + case DUPLICATE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.DUPLICATE; + case NOTFOUND: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOTFOUND; + case TOOLONG: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TOOLONG; + case CODEINVALID: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.CODEINVALID; + case EXTENSION: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXTENSION; + case TOOCOSTLY: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TOOCOSTLY; + case BUSINESSRULE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.BUSINESSRULE; + case CONFLICT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.CONFLICT; + case INCOMPLETE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INCOMPLETE; + case TRANSIENT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TRANSIENT; + case LOCKERROR: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.LOCKERROR; + case NOSTORE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOSTORE; + case EXCEPTION: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXCEPTION; + case TIMEOUT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TIMEOUT; + case THROTTLED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.THROTTLED; + case INFORMATIONAL: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INFORMATIONAL; + default: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NULL; + } + } + + + public org.hl7.fhir.dstu3.model.Organization convertOrganization(org.hl7.fhir.instance.model.Organization src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Organization tgt = new org.hl7.fhir.dstu3.model.Organization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + tgt.addType(convertCodeableConcept(src.getType())); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.instance.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setPartOf(convertReference(src.getPartOf())); + for (org.hl7.fhir.instance.model.Organization.OrganizationContactComponent t : src.getContact()) + tgt.addContact(convertOrganizationContactComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Organization convertOrganization(org.hl7.fhir.dstu3.model.Organization src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Organization tgt = new org.hl7.fhir.instance.model.Organization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + tgt.setType(convertCodeableConcept(src.getTypeFirstRep())); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setPartOf(convertReference(src.getPartOf())); + for (org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent t : src.getContact()) + tgt.addContact(convertOrganizationContactComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.instance.model.Organization.OrganizationContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent(); + copyElement(src, tgt); + tgt.setPurpose(convertCodeableConcept(src.getPurpose())); + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + return tgt; + } + + public org.hl7.fhir.instance.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.instance.model.Organization.OrganizationContactComponent(); + copyElement(src, tgt); + tgt.setPurpose(convertCodeableConcept(src.getPurpose())); + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + return tgt; + } + + + public org.hl7.fhir.dstu3.model.Patient convertPatient(org.hl7.fhir.instance.model.Patient src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Patient tgt = new org.hl7.fhir.dstu3.model.Patient(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + for (org.hl7.fhir.instance.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + tgt.setDeceased(convertType(src.getDeceased())); + for (org.hl7.fhir.instance.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); + tgt.setMultipleBirth(convertType(src.getMultipleBirth())); + for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + for (org.hl7.fhir.instance.model.Patient.ContactComponent t : src.getContact()) + tgt.addContact(convertContactComponent(t)); + tgt.setAnimal(convertAnimalComponent(src.getAnimal())); + for (org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent t : src.getCommunication()) + tgt.addCommunication(convertPatientCommunicationComponent(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getCareProvider()) + tgt.addGeneralPractitioner(convertReference(t)); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + for (org.hl7.fhir.instance.model.Patient.PatientLinkComponent t : src.getLink()) + tgt.addLink(convertPatientLinkComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Patient convertPatient(org.hl7.fhir.dstu3.model.Patient src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Patient tgt = new org.hl7.fhir.instance.model.Patient(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + tgt.setDeceased(convertType(src.getDeceased())); + for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); + tgt.setMultipleBirth(convertType(src.getMultipleBirth())); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + for (org.hl7.fhir.dstu3.model.Patient.ContactComponent t : src.getContact()) + tgt.addContact(convertContactComponent(t)); + tgt.setAnimal(convertAnimalComponent(src.getAnimal())); + for (org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent t : src.getCommunication()) + tgt.addCommunication(convertPatientCommunicationComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getGeneralPractitioner()) + tgt.addCareProvider(convertReference(t)); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + for (org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent t : src.getLink()) + tgt.addLink(convertPatientLinkComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.instance.model.Patient.ContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Patient.ContactComponent tgt = new org.hl7.fhir.dstu3.model.Patient.ContactComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRelationship()) + tgt.addRelationship(convertCodeableConcept(t)); + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setOrganization(convertReference(src.getOrganization())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.dstu3.model.Patient.ContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Patient.ContactComponent tgt = new org.hl7.fhir.instance.model.Patient.ContactComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRelationship()) + tgt.addRelationship(convertCodeableConcept(t)); + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setOrganization(convertReference(src.getOrganization())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.instance.model.Patient.AnimalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Patient.AnimalComponent tgt = new org.hl7.fhir.dstu3.model.Patient.AnimalComponent(); + copyElement(src, tgt); + tgt.setSpecies(convertCodeableConcept(src.getSpecies())); + tgt.setBreed(convertCodeableConcept(src.getBreed())); + tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); + return tgt; + } + + public org.hl7.fhir.instance.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.dstu3.model.Patient.AnimalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Patient.AnimalComponent tgt = new org.hl7.fhir.instance.model.Patient.AnimalComponent(); + copyElement(src, tgt); + tgt.setSpecies(convertCodeableConcept(src.getSpecies())); + tgt.setBreed(convertCodeableConcept(src.getBreed())); + tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent(); + copyElement(src, tgt); + tgt.setLanguage(convertCodeableConcept(src.getLanguage())); + tgt.setPreferred(src.getPreferred()); + return tgt; + } + + public org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent(); + copyElement(src, tgt); + tgt.setLanguage(convertCodeableConcept(src.getLanguage())); + tgt.setPreferred(src.getPreferred()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.instance.model.Patient.PatientLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent(); + copyElement(src, tgt); + tgt.setOther(convertReference(src.getOther())); + tgt.setType(convertLinkType(src.getType())); + return tgt; + } + + public org.hl7.fhir.instance.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.instance.model.Patient.PatientLinkComponent(); + copyElement(src, tgt); + tgt.setOther(convertReference(src.getOther())); + tgt.setType(convertLinkType(src.getType())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Patient.LinkType convertLinkType(org.hl7.fhir.instance.model.Patient.LinkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACE: return org.hl7.fhir.dstu3.model.Patient.LinkType.REPLACEDBY; + case REFER: return org.hl7.fhir.dstu3.model.Patient.LinkType.REFER; + case SEEALSO: return org.hl7.fhir.dstu3.model.Patient.LinkType.SEEALSO; + default: return org.hl7.fhir.dstu3.model.Patient.LinkType.NULL; + } + } + + public org.hl7.fhir.instance.model.Patient.LinkType convertLinkType(org.hl7.fhir.dstu3.model.Patient.LinkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACEDBY: return org.hl7.fhir.instance.model.Patient.LinkType.REPLACE; + case REPLACES: return org.hl7.fhir.instance.model.Patient.LinkType.REPLACE; + case REFER: return org.hl7.fhir.instance.model.Patient.LinkType.REFER; + case SEEALSO: return org.hl7.fhir.instance.model.Patient.LinkType.SEEALSO; + default: return org.hl7.fhir.instance.model.Patient.LinkType.NULL; + } + } + + + public org.hl7.fhir.dstu3.model.Person convertPerson(org.hl7.fhir.instance.model.Person src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Person tgt = new org.hl7.fhir.dstu3.model.Person(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.instance.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.instance.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setPhoto(convertAttachment(src.getPhoto())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setActive(src.getActive()); + for (org.hl7.fhir.instance.model.Person.PersonLinkComponent t : src.getLink()) + tgt.addLink(convertPersonLinkComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Person convertPerson(org.hl7.fhir.dstu3.model.Person src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Person tgt = new org.hl7.fhir.instance.model.Person(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setPhoto(convertAttachment(src.getPhoto())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setActive(src.getActive()); + for (org.hl7.fhir.dstu3.model.Person.PersonLinkComponent t : src.getLink()) + tgt.addLink(convertPersonLinkComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.instance.model.Person.PersonLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.dstu3.model.Person.PersonLinkComponent(); + copyElement(src, tgt); + tgt.setTarget(convertReference(src.getTarget())); + tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); + return tgt; + } + + public org.hl7.fhir.instance.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.dstu3.model.Person.PersonLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.instance.model.Person.PersonLinkComponent(); + copyElement(src, tgt); + tgt.setTarget(convertReference(src.getTarget())); + tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LEVEL1: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL1; + case LEVEL2: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL2; + case LEVEL3: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL3; + case LEVEL4: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL4; + default: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.NULL; + } + } + + public org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LEVEL1: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL1; + case LEVEL2: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL2; + case LEVEL3: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL3; + case LEVEL4: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL4; + default: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Practitioner convertPractitioner(org.hl7.fhir.instance.model.Practitioner src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Practitioner tgt = new org.hl7.fhir.dstu3.model.Practitioner(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + if (src.hasName()) + tgt.addName(convertHumanName(src.getName())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.instance.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); +// for (org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent t : src.getPractitionerRole()) +// tgt.addRole(convertPractitionerPractitionerRoleComponent(t)); + for (org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) + tgt.addQualification(convertPractitionerQualificationComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCommunication()) + tgt.addCommunication(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Practitioner convertPractitioner(org.hl7.fhir.dstu3.model.Practitioner src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Practitioner tgt = new org.hl7.fhir.instance.model.Practitioner(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) + tgt.setName(convertHumanName(t)); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); +// for (org.hl7.fhir.dstu3.model.Practitioner.PractitionerRoleComponent t : src.getRole()) +// tgt.addPractitionerRole(convertPractitionerPractitionerRoleComponent(t)); + for (org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) + tgt.addQualification(convertPractitionerQualificationComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCommunication()) + tgt.addCommunication(convertCodeableConcept(t)); + return tgt; + } + +// public org.hl7.fhir.dstu3.model.Practitioner.PractitionerRoleComponent convertPractitionerPractitionerRoleComponent(org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu3.model.Practitioner.PractitionerRoleComponent tgt = new org.hl7.fhir.dstu3.model.Practitioner.PractitionerRoleComponent(); +// copyElement(src, tgt); +// tgt.setOrganization(convertReference(src.getManagingOrganization())); +// tgt.setCode(convertCodeableConcept(src.getRole())); +// for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialty()) +// tgt.addSpecialty(convertCodeableConcept(t)); +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// for (org.hl7.fhir.instance.model.Reference t : src.getLocation()) +// tgt.addLocation(convertReference(t)); +// for (org.hl7.fhir.instance.model.Reference t : src.getHealthcareService()) +// tgt.addHealthcareService(convertReference(t)); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent convertPractitionerPractitionerRoleComponent(org.hl7.fhir.dstu3.model.Practitioner.PractitionerRoleComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent tgt = new org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent(); +// copyElement(src, tgt); +// tgt.setManagingOrganization(convertReference(src.getOrganization())); +// tgt.setRole(convertCodeableConcept(src.getCode())); +// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) +// tgt.addSpecialty(convertCodeableConcept(t)); +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getLocation()) +// tgt.addLocation(convertReference(t)); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getHealthcareService()) +// tgt.addHealthcareService(convertReference(t)); +// return tgt; +// } + + public org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setIssuer(convertReference(src.getIssuer())); + return tgt; + } + + public org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setIssuer(convertReference(src.getIssuer())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Procedure convertProcedure(org.hl7.fhir.instance.model.Procedure src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Procedure tgt = new org.hl7.fhir.dstu3.model.Procedure(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setStatus(convertProcedureStatus(src.getStatus())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setNotDone(src.getNotPerformed()); +// for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotPerformed()) + if (src.hasReasonNotPerformed()) + tgt.setNotDoneReason(convertCodeableConcept(src.getReasonNotPerformed().get(0))); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + if (src.hasReasonCodeableConcept()) + tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); + for (org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) + tgt.addPerformer(convertProcedurePerformerComponent(t)); + tgt.setPerformed(convertType(src.getPerformed())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + for (org.hl7.fhir.instance.model.Reference t : src.getReport()) + tgt.addReport(convertReference(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getComplication()) + tgt.addComplication(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getFollowUp()) + tgt.addFollowUp(convertCodeableConcept(t)); + tgt.addBasedOn(convertReference(src.getRequest())); +// for (org.hl7.fhir.instance.model.Annotation t : src.getNotes()) +// tgt.addNotes(convertAnnotation(t)); + for (org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) + tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Procedure convertProcedure(org.hl7.fhir.dstu3.model.Procedure src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Procedure tgt = new org.hl7.fhir.instance.model.Procedure(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setStatus(convertProcedureStatus(src.getStatus())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setNotPerformed(src.getNotDone()); +// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotPerformed()) + tgt.addReasonNotPerformed(convertCodeableConcept(src.getNotDoneReason())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + tgt.setReason(convertType(src.getReasonCodeFirstRep())); + for (org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) + tgt.addPerformer(convertProcedurePerformerComponent(t)); + tgt.setPerformed(convertType(src.getPerformed())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReport()) + tgt.addReport(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getComplication()) + tgt.addComplication(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getFollowUp()) + tgt.addFollowUp(convertCodeableConcept(t)); + tgt.setRequest(convertReference(src.getBasedOnFirstRep())); +// for (org.hl7.fhir.dstu3.model.Annotation t : src.getNotes()) +// tgt.addNotes(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) + tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.instance.model.Procedure.ProcedureStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.INPROGRESS; + case ABORTED: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.ABORTED; + case COMPLETED: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.INPROGRESS; + case ABORTED: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.ABORTED; + case COMPLETED: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent(); + copyElement(src, tgt); + tgt.setActor(convertReference(src.getActor())); + tgt.setRole(convertCodeableConcept(src.getRole())); + return tgt; + } + + public org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent(); + copyElement(src, tgt); + tgt.setActor(convertReference(src.getActor())); + tgt.setRole(convertCodeableConcept(src.getRole())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent(); + copyElement(src, tgt); + tgt.setAction(convertCodeableConcept(src.getAction())); + tgt.setManipulated(convertReference(src.getManipulated())); + return tgt; + } + + public org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent(); + copyElement(src, tgt); + tgt.setAction(convertCodeableConcept(src.getAction())); + tgt.setManipulated(convertReference(src.getManipulated())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.instance.model.ProcedureRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ProcedureRequest tgt = new org.hl7.fhir.dstu3.model.ProcedureRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + if (src.hasReasonCodeableConcept()) + tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); + tgt.setOccurrence(convertType(src.getScheduled())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setPerformer(convertReference(src.getPerformer())); + tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); +// for (org.hl7.fhir.instance.model.Annotation t : src.getNotes()) +// tgt.addNotes(convertAnnotation(t)); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + tgt.setAuthoredOn(src.getOrderedOn()); +// tgt.setOrderer(convertReference(src.getOrderer())); + tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); + return tgt; + } + + public org.hl7.fhir.instance.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.dstu3.model.ProcedureRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ProcedureRequest tgt = new org.hl7.fhir.instance.model.ProcedureRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + tgt.setReason(convertType(src.getReasonCodeFirstRep())); + tgt.setScheduled(convertType(src.getOccurrence())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setPerformer(convertReference(src.getPerformer())); + tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); +// for (org.hl7.fhir.dstu3.model.Annotation t : src.getNotes()) +// tgt.addNotes(convertAnnotation(t)); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + tgt.setOrderedOn(src.getAuthoredOn()); +// tgt.setOrderer(convertReference(src.getOrderer())); + tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; + case DRAFT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; + case REQUESTED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case RECEIVED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case ACCEPTED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case INPROGRESS: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; +// case REJECTED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.REJECTED; + case ABORTED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { +// case PROPOSED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.PROPOSED; + case DRAFT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; +// case REQUESTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.REQUESTED; +// case RECEIVED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.RECEIVED; +// case ACCEPTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.ACCEPTED; + case ACTIVE: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; +// case REJECTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.REJECTED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.ABORTED; + default: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.URGENT; + case STAT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.STAT; + case ASAP: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.ASAP; + default: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.NULL; + } + } + + public org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.URGENT; + case STAT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.STAT; + case ASAP: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.ASAP; + default: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.NULL; + } + } + + + public org.hl7.fhir.dstu3.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.instance.model.ProcessRequest.ActionList src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CANCEL: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.CANCEL; + case POLL: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.POLL; + case REPROCESS: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.REPROCESS; + case STATUS: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.STATUS; + default: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.NULL; + } + } + + public org.hl7.fhir.instance.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.dstu3.model.ProcessRequest.ActionList src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CANCEL: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.CANCEL; + case POLL: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.POLL; + case REPROCESS: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.REPROCESS; + case STATUS: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.STATUS; + default: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent(); + copyElement(src, tgt); + tgt.setSequenceLinkId(src.getSequenceLinkId()); + return tgt; + } + + public org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent(); + copyElement(src, tgt); + tgt.setSequenceLinkId(src.getSequenceLinkId()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Provenance convertProvenance(org.hl7.fhir.instance.model.Provenance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Provenance tgt = new org.hl7.fhir.dstu3.model.Provenance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Reference t : src.getTarget()) + tgt.addTarget(convertReference(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setRecorded(src.getRecorded()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + for (org.hl7.fhir.instance.model.Coding tc : t.getCoding()) + tgt.addReason(convertCoding(tc)); + for (org.hl7.fhir.instance.model.Coding t : src.getActivity().getCoding()) + tgt.setActivity(convertCoding(t)); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.instance.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + for (org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) + tgt.addAgent(convertProvenanceAgentComponent(t)); + for (org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) + tgt.addEntity(convertProvenanceEntityComponent(t)); + for (org.hl7.fhir.instance.model.Signature t : src.getSignature()) + tgt.addSignature(convertSignature(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Provenance convertProvenance(org.hl7.fhir.dstu3.model.Provenance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Provenance tgt = new org.hl7.fhir.instance.model.Provenance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Reference t : src.getTarget()) + tgt.addTarget(convertReference(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setRecorded(src.getRecorded()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getReason()) + tgt.addReason().addCoding(convertCoding(t)); + tgt.setActivity(new org.hl7.fhir.instance.model.CodeableConcept().addCoding(convertCoding(src.getActivity()))); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.dstu3.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) + tgt.addAgent(convertProvenanceAgentComponent(t)); + for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) + tgt.addEntity(convertProvenanceEntityComponent(t)); + for (org.hl7.fhir.dstu3.model.Signature t : src.getSignature()) + tgt.addSignature(convertSignature(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent(); + copyElement(src, tgt); +// tgt.setRole(convertCoding(src.getRole())); + tgt.setWho(convertReference(src.getActor())); + return tgt; + } + + public org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent(); + copyElement(src, tgt); +// tgt.setRole(convertCoding(src.getRole())); + if (src.hasWhoReference()) + tgt.setActor(convertReference(src.getWhoReference())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent(); + copyElement(src, tgt); + tgt.setRole(convertProvenanceEntityRole(src.getRole())); + if (src.hasReference()) + tgt.setWhat(new org.hl7.fhir.dstu3.model.Reference().setReference(src.getReference())); + tgt.addAgent(convertProvenanceAgentComponent(src.getAgent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent(); + copyElement(src, tgt); + tgt.setRole(convertProvenanceEntityRole(src.getRole())); + if (src.hasWhatReference() && src.getWhatReference().hasReference()) + tgt.setReference(src.getWhatReference().getReference()); + for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) + tgt.setAgent(convertProvenanceAgentComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DERIVATION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.DERIVATION; + case REVISION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.REVISION; + case QUOTATION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.QUOTATION; + case SOURCE: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.SOURCE; + default: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.NULL; + } + } + + public org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DERIVATION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.DERIVATION; + case REVISION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.REVISION; + case QUOTATION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.QUOTATION; + case SOURCE: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.SOURCE; + default: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Questionnaire convertQuestionnaire(org.hl7.fhir.instance.model.Questionnaire src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Questionnaire tgt = new org.hl7.fhir.dstu3.model.Questionnaire(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addContact(convertQuestionnaireContactComponent(t)); + org.hl7.fhir.instance.model.Questionnaire.GroupComponent root = src.getGroup(); + tgt.setTitle(root.getTitle()); + for (org.hl7.fhir.instance.model.Coding t : root.getConcept()) + tgt.addCode(convertCoding(t)); + for (org.hl7.fhir.instance.model.CodeType t : src.getSubjectType()) + tgt.addSubjectType(t.getValue()); + tgt.addItem(convertQuestionnaireGroupComponent(root)); + return tgt; + } + + public org.hl7.fhir.instance.model.Questionnaire convertQuestionnaire(org.hl7.fhir.dstu3.model.Questionnaire src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Questionnaire tgt = new org.hl7.fhir.instance.model.Questionnaire(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (ContactDetail t : src.getContact()) + for (org.hl7.fhir.dstu3.model.ContactPoint t1 : t.getTelecom()) + tgt.addTelecom(convertContactPoint(t1)); + org.hl7.fhir.instance.model.Questionnaire.GroupComponent root = tgt.getGroup(); + root.setTitle(src.getTitle()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) { + root.addConcept(convertCoding(t)); + } + for (org.hl7.fhir.dstu3.model.CodeType t : src.getSubjectType()) + tgt.addSubjectType(t.getValue()); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + if (t.getType() == org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.GROUP) + root.addGroup(convertQuestionnaireGroupComponent(t)); + else + root.addQuestion(convertQuestionnaireQuestionComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ContactDetail convertQuestionnaireContactComponent(org.hl7.fhir.instance.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.addTelecom(convertContactPoint(src)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus convertQuestionnaireStatus(org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.DRAFT; + case PUBLISHED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.RETIRED; + default: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.NULL; + } + } + + private static org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus convertQuestionnaireStatus(org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.PUBLISHED; + case RETIRED: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.RETIRED; + default: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireQuestionComponent(org.hl7.fhir.instance.model.Questionnaire.QuestionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.instance.model.Coding t : src.getConcept()) + tgt.addCode(convertCoding(t)); + tgt.setText(src.getText()); + tgt.setType(convertQuestionnaireQuestionType(src.getType())); + tgt.setRequired(src.getRequired()); + tgt.setRepeats(src.getRepeats()); + tgt.setOptions(convertReference(src.getOptions())); + for (org.hl7.fhir.instance.model.Coding t : src.getOption()) + tgt.addOption().setValue(convertCoding(t)); + for (org.hl7.fhir.instance.model.Questionnaire.GroupComponent t : src.getGroup()) + tgt.addItem(convertQuestionnaireGroupComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireGroupComponent(org.hl7.fhir.instance.model.Questionnaire.GroupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.instance.model.Coding t : src.getConcept()) + tgt.addCode(convertCoding(t)); + tgt.setText(src.getText()); + tgt.setType(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.GROUP); + tgt.setRequired(src.getRequired()); + tgt.setRepeats(src.getRepeats()); + for (org.hl7.fhir.instance.model.Questionnaire.GroupComponent t : src.getGroup()) + tgt.addItem(convertQuestionnaireGroupComponent(t)); + for (org.hl7.fhir.instance.model.Questionnaire.QuestionComponent t : src.getQuestion()) + tgt.addItem(convertQuestionnaireQuestionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Questionnaire.GroupComponent convertQuestionnaireGroupComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Questionnaire.GroupComponent tgt = new org.hl7.fhir.instance.model.Questionnaire.GroupComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) + tgt.addConcept(convertCoding(t)); + tgt.setText(src.getText()); + tgt.setRequired(src.getRequired()); + tgt.setRepeats(src.getRepeats()); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + if (t.getType() == org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.GROUP) + tgt.addGroup(convertQuestionnaireGroupComponent(t)); + else + tgt.addQuestion(convertQuestionnaireQuestionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Questionnaire.QuestionComponent convertQuestionnaireQuestionComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Questionnaire.QuestionComponent tgt = new org.hl7.fhir.instance.model.Questionnaire.QuestionComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) + tgt.addConcept(convertCoding(t)); + tgt.setText(src.getText()); + tgt.setType(convertQuestionnaireItemType(src.getType())); + tgt.setRequired(src.getRequired()); + tgt.setRepeats(src.getRepeats()); + tgt.setOptions(convertReference(src.getOptions())); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) + if (t.hasValueCoding()) + try { + tgt.addOption(convertCoding(t.getValueCoding())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addGroup(convertQuestionnaireGroupComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType convertQuestionnaireQuestionType(org.hl7.fhir.instance.model.Questionnaire.AnswerFormat src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BOOLEAN: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.BOOLEAN; + case DECIMAL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DECIMAL; + case INTEGER: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.INTEGER; + case DATE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATE; + case DATETIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATETIME; + case INSTANT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATETIME; + case TIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TIME; + case STRING: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.STRING; + case TEXT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TEXT; + case URL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.URL; + case CHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.CHOICE; + case OPENCHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; + case ATTACHMENT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; + case REFERENCE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.REFERENCE; + case QUANTITY: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.QUANTITY; + default: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.NULL; + } + } + + public org.hl7.fhir.instance.model.Questionnaire.AnswerFormat convertQuestionnaireItemType(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BOOLEAN: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.BOOLEAN; + case DECIMAL: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DECIMAL; + case INTEGER: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.INTEGER; + case DATE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DATE; + case DATETIME: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DATETIME; + case TIME: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.TIME; + case STRING: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.STRING; + case TEXT: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.TEXT; + case URL: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.URL; + case CHOICE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.CHOICE; + case OPENCHOICE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.OPENCHOICE; + case ATTACHMENT: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.ATTACHMENT; + case REFERENCE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.REFERENCE; + case QUANTITY: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.QUANTITY; + default: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.NULL; + } + } + + public org.hl7.fhir.dstu3.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.instance.model.QuestionnaireResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.QuestionnaireResponse tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); + tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setAuthored(src.getAuthored()); + tgt.setSource(convertReference(src.getSource())); + tgt.setContext(convertReference(src.getEncounter())); + if (src.hasGroup()) + tgt.addItem(convertQuestionnaireResponseGroupComponent(src.getGroup())); + return tgt; + } + + public org.hl7.fhir.instance.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.dstu3.model.QuestionnaireResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.QuestionnaireResponse tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); + tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setAuthored(src.getAuthored()); + tgt.setSource(convertReference(src.getSource())); + tgt.setEncounter(convertReference(src.getContext())); + + if (src.getItem().size() != 1) + throw new FHIRException("multiple root items not supported"); // though we could define a placeholder group? + + tgt.setGroup(convertQuestionnaireItemToGroup(src.getItem().get(0))); + return tgt; + } + + + public org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; + case AMENDED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; + default: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; + case AMENDED: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; + default: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseGroupComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + tgt.setText(src.getText()); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent t : src.getGroup()) + tgt.addItem(convertQuestionnaireResponseGroupComponent(t)); + for (org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent t : src.getQuestion()) + tgt.addItem(convertQuestionnaireResponseQuestionComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseQuestionComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + tgt.setText(src.getText()); + for (org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent t : src.getAnswer()) + tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent convertQuestionnaireItemToGroup(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + tgt.setText(src.getText()); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + if (t.hasAnswer()) + tgt.addQuestion(convertQuestionnaireItemToQuestion(t)); + else + tgt.addGroup(convertQuestionnaireItemToGroup(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent convertQuestionnaireItemToQuestion(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + tgt.setText(src.getText()); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) + tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + for (org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent t : src.getGroup()) + tgt.addItem(convertQuestionnaireResponseGroupComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addGroup(convertQuestionnaireItemToGroup(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ReferralRequest convertReferralRequest(org.hl7.fhir.instance.model.ReferralRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ReferralRequest tgt = new org.hl7.fhir.dstu3.model.ReferralRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertReferralStatus(src.getStatus())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setPriority(convertReferralPriorityCode(src.getPriority())); + tgt.setSubject(convertReference(src.getPatient())); + tgt.setOccurrence(convertPeriod(src.getFulfillmentTime())); + tgt.getRequester().setAgent(convertReference(src.getRequester())); + tgt.setSpecialty(convertCodeableConcept(src.getSpecialty())); + for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + tgt.addReasonCode(convertCodeableConcept(src.getReason())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getServiceRequested()) + tgt.addServiceRequested(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInfo(convertReference(t)); + return tgt; + } + + private ReferralPriority convertReferralPriorityCode(CodeableConcept priority) { + for (org.hl7.fhir.instance.model.Coding c : priority.getCoding()) { + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "routine".equals(c.getCode())) + return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority.ROUTINE; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "urgent".equals(c.getCode())) + return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority.URGENT; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "stat".equals(c.getCode())) + return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority.STAT; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "asap".equals(c.getCode())) + return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority.ASAP; + } + return null; + } + + public org.hl7.fhir.instance.model.ReferralRequest convertReferralRequest(org.hl7.fhir.dstu3.model.ReferralRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ReferralRequest tgt = new org.hl7.fhir.instance.model.ReferralRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertReferralStatus(src.getStatus())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setPriority(convertReferralPriorityCode(src.getPriority())); + tgt.setPatient(convertReference(src.getSubject())); + tgt.setFulfillmentTime(convertPeriod(src.getOccurrencePeriod())); + tgt.setRequester(convertReference(src.getRequester().getAgent())); + tgt.setSpecialty(convertCodeableConcept(src.getSpecialty())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept cc : src.getReasonCode()) + tgt.setReason(convertCodeableConcept(cc)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceRequested()) + tgt.addServiceRequested(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInfo()) + tgt.addSupportingInformation(convertReference(t)); + return tgt; + } + + private org.hl7.fhir.instance.model.CodeableConcept convertReferralPriorityCode(org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority priority) { + org.hl7.fhir.instance.model.CodeableConcept cc = new org.hl7.fhir.instance.model.CodeableConcept(); + switch (priority) { + case ROUTINE: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("routine"); break; + case URGENT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("urgent"); break; + case STAT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("stat"); break; + case ASAP: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("asap"); break; + default: return null; + } + return cc; + } + + + public org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus convertReferralStatus(org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.DRAFT; + case REQUESTED: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.CANCELLED; + case ACCEPTED: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.ACTIVE; + case REJECTED: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.ENTEREDINERROR; + case COMPLETED: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.COMPLETED; + default: return org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus convertReferralStatus(org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.REJECTED; + default: return org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.instance.model.RelatedPerson src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.RelatedPerson tgt = new org.hl7.fhir.dstu3.model.RelatedPerson(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + tgt.addName(convertHumanName(src.getName())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.instance.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.dstu3.model.RelatedPerson src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.RelatedPerson tgt = new org.hl7.fhir.instance.model.RelatedPerson(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + if (!src.getName().isEmpty()) + tgt.setName(convertHumanName(src.getName().get(0))); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.instance.model.RiskAssessment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.RiskAssessment tgt = new org.hl7.fhir.dstu3.model.RiskAssessment(); + copyDomainResource(src, tgt); + tgt.setSubject(convertReference(src.getSubject())); +// tgt.setDate(src.getDate()); + tgt.setCondition(convertReference(src.getCondition())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setPerformer(convertReference(src.getPerformer())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + for (org.hl7.fhir.instance.model.Reference t : src.getBasis()) + tgt.addBasis(convertReference(t)); + for (org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) + tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); + tgt.setMitigation(src.getMitigation()); + return tgt; + } + + public org.hl7.fhir.instance.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.dstu3.model.RiskAssessment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.RiskAssessment tgt = new org.hl7.fhir.instance.model.RiskAssessment(); + copyDomainResource(src, tgt); + tgt.setSubject(convertReference(src.getSubject())); +// tgt.setDateElement(src.getOccurrenceDateTimeType()); + tgt.setCondition(convertReference(src.getCondition())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setPerformer(convertReference(src.getPerformer())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasis()) + tgt.addBasis(convertReference(t)); + for (org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) + tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); + tgt.setMitigation(src.getMitigation()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent(); + copyElement(src, tgt); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + tgt.setProbability(convertType(src.getProbability())); + tgt.setRelativeRisk(src.getRelativeRisk()); + tgt.setWhen(convertType(src.getWhen())); + tgt.setRationale(src.getRationale()); + return tgt; + } + + public org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent(); + copyElement(src, tgt); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + tgt.setProbability(convertType(src.getProbability())); + tgt.setRelativeRisk(src.getRelativeRisk()); + tgt.setWhen(convertType(src.getWhen())); + tgt.setRationale(src.getRationale()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Schedule convertSchedule(org.hl7.fhir.instance.model.Schedule src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Schedule tgt = new org.hl7.fhir.dstu3.model.Schedule(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) + tgt.addServiceType(convertCodeableConcept(t)); + tgt.addActor(convertReference(src.getActor())); + tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); + tgt.setComment(src.getComment()); + return tgt; + } + + public org.hl7.fhir.instance.model.Schedule convertSchedule(org.hl7.fhir.dstu3.model.Schedule src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Schedule tgt = new org.hl7.fhir.instance.model.Schedule(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setActor(convertReference(src.getActorFirstRep())); + tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); + tgt.setComment(src.getComment()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.SearchParameter convertSearchParameter(org.hl7.fhir.instance.model.SearchParameter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.SearchParameter tgt = new org.hl7.fhir.dstu3.model.SearchParameter(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent t : src.getContact()) + tgt.addContact(convertSearchParameterContactComponent(t)); + tgt.setPurpose(src.getRequirements()); + tgt.setCode(src.getCode()); + tgt.addBase(src.getBase()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDescription(src.getDescription()); + tgt.setExpression(ToolingExtensions.readStringExtension(src, ToolingExtensions.EXT_EXPRESSION)); + tgt.setXpath(src.getXpath()); + tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); + for (org.hl7.fhir.instance.model.CodeType t : src.getTarget()) + tgt.addTarget(t.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.SearchParameter convertSearchParameter(org.hl7.fhir.dstu3.model.SearchParameter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SearchParameter tgt = new org.hl7.fhir.instance.model.SearchParameter(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertSearchParameterContactComponent(t)); + tgt.setRequirements(src.getPurpose()); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getBase()) + tgt.setBase(t.asStringValue()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDescription(src.getDescription()); + org.hl7.fhir.instance.utils.ToolingExtensions.setStringExtension(tgt, ToolingExtensions.EXT_EXPRESSION, src.getExpression()); + tgt.setXpath(src.getXpath()); + tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getTarget()) + tgt.addTarget(t.getValue()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.instance.model.SearchParameter.XPathUsageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NORMAL: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NORMAL; + case PHONETIC: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.PHONETIC; + case NEARBY: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NEARBY; + case DISTANCE: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.DISTANCE; + case OTHER: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.OTHER; + default: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NULL; + } + } + + public org.hl7.fhir.instance.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NORMAL: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NORMAL; + case PHONETIC: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.PHONETIC; + case NEARBY: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NEARBY; + case DISTANCE: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.DISTANCE; + case OTHER: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.OTHER; + default: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ContactDetail convertSearchParameterContactComponent(org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent convertSearchParameterContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent tgt = new org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Slot convertSlot(org.hl7.fhir.instance.model.Slot src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Slot tgt = new org.hl7.fhir.dstu3.model.Slot(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasType()) + tgt.addServiceType(convertCodeableConcept(src.getType())); + tgt.setSchedule(convertReference(src.getSchedule())); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + tgt.setOverbooked(src.getOverbooked()); + tgt.setComment(src.getComment()); + return tgt; + } + + public org.hl7.fhir.instance.model.Slot convertSlot(org.hl7.fhir.dstu3.model.Slot src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Slot tgt = new org.hl7.fhir.instance.model.Slot(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) + tgt.setType(convertCodeableConcept(t)); + tgt.setSchedule(convertReference(src.getSchedule())); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + tgt.setOverbooked(src.getOverbooked()); + tgt.setComment(src.getComment()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.instance.model.Slot.SlotStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BUSY: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSY; + case FREE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.FREE; + case BUSYUNAVAILABLE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSYUNAVAILABLE; + case BUSYTENTATIVE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSYTENTATIVE; + default: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.dstu3.model.Slot.SlotStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BUSY: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSY; + case FREE: return org.hl7.fhir.instance.model.Slot.SlotStatus.FREE; + case BUSYUNAVAILABLE: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSYUNAVAILABLE; + case BUSYTENTATIVE: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSYTENTATIVE; + default: return org.hl7.fhir.instance.model.Slot.SlotStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.instance.model.StructureDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition tgt = new org.hl7.fhir.dstu3.model.StructureDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setTitle(src.getDisplay()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent t : src.getContact()) + tgt.addContact(convertStructureDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setPurpose(src.getRequirements()); + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.instance.model.Coding t : src.getCode()) + tgt.addKeyword(convertCoding(t)); + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertStructureDefinitionMappingComponent(t)); + tgt.setKind(convertStructureDefinitionKind(src.getKind(), tgt.getId())); + tgt.setAbstract(src.getAbstract()); + tgt.setContextType(convertExtensionContext(src.getContextType())); + for (org.hl7.fhir.instance.model.StringType t : src.getContext()) + tgt.addContext(t.getValue()); + if (src.hasConstrainedType()) + tgt.setType(src.getConstrainedType()); + else if (src.getSnapshot().hasElement()) + tgt.setType(src.getSnapshot().getElement().get(0).getPath()); + else if (src.getDifferential().hasElement() && !src.getDifferential().getElement().get(0).getPath().contains(".")) + tgt.setType(src.getDifferential().getElement().get(0).getPath()); + else + tgt.setType(src.getDifferential().getElement().get(0).getPath().substring(0, src.getDifferential().getElement().get(0).getPath().indexOf("."))); + tgt.setBaseDefinition(src.getBase()); + tgt.setDerivation(src.hasConstrainedType() ? org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.CONSTRAINT : org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION); + tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); + tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); + if (tgt.hasSnapshot()) + tgt.getSnapshot().getElementFirstRep().getType().clear(); + if (tgt.hasDifferential()) + tgt.getDifferential().getElementFirstRep().getType().clear(); + if (tgt.getKind() == StructureDefinitionKind.PRIMITIVETYPE && !tgt.getType().equals(tgt.getId())) { + tgt.setDerivation(TypeDerivationRule.SPECIALIZATION); + tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/"+tgt.getType()); +// for (ElementDefinition ed : tgt.getSnapshot().getElement()) { +// ed.setPath(ed.getPath().replace(tgt.getType()+".", tgt.getId()+".")); +// } +// for (ElementDefinition ed : tgt.getDifferential().getElement()) { +// ed.setPath(ed.getPath().replace(tgt.getType()+".", tgt.getId()+".")); +// } + tgt.setType(tgt.getId()); + } + return tgt; + } + + public org.hl7.fhir.instance.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.dstu3.model.StructureDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.StructureDefinition tgt = new org.hl7.fhir.instance.model.StructureDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setDisplay(src.getTitle()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertStructureDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setRequirements(src.getPurpose()); + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getKeyword()) + tgt.addCode(convertCoding(t)); + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertStructureDefinitionMappingComponent(t)); + tgt.setKind(convertStructureDefinitionKind(src.getKind())); + tgt.setAbstract(src.getAbstract()); + tgt.setContextType(convertExtensionContext(src.getContextType())); + for (org.hl7.fhir.dstu3.model.StringType t : src.getContext()) + tgt.addContext(t.getValue()); + tgt.setConstrainedType(src.getType()); + tgt.setBase(src.getBaseDefinition()); + tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); + tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); + if (tgt.hasBase()) { + if (tgt.hasDifferential()) + tgt.getDifferential().getElement().get(0).addType().setCode(tail(tgt.getBase())); + if (tgt.hasSnapshot()) + tgt.getSnapshot().getElement().get(0).addType().setCode(tail(tgt.getBase())); + } + return tgt; + } + + private String tail(String base) { + return base.substring(base.lastIndexOf("/")+1); + } + + public org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind src, String dtName) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DATATYPE: + if (Utilities.existsInList(dtName, "boolean", "integer", "decimal", "base64Binary", "instant", "string", "uri", "date", "dateTime", "time", "code", "oid", "uuid", "id", "unsignedInt", "positiveInt", "markdown", "xhtml")) + return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.PRIMITIVETYPE; + else + return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; + case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.RESOURCE; + case LOGICAL: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.LOGICAL; + default: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.NULL; + } + } + + public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRIMITIVETYPE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.DATATYPE; + case COMPLEXTYPE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.DATATYPE; + case RESOURCE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.RESOURCE; + case LOGICAL: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.LOGICAL; + default: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.NULL; + } + } + + public org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.RESOURCE; + case DATATYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.DATATYPE; + case EXTENSION: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.EXTENSION; + default: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.NULL; + } + } + + public org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESOURCE: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.RESOURCE; + case DATATYPE: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.DATATYPE; + case EXTENSION: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.EXTENSION; + default: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ContactDetail convertStructureDefinitionContactComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent convertStructureDefinitionContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setUri(src.getUri()); + tgt.setName(src.getName()); + tgt.setComment(src.getComments()); + return tgt; + } + + public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setUri(src.getUri()); + tgt.setName(src.getName()); + tgt.setComments(src.getComment()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent(); + copyElement(src, tgt); + List slicePaths = new ArrayList(); + for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { + if (t.hasSlicing()) + slicePaths.add(t.getPath()); + tgt.addElement(convertElementDefinition(t, slicePaths)); + } + return tgt; + } + + public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent(); + copyElement(src, tgt); + List slicePaths = new ArrayList(); + for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { + if (t.hasSlicing()) + slicePaths.add(t.getPath()); + tgt.addElement(convertElementDefinition(t, slicePaths)); + } + return tgt; + } + + public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Subscription convertSubscription(org.hl7.fhir.instance.model.Subscription src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Subscription tgt = new org.hl7.fhir.dstu3.model.Subscription(); + copyDomainResource(src, tgt); + tgt.setCriteria(src.getCriteria()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + tgt.setReason(src.getReason()); + tgt.setStatus(convertSubscriptionStatus(src.getStatus())); + tgt.setError(src.getError()); + tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); + tgt.setEnd(src.getEnd()); + for (org.hl7.fhir.instance.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Subscription convertSubscription(org.hl7.fhir.dstu3.model.Subscription src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Subscription tgt = new org.hl7.fhir.instance.model.Subscription(); + copyDomainResource(src, tgt); + tgt.setCriteria(src.getCriteria()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + tgt.setReason(src.getReason()); + tgt.setStatus(convertSubscriptionStatus(src.getStatus())); + tgt.setError(src.getError()); + tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); + tgt.setEnd(src.getEnd()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.instance.model.Subscription.SubscriptionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUESTED: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.REQUESTED; + case ACTIVE: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.ACTIVE; + case ERROR: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.ERROR; + case OFF: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.OFF; + default: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUESTED: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.REQUESTED; + case ACTIVE: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.ACTIVE; + case ERROR: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.ERROR; + case OFF: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.OFF; + default: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent(); + copyElement(src, tgt); + tgt.setType(convertSubscriptionChannelType(src.getType())); + tgt.setEndpoint(src.getEndpoint()); + tgt.setPayload(src.getPayload()); + tgt.addHeader(src.getHeader()); + return tgt; + } + + public org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent(); + copyElement(src, tgt); + tgt.setType(convertSubscriptionChannelType(src.getType())); + tgt.setEndpoint(src.getEndpoint()); + tgt.setPayload(src.getPayload()); + if (src.hasHeader()) + tgt.setHeaderElement(convertString(src.getHeader().get(0))); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESTHOOK: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.RESTHOOK; + case WEBSOCKET: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.WEBSOCKET; + case EMAIL: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.EMAIL; + case SMS: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.SMS; + case MESSAGE: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.MESSAGE; + default: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.NULL; + } + } + + public org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESTHOOK: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.RESTHOOK; + case WEBSOCKET: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.WEBSOCKET; + case EMAIL: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.EMAIL; + case SMS: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.SMS; + case MESSAGE: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.MESSAGE; + default: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.Substance convertSubstance(org.hl7.fhir.instance.model.Substance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Substance tgt = new org.hl7.fhir.dstu3.model.Substance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent t : src.getInstance()) + tgt.addInstance(convertSubstanceInstanceComponent(t)); + for (org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) + tgt.addIngredient(convertSubstanceIngredientComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Substance convertSubstance(org.hl7.fhir.dstu3.model.Substance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Substance tgt = new org.hl7.fhir.instance.model.Substance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent t : src.getInstance()) + tgt.addInstance(convertSubstanceInstanceComponent(t)); + for (org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) + tgt.addIngredient(convertSubstanceIngredientComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setExpiry(src.getExpiry()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + return tgt; + } + + public org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setExpiry(src.getExpiry()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent(); + copyElement(src, tgt); + tgt.setQuantity(convertRatio(src.getQuantity())); + tgt.setSubstance(convertReference(src.getSubstance())); + return tgt; + } + + public org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent(); + copyElement(src, tgt); + tgt.setQuantity(convertRatio(src.getQuantity())); +// tgt.setSubstance(convertReference(src.getSubstance())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.instance.model.SupplyDelivery src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.SupplyDelivery tgt = new org.hl7.fhir.dstu3.model.SupplyDelivery(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setType(convertCodeableConcept(src.getType())); +// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); +// tgt.setSuppliedItem(convertReference(src.getSuppliedItem())); + tgt.setSupplier(convertReference(src.getSupplier())); +// tgt.setWhenPrepared(convertPeriod(src.getWhenPrepared())); +// tgt.setTime(src.getTime()); + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.instance.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.dstu3.model.SupplyDelivery src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SupplyDelivery tgt = new org.hl7.fhir.instance.model.SupplyDelivery(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setType(convertCodeableConcept(src.getType())); +// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); +// tgt.setSuppliedItem(convertReference(src.getSuppliedItem())); + tgt.setSupplier(convertReference(src.getSupplier())); +// tgt.setWhenPrepared(convertPeriod(src.getWhenPrepared())); +// tgt.setTime(src.getTime()); + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; + case ABANDONED: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; + default: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; + case ABANDONED: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; + default: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.instance.model.SupplyRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.SupplyRequest tgt = new org.hl7.fhir.dstu3.model.SupplyRequest(); + copyDomainResource(src, tgt); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setSource(convertReference(src.getSource())); +// if (src.hasDate()) +// tgt.setDate(src.getDate()); +// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); +// tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); +// tgt.setKind(convertCodeableConcept(src.getKind())); +// tgt.getOrderedItem().setItem(convertReference(src.getOrderedItem())); +// for (org.hl7.fhir.instance.model.Reference t : src.getSupplier()) +// tgt.addSupplier(convertReference(t)); +// tgt.setReason(convertType(src.getReason())); +// tgt.setWhen(convertSupplyRequestWhenComponent(src.getWhen())); + return tgt; + } + + public org.hl7.fhir.instance.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.dstu3.model.SupplyRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SupplyRequest tgt = new org.hl7.fhir.instance.model.SupplyRequest(); +// copyDomainResource(src, tgt); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setSource(convertReference(src.getSource())); +// if (src.hasDate()) +// tgt.setDate(src.getDate()); +// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); +// tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); +// tgt.setKind(convertCodeableConcept(src.getKind())); +// tgt.setOrderedItem(convertReference(src.getOrderedItem().getItemReference())); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getSupplier()) +// tgt.addSupplier(convertReference(t)); +// tgt.setReason(convertType(src.getReason())); +// tgt.setWhen(convertSupplyRequestWhenComponent(src.getWhen())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUESTED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.COMPLETED; + case FAILED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.CANCELLED; + case CANCELLED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.CANCELLED; + default: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.REQUESTED; + case COMPLETED: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.CANCELLED; + default: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.TestScript convertTestScript(org.hl7.fhir.instance.model.TestScript src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript tgt = new org.hl7.fhir.dstu3.model.TestScript(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent t : src.getContact()) + tgt.addContact(convertTestScriptContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setPurpose(src.getRequirements()); + tgt.setCopyright(src.getCopyright()); + tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); + for (org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) + tgt.addFixture(convertTestScriptFixtureComponent(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent t : src.getVariable()) + tgt.addVariable(convertTestScriptVariableComponent(t)); + tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); + for (org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent t : src.getTest()) + tgt.addTest(convertTestScriptTestComponent(t)); + tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript convertTestScript(org.hl7.fhir.dstu3.model.TestScript src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript tgt = new org.hl7.fhir.instance.model.TestScript(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertTestScriptContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setRequirements(src.getPurpose()); + tgt.setCopyright(src.getCopyright()); + tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) + tgt.addFixture(convertTestScriptFixtureComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent t : src.getVariable()) + tgt.addVariable(convertTestScriptVariableComponent(t)); + tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent t : src.getTest()) + tgt.addTest(convertTestScriptTestComponent(t)); + tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ContactDetail convertTestScriptContactComponent(org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent convertTestScriptContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) + tgt.addLink(convertTestScriptMetadataLinkComponent(t)); + for (org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) + tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) + tgt.addLink(convertTestScriptMetadataLinkComponent(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) + tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent(); + copyElement(src, tgt); + tgt.setRequired(src.getRequired()); + tgt.setValidated(src.getValidated()); + tgt.setDescription(src.getDescription()); + tgt.setDestination(src.getDestination()); + for (org.hl7.fhir.instance.model.UriType t : src.getLink()) + tgt.addLink(t.getValue()); + tgt.setCapabilities(convertReference(src.getConformance())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent(); + copyElement(src, tgt); + tgt.setRequired(src.getRequired()); + tgt.setValidated(src.getValidated()); + tgt.setDescription(src.getDescription()); + tgt.setDestination(src.getDestination()); + for (org.hl7.fhir.dstu3.model.UriType t : src.getLink()) + tgt.addLink(t.getValue()); + tgt.setConformance(convertReference(src.getCapabilities())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent(); + copyElement(src, tgt); + tgt.setAutocreate(src.getAutocreate()); + tgt.setAutodelete(src.getAutodelete()); + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent(); + copyElement(src, tgt); + tgt.setAutocreate(src.getAutocreate()); + tgt.setAutodelete(src.getAutodelete()); + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setHeaderField(src.getHeaderField()); + tgt.setPath(src.getPath()); + tgt.setSourceId(src.getSourceId()); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setHeaderField(src.getHeaderField()); + tgt.setPath(src.getPath()); + tgt.setSourceId(src.getSourceId()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent(); + copyElement(src, tgt); + tgt.setType(convertCoding(src.getType())); + tgt.setResource(src.getResource()); + tgt.setLabel(src.getLabel()); + tgt.setDescription(src.getDescription()); + tgt.setAccept(convertContentType(src.getAccept())); + tgt.setContentType(convertContentType(src.getContentType())); + tgt.setDestination(src.getDestination()); + tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); + tgt.setParams(src.getParams()); + for (org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) + tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); + tgt.setResponseId(src.getResponseId()); + tgt.setSourceId(src.getSourceId()); + tgt.setTargetId(src.getTargetId()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent(); + copyElement(src, tgt); + tgt.setType(convertCoding(src.getType())); + tgt.setResource(src.getResource()); + tgt.setLabel(src.getLabel()); + tgt.setDescription(src.getDescription()); + tgt.setAccept(convertContentType(src.getAccept())); + tgt.setContentType(convertContentType(src.getContentType())); + tgt.setDestination(src.getDestination()); + tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); + tgt.setParams(src.getParams()); + for (org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) + tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); + tgt.setResponseId(src.getResponseId()); + tgt.setSourceId(src.getSourceId()); + tgt.setTargetId(src.getTargetId()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.ContentType convertContentType(org.hl7.fhir.instance.model.TestScript.ContentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XML: return org.hl7.fhir.dstu3.model.TestScript.ContentType.XML; + case JSON: return org.hl7.fhir.dstu3.model.TestScript.ContentType.JSON; + default: return org.hl7.fhir.dstu3.model.TestScript.ContentType.NULL; + } + } + + public org.hl7.fhir.instance.model.TestScript.ContentType convertContentType(org.hl7.fhir.dstu3.model.TestScript.ContentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XML: return org.hl7.fhir.instance.model.TestScript.ContentType.XML; + case JSON: return org.hl7.fhir.instance.model.TestScript.ContentType.JSON; + default: return org.hl7.fhir.instance.model.TestScript.ContentType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent(); + copyElement(src, tgt); + tgt.setField(src.getField()); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent(); + copyElement(src, tgt); + tgt.setField(src.getField()); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent(); + copyElement(src, tgt); + tgt.setLabel(src.getLabel()); + tgt.setDescription(src.getDescription()); + tgt.setDirection(convertAssertionDirectionType(src.getDirection())); + tgt.setCompareToSourceId(src.getCompareToSourceId()); + tgt.setCompareToSourcePath(src.getCompareToSourcePath()); + tgt.setContentType(convertContentType(src.getContentType())); + tgt.setHeaderField(src.getHeaderField()); + tgt.setMinimumId(src.getMinimumId()); + tgt.setNavigationLinks(src.getNavigationLinks()); + tgt.setOperator(convertAssertionOperatorType(src.getOperator())); + tgt.setPath(src.getPath()); + tgt.setResource(src.getResource()); + tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); + tgt.setResponseCode(src.getResponseCode()); + tgt.setSourceId(src.getSourceId()); + tgt.setValidateProfileId(src.getValidateProfileId()); + tgt.setValue(src.getValue()); + tgt.setWarningOnly(src.getWarningOnly()); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent(); + copyElement(src, tgt); + tgt.setLabel(src.getLabel()); + tgt.setDescription(src.getDescription()); + tgt.setDirection(convertAssertionDirectionType(src.getDirection())); + tgt.setCompareToSourceId(src.getCompareToSourceId()); + tgt.setCompareToSourcePath(src.getCompareToSourcePath()); + tgt.setContentType(convertContentType(src.getContentType())); + tgt.setHeaderField(src.getHeaderField()); + tgt.setMinimumId(src.getMinimumId()); + tgt.setNavigationLinks(src.getNavigationLinks()); + tgt.setOperator(convertAssertionOperatorType(src.getOperator())); + tgt.setPath(src.getPath()); + tgt.setResource(src.getResource()); + tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); + tgt.setResponseCode(src.getResponseCode()); + tgt.setSourceId(src.getSourceId()); + tgt.setValidateProfileId(src.getValidateProfileId()); + tgt.setValue(src.getValue()); + tgt.setWarningOnly(src.getWarningOnly()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.instance.model.TestScript.AssertionDirectionType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESPONSE: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.RESPONSE; + case REQUEST: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.REQUEST; + default: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.NULL; + } + } + + public org.hl7.fhir.instance.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESPONSE: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.RESPONSE; + case REQUEST: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.REQUEST; + default: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.instance.model.TestScript.AssertionOperatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EQUALS; + case NOTEQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEQUALS; + case IN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.IN; + case NOTIN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTIN; + case GREATERTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.GREATERTHAN; + case LESSTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.LESSTHAN; + case EMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EMPTY; + case NOTEMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEMPTY; + case CONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.CONTAINS; + case NOTCONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTCONTAINS; + default: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NULL; + } + } + + public org.hl7.fhir.instance.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUALS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.EQUALS; + case NOTEQUALS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTEQUALS; + case IN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.IN; + case NOTIN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTIN; + case GREATERTHAN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.GREATERTHAN; + case LESSTHAN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.LESSTHAN; + case EMPTY: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.EMPTY; + case NOTEMPTY: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTEMPTY; + case CONTAINS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.CONTAINS; + case NOTCONTAINS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTCONTAINS; + default: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NULL; + } + } + + public org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OKAY: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.OKAY; + case CREATED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CREATED; + case NOCONTENT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOCONTENT; + case NOTMODIFIED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTMODIFIED; + case BAD: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.BAD; + case FORBIDDEN: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.FORBIDDEN; + case NOTFOUND: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTFOUND; + case METHODNOTALLOWED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; + case CONFLICT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CONFLICT; + case GONE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.GONE; + case PRECONDITIONFAILED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; + case UNPROCESSABLE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; + default: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NULL; + } + } + + public org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OKAY: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.OKAY; + case CREATED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.CREATED; + case NOCONTENT: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOCONTENT; + case NOTMODIFIED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOTMODIFIED; + case BAD: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.BAD; + case FORBIDDEN: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.FORBIDDEN; + case NOTFOUND: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOTFOUND; + case METHODNOTALLOWED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; + case CONFLICT: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.CONFLICT; + case GONE: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.GONE; + case PRECONDITIONFAILED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; + case UNPROCESSABLE: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; + default: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NULL; + } + } + + + public org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.TestScript.TestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent convertTestActionComponent(org.hl7.fhir.dstu3.model.TestScript.TestActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent convertCodeSystem(org.hl7.fhir.dstu3.model.CodeSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setCaseSensitive(src.getCaseSensitive()); + + for (ConceptDefinitionComponent cc : src.getConcept()) + tgt.addConcept(convertCodeSystemConcept(src, cc)); + return tgt; + } + +public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent convertCodeSystemConcept(CodeSystem cs, ConceptDefinitionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent(); + copyElement(src, tgt); + tgt.setAbstract(CodeSystemUtilities.isNotSelectable(cs, src)); + tgt.setCode(src.getCode()); + tgt.setDefinition(src.getDefinition()); + tgt.setDisplay(src.getDisplay()); + + for (ConceptDefinitionComponent cc : src.getConcept()) + tgt.addConcept(convertCodeSystemConcept(cs, cc)); + for (ConceptDefinitionDesignationComponent cc : src.getDesignation()) + tgt.addDesignation(convertCodeSystemDesignation(cc)); + return tgt; + } + +public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent convertCodeSystemDesignation(ConceptDefinitionDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); + copyElement(src, tgt); + tgt.setUse(convertCoding(src.getUse())); + tgt.setLanguage(src.getLanguage()); + tgt.setValue(src.getValue()); + + return tgt; + } + + public org.hl7.fhir.dstu3.model.ValueSet convertValueSet(org.hl7.fhir.instance.model.ValueSet src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet tgt = new org.hl7.fhir.dstu3.model.ValueSet(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.addIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent t : src.getContact()) + tgt.addContact(convertValueSetContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setImmutable(src.getImmutable()); + tgt.setPurpose(src.getRequirements()); + tgt.setCopyright(src.getCopyright()); + tgt.setExtensible(src.getExtensible()); + if (src.hasCompose()) { + tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); + tgt.getCompose().setLockedDate(src.getLockedDate()); + } + if (src.hasCodeSystem() && advisor != null) { + org.hl7.fhir.dstu3.model.CodeSystem tgtcs = new org.hl7.fhir.dstu3.model.CodeSystem(); + copyDomainResource(src, tgtcs); + tgtcs.setUrl(src.getCodeSystem().getSystem()); + tgtcs.setIdentifier(convertIdentifier(src.getIdentifier())); + tgtcs.setVersion(src.getCodeSystem().getVersion()); + tgtcs.setName(src.getName()+" Code System"); + tgtcs.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgtcs.setExperimental(src.getExperimental()); + tgtcs.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent t : src.getContact()) + tgtcs.addContact(convertValueSetContactComponent(t)); + if (src.hasDate()) + tgtcs.setDate(src.getDate()); + tgtcs.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgtcs.addJurisdiction(convertCodeableConcept(t)); + else + tgtcs.addUseContext(convertCodeableConceptToUsageContext(t)); + tgtcs.setPurpose(src.getRequirements()); + tgtcs.setCopyright(src.getCopyright()); + tgtcs.setContent(CodeSystemContentMode.COMPLETE); + tgtcs.setCaseSensitive(src.getCodeSystem().getCaseSensitive()); + for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent cs : src.getCodeSystem().getConcept()) + processConcept(tgtcs.getConcept(), cs, tgtcs); + advisor.handleCodeSystem(tgtcs, tgt); + tgt.setUserData("r2-cs", tgtcs); + tgt.getCompose().addInclude().setSystem(tgtcs.getUrl()); + } + tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); + return tgt; + } + + private void processConcept(List concepts, org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent cs, CodeSystem tgtcs) throws FHIRException { + org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent ct = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent(); + concepts.add(ct); + ct.setCode(cs.getCode()); + ct.setDisplay(cs.getDisplay()); + ct.setDefinition(cs.getDefinition()); + if (cs.getAbstract()) + CodeSystemUtilities.setNotSelectable(tgtcs, ct); + for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent csd : cs.getDesignation()) { + org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent cst = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent(); + cst.setLanguage(csd.getLanguage()); + cst.setUse(convertCoding(csd.getUse())); + cst.setValue(csd.getValue()); + } + + for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent csc : cs.getConcept()) + processConcept(ct.getConcept(), csc, tgtcs); + } + + private void processConcept(List concepts, ConceptDefinitionComponent cs, CodeSystem srcCS) throws FHIRException { + org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent ct = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent(); + concepts.add(ct); + ct.setCode(cs.getCode()); + ct.setDisplay(cs.getDisplay()); + ct.setDefinition(cs.getDefinition()); + if (CodeSystemUtilities.isNotSelectable(srcCS, cs)) + ct.setAbstract(true); + for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent csd : cs.getDesignation()) { + org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent cst = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); + cst.setLanguage(csd.getLanguage()); + cst.setUse(convertCoding(csd.getUse())); + cst.setValue(csd.getValue()); + } + + for (ConceptDefinitionComponent csc : cs.getConcept()) + processConcept(ct.getConcept(), csc, srcCS); + } + + public org.hl7.fhir.instance.model.ValueSet convertValueSet(org.hl7.fhir.dstu3.model.ValueSet src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet tgt = new org.hl7.fhir.instance.model.ValueSet(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier i : src.getIdentifier()) + tgt.setIdentifier(convertIdentifier(i)); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertValueSetContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setLockedDate(src.getCompose().getLockedDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setImmutable(src.getImmutable()); + tgt.setRequirements(src.getPurpose()); + tgt.setCopyright(src.getCopyright()); + tgt.setExtensible(src.getExtensible()); + org.hl7.fhir.dstu3.model.CodeSystem srcCS = (CodeSystem) src.getUserData("r2-cs"); + if (srcCS == null) + srcCS = advisor.getCodeSystem(src); + if (srcCS != null) { + tgt.getCodeSystem().setSystem(srcCS.getUrl()); + tgt.getCodeSystem().setVersion(srcCS.getVersion()); + tgt.getCodeSystem().setCaseSensitive(srcCS.getCaseSensitive()); + for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent cs : srcCS.getConcept()) + processConcept(tgt.getCodeSystem().getConcept(), cs, srcCS); + + } + tgt.setCompose(convertValueSetComposeComponent(src.getCompose(), srcCS == null ? null : srcCS.getUrl())); + tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); + return tgt; + } + + private static boolean isJurisdiction(CodeableConcept t) { + return t.hasCoding() && ("http://unstats.un.org/unsd/methods/m49/m49.htm".equals(t.getCoding().get(0).getSystem()) || "urn:iso:std:iso:3166".equals(t.getCoding().get(0).getSystem()) + || "https://www.usps.com/".equals(t.getCoding().get(0).getSystem())); + } + + + public org.hl7.fhir.dstu3.model.ContactDetail convertValueSetContactComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent convertValueSetContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.UriType t : src.getImport()) + tgt.addInclude().addValueSet(t.getValue()); + for (org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent t : src.getInclude()) + tgt.addInclude(convertConceptSetComponent(t)); + for (org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent t : src.getExclude()) + tgt.addExclude(convertConceptSetComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent src, String noSystem) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getInclude()) { + for (org.hl7.fhir.dstu3.model.UriType ti : t.getValueSet()) + tgt.addImport(ti.getValue()); + if (noSystem == null || !t.getSystem().equals(noSystem)) + tgt.addInclude(convertConceptSetComponent(t)); + } + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getExclude()) + tgt.addExclude(convertConceptSetComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setVersion(src.getVersion()); + for (org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) + tgt.addConcept(convertConceptReferenceComponent(t)); + for (org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) + tgt.addFilter(convertConceptSetFilterComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setVersion(src.getVersion()); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) + tgt.addConcept(convertConceptReferenceComponent(t)); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) + tgt.addFilter(convertConceptSetFilterComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent(); + copyElement(src, tgt); + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); + copyElement(src, tgt); + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getProperty()); + tgt.setOp(convertFilterOperator(src.getOp())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getProperty()); + tgt.setOp(convertFilterOperator(src.getOp())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.instance.model.ValueSet.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISA; + case ISNOTA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.REGEX; + case IN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NOTIN; + default: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NULL; + } + } + + public org.hl7.fhir.instance.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.dstu3.model.ValueSet.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.ISA; + case ISNOTA: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.REGEX; + case IN: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.NOTIN; + default: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setTimestamp(src.getTimestamp()); + tgt.setTotal(src.getTotal()); + tgt.setOffset(src.getOffset()); + for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) + tgt.addParameter(convertValueSetExpansionParameterComponent(t)); + for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setTimestamp(src.getTimestamp()); + tgt.setTotal(src.getTotal()); + tgt.setOffset(src.getOffset()); + for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) + tgt.addParameter(convertValueSetExpansionParameterComponent(t)); + for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setAbstract(src.getAbstract()); + tgt.setVersion(src.getVersion()); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setAbstract(src.getAbstract()); + tgt.setVersion(src.getVersion()); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public org.hl7.fhir.dstu3.model.ListResource convertList(org.hl7.fhir.instance.model.List_ src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ListResource tgt = new org.hl7.fhir.dstu3.model.ListResource(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setTitle(src.getTitle()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setSource(convertReference(src.getSource())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setStatus(convertListStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + tgt.setMode(convertListMode(src.getMode())); + if (src.hasNote()) + tgt.addNote(new org.hl7.fhir.dstu3.model.Annotation().setText(src.getNote())); + for (org.hl7.fhir.instance.model.List_.ListEntryComponent t : src.getEntry()) + tgt.addEntry(convertListEntry(t)); + return tgt; + } + + + public org.hl7.fhir.dstu3.model.ListResource.ListStatus convertListStatus(org.hl7.fhir.instance.model.List_.ListStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.CURRENT; + case RETIRED: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.RETIRED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ListResource.ListMode convertListMode(org.hl7.fhir.instance.model.List_.ListMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case WORKING: return org.hl7.fhir.dstu3.model.ListResource.ListMode.WORKING; + case SNAPSHOT: return org.hl7.fhir.dstu3.model.ListResource.ListMode.SNAPSHOT; + case CHANGES: return org.hl7.fhir.dstu3.model.ListResource.ListMode.CHANGES; + default: return org.hl7.fhir.dstu3.model.ListResource.ListMode.NULL; + } + } + + public org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent convertListEntry(org.hl7.fhir.instance.model.List_.ListEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent tgt = new org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent(); + copyBackboneElement(src, tgt); + tgt.setFlag(convertCodeableConcept(src.getFlag())); + tgt.setDeleted(src.getDeleted()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setItem(convertReference(src.getItem())); + return tgt; + } + + public org.hl7.fhir.instance.model.List_ convertList(org.hl7.fhir.dstu3.model.ListResource src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.List_ tgt = new org.hl7.fhir.instance.model.List_(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setTitle(src.getTitle()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setSource(convertReference(src.getSource())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setStatus(convertListStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + tgt.setMode(convertListMode(src.getMode())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.setNote(t.getText()); + for (org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent t : src.getEntry()) + tgt.addEntry(convertListEntry(t)); + return tgt; + } + + + public org.hl7.fhir.instance.model.List_.ListStatus convertListStatus(org.hl7.fhir.dstu3.model.ListResource.ListStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.instance.model.List_.ListStatus.CURRENT; + case RETIRED: return org.hl7.fhir.instance.model.List_.ListStatus.RETIRED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.List_.ListStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.List_.ListStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.List_.ListMode convertListMode(org.hl7.fhir.dstu3.model.ListResource.ListMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case WORKING: return org.hl7.fhir.instance.model.List_.ListMode.WORKING; + case SNAPSHOT: return org.hl7.fhir.instance.model.List_.ListMode.SNAPSHOT; + case CHANGES: return org.hl7.fhir.instance.model.List_.ListMode.CHANGES; + default: return org.hl7.fhir.instance.model.List_.ListMode.NULL; + } + } + + public org.hl7.fhir.instance.model.List_.ListEntryComponent convertListEntry(org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.List_.ListEntryComponent tgt = new org.hl7.fhir.instance.model.List_.ListEntryComponent(); + copyBackboneElement(src, tgt); + tgt.setFlag(convertCodeableConcept(src.getFlag())); + tgt.setDeleted(src.getDeleted()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setItem(convertReference(src.getItem())); + return tgt; + } + + + + public org.hl7.fhir.dstu3.model.Resource convertResource(org.hl7.fhir.instance.model.Resource src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.instance.model.Parameters) + return convertParameters((org.hl7.fhir.instance.model.Parameters) src); + if (src instanceof org.hl7.fhir.instance.model.Account) + return convertAccount((org.hl7.fhir.instance.model.Account) src); + if (src instanceof org.hl7.fhir.instance.model.Appointment) + return convertAppointment((org.hl7.fhir.instance.model.Appointment) src); + if (src instanceof org.hl7.fhir.instance.model.AppointmentResponse) + return convertAppointmentResponse((org.hl7.fhir.instance.model.AppointmentResponse) src); + if (src instanceof org.hl7.fhir.instance.model.AuditEvent) + return convertAuditEvent((org.hl7.fhir.instance.model.AuditEvent) src); + if (src instanceof org.hl7.fhir.instance.model.Basic) + return convertBasic((org.hl7.fhir.instance.model.Basic) src); + if (src instanceof org.hl7.fhir.instance.model.Binary) + return convertBinary((org.hl7.fhir.instance.model.Binary) src); + if (src instanceof org.hl7.fhir.instance.model.Bundle) + return convertBundle((org.hl7.fhir.instance.model.Bundle) src); + if (src instanceof org.hl7.fhir.instance.model.CarePlan) + return convertCarePlan((org.hl7.fhir.instance.model.CarePlan) src); + if (src instanceof org.hl7.fhir.instance.model.ClinicalImpression) + return convertClinicalImpression((org.hl7.fhir.instance.model.ClinicalImpression) src); + if (src instanceof org.hl7.fhir.instance.model.Communication) + return convertCommunication((org.hl7.fhir.instance.model.Communication) src); + if (src instanceof org.hl7.fhir.instance.model.CommunicationRequest) + return convertCommunicationRequest((org.hl7.fhir.instance.model.CommunicationRequest) src); + if (src instanceof org.hl7.fhir.instance.model.Composition) + return convertComposition((org.hl7.fhir.instance.model.Composition) src); + if (src instanceof org.hl7.fhir.instance.model.ConceptMap) + return convertConceptMap((org.hl7.fhir.instance.model.ConceptMap) src); + if (src instanceof org.hl7.fhir.instance.model.Condition) + return convertCondition((org.hl7.fhir.instance.model.Condition) src); + if (src instanceof org.hl7.fhir.instance.model.Conformance) + return convertConformance((org.hl7.fhir.instance.model.Conformance) src); + if (src instanceof org.hl7.fhir.instance.model.Contract) + return convertContract((org.hl7.fhir.instance.model.Contract) src); + if (src instanceof org.hl7.fhir.instance.model.DataElement) + return convertDataElement((org.hl7.fhir.instance.model.DataElement) src); + if (src instanceof org.hl7.fhir.instance.model.DetectedIssue) + return convertDetectedIssue((org.hl7.fhir.instance.model.DetectedIssue) src); + if (src instanceof org.hl7.fhir.instance.model.Device) + return convertDevice((org.hl7.fhir.instance.model.Device) src); + if (src instanceof org.hl7.fhir.instance.model.DeviceComponent) + return convertDeviceComponent((org.hl7.fhir.instance.model.DeviceComponent) src); + if (src instanceof org.hl7.fhir.instance.model.DeviceMetric) + return convertDeviceMetric((org.hl7.fhir.instance.model.DeviceMetric) src); + if (src instanceof org.hl7.fhir.instance.model.DeviceUseStatement) + return convertDeviceUseStatement((org.hl7.fhir.instance.model.DeviceUseStatement) src); + if (src instanceof org.hl7.fhir.instance.model.DiagnosticReport) + return convertDiagnosticReport((org.hl7.fhir.instance.model.DiagnosticReport) src); + if (src instanceof org.hl7.fhir.instance.model.DocumentManifest) + return convertDocumentManifest((org.hl7.fhir.instance.model.DocumentManifest) src); + if (src instanceof org.hl7.fhir.instance.model.DocumentReference) + return convertDocumentReference((org.hl7.fhir.instance.model.DocumentReference) src); + if (src instanceof org.hl7.fhir.instance.model.Encounter) + return convertEncounter((org.hl7.fhir.instance.model.Encounter) src); + if (src instanceof org.hl7.fhir.instance.model.EnrollmentRequest) + return convertEnrollmentRequest((org.hl7.fhir.instance.model.EnrollmentRequest) src); + if (src instanceof org.hl7.fhir.instance.model.EnrollmentResponse) + return convertEnrollmentResponse((org.hl7.fhir.instance.model.EnrollmentResponse) src); + if (src instanceof org.hl7.fhir.instance.model.EpisodeOfCare) + return convertEpisodeOfCare((org.hl7.fhir.instance.model.EpisodeOfCare) src); + if (src instanceof org.hl7.fhir.instance.model.FamilyMemberHistory) + return convertFamilyMemberHistory((org.hl7.fhir.instance.model.FamilyMemberHistory) src); + if (src instanceof org.hl7.fhir.instance.model.Flag) + return convertFlag((org.hl7.fhir.instance.model.Flag) src); + if (src instanceof org.hl7.fhir.instance.model.Group) + return convertGroup((org.hl7.fhir.instance.model.Group) src); + if (src instanceof org.hl7.fhir.instance.model.HealthcareService) + return convertHealthcareService((org.hl7.fhir.instance.model.HealthcareService) src); + if (src instanceof org.hl7.fhir.instance.model.ImagingStudy) + return convertImagingStudy((org.hl7.fhir.instance.model.ImagingStudy) src); + if (src instanceof org.hl7.fhir.instance.model.Immunization) + return convertImmunization((org.hl7.fhir.instance.model.Immunization) src); + if (src instanceof org.hl7.fhir.instance.model.ImmunizationRecommendation) + return convertImmunizationRecommendation((org.hl7.fhir.instance.model.ImmunizationRecommendation) src); + if (src instanceof org.hl7.fhir.instance.model.ImplementationGuide) + return convertImplementationGuide((org.hl7.fhir.instance.model.ImplementationGuide) src); + if (src instanceof org.hl7.fhir.instance.model.List_) + return convertList((org.hl7.fhir.instance.model.List_) src); + if (src instanceof org.hl7.fhir.instance.model.Location) + return convertLocation((org.hl7.fhir.instance.model.Location) src); + if (src instanceof org.hl7.fhir.instance.model.Media) + return convertMedia((org.hl7.fhir.instance.model.Media) src); + if (src instanceof org.hl7.fhir.instance.model.Medication) + return convertMedication((org.hl7.fhir.instance.model.Medication) src); + if (src instanceof org.hl7.fhir.instance.model.MedicationDispense) + return convertMedicationDispense((org.hl7.fhir.instance.model.MedicationDispense) src); +// if (src instanceof org.hl7.fhir.instance.model.MedicationOrder) +// return convertMedicationOrder((org.hl7.fhir.instance.model.MedicationOrder) src); + if (src instanceof org.hl7.fhir.instance.model.MedicationStatement) + return convertMedicationStatement((org.hl7.fhir.instance.model.MedicationStatement) src); + if (src instanceof org.hl7.fhir.instance.model.MessageHeader) + return convertMessageHeader((org.hl7.fhir.instance.model.MessageHeader) src); + if (src instanceof org.hl7.fhir.instance.model.NamingSystem) + return convertNamingSystem((org.hl7.fhir.instance.model.NamingSystem) src); + if (src instanceof org.hl7.fhir.instance.model.Observation) + return convertObservation((org.hl7.fhir.instance.model.Observation) src); + if (src instanceof org.hl7.fhir.instance.model.OperationDefinition) + return convertOperationDefinition((org.hl7.fhir.instance.model.OperationDefinition) src); + if (src instanceof org.hl7.fhir.instance.model.OperationOutcome) + return convertOperationOutcome((org.hl7.fhir.instance.model.OperationOutcome) src); + if (src instanceof org.hl7.fhir.instance.model.Organization) + return convertOrganization((org.hl7.fhir.instance.model.Organization) src); + if (src instanceof org.hl7.fhir.instance.model.Patient) + return convertPatient((org.hl7.fhir.instance.model.Patient) src); + if (src instanceof org.hl7.fhir.instance.model.Person) + return convertPerson((org.hl7.fhir.instance.model.Person) src); + if (src instanceof org.hl7.fhir.instance.model.Practitioner) + return convertPractitioner((org.hl7.fhir.instance.model.Practitioner) src); + if (src instanceof org.hl7.fhir.instance.model.Procedure) + return convertProcedure((org.hl7.fhir.instance.model.Procedure) src); + if (src instanceof org.hl7.fhir.instance.model.ProcedureRequest) + return convertProcedureRequest((org.hl7.fhir.instance.model.ProcedureRequest) src); + if (src instanceof org.hl7.fhir.instance.model.Provenance) + return convertProvenance((org.hl7.fhir.instance.model.Provenance) src); + if (src instanceof org.hl7.fhir.instance.model.Questionnaire) + return convertQuestionnaire((org.hl7.fhir.instance.model.Questionnaire) src); + if (src instanceof org.hl7.fhir.instance.model.QuestionnaireResponse) + return convertQuestionnaireResponse((org.hl7.fhir.instance.model.QuestionnaireResponse) src); + if (src instanceof org.hl7.fhir.instance.model.ReferralRequest) + return convertReferralRequest((org.hl7.fhir.instance.model.ReferralRequest) src); + if (src instanceof org.hl7.fhir.instance.model.RelatedPerson) + return convertRelatedPerson((org.hl7.fhir.instance.model.RelatedPerson) src); + if (src instanceof org.hl7.fhir.instance.model.RiskAssessment) + return convertRiskAssessment((org.hl7.fhir.instance.model.RiskAssessment) src); + if (src instanceof org.hl7.fhir.instance.model.Schedule) + return convertSchedule((org.hl7.fhir.instance.model.Schedule) src); + if (src instanceof org.hl7.fhir.instance.model.SearchParameter) + return convertSearchParameter((org.hl7.fhir.instance.model.SearchParameter) src); + if (src instanceof org.hl7.fhir.instance.model.Slot) + return convertSlot((org.hl7.fhir.instance.model.Slot) src); + if (src instanceof org.hl7.fhir.instance.model.StructureDefinition) + return convertStructureDefinition((org.hl7.fhir.instance.model.StructureDefinition) src); + if (src instanceof org.hl7.fhir.instance.model.Subscription) + return convertSubscription((org.hl7.fhir.instance.model.Subscription) src); + if (src instanceof org.hl7.fhir.instance.model.Substance) + return convertSubstance((org.hl7.fhir.instance.model.Substance) src); + if (src instanceof org.hl7.fhir.instance.model.SupplyDelivery) + return convertSupplyDelivery((org.hl7.fhir.instance.model.SupplyDelivery) src); + if (src instanceof org.hl7.fhir.instance.model.SupplyRequest) + return convertSupplyRequest((org.hl7.fhir.instance.model.SupplyRequest) src); + if (src instanceof org.hl7.fhir.instance.model.TestScript) + return convertTestScript((org.hl7.fhir.instance.model.TestScript) src); + if (src instanceof org.hl7.fhir.instance.model.ValueSet) + return convertValueSet((org.hl7.fhir.instance.model.ValueSet) src); + throw new Error("Unknown resource "+src.fhirType()); + } + + public org.hl7.fhir.instance.model.Resource convertResource(org.hl7.fhir.dstu3.model.Resource src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.dstu3.model.Parameters) + return convertParameters((org.hl7.fhir.dstu3.model.Parameters) src); + if (src instanceof org.hl7.fhir.dstu3.model.Appointment) + return convertAppointment((org.hl7.fhir.dstu3.model.Appointment) src); + if (src instanceof org.hl7.fhir.dstu3.model.AppointmentResponse) + return convertAppointmentResponse((org.hl7.fhir.dstu3.model.AppointmentResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.AuditEvent) + return convertAuditEvent((org.hl7.fhir.dstu3.model.AuditEvent) src); + if (src instanceof org.hl7.fhir.dstu3.model.Basic) + return convertBasic((org.hl7.fhir.dstu3.model.Basic) src); + if (src instanceof org.hl7.fhir.dstu3.model.Binary) + return convertBinary((org.hl7.fhir.dstu3.model.Binary) src); + if (src instanceof org.hl7.fhir.dstu3.model.Bundle) + return convertBundle((org.hl7.fhir.dstu3.model.Bundle) src); + if (src instanceof org.hl7.fhir.dstu3.model.CarePlan) + return convertCarePlan((org.hl7.fhir.dstu3.model.CarePlan) src); + if (src instanceof org.hl7.fhir.dstu3.model.ClinicalImpression) + return convertClinicalImpression((org.hl7.fhir.dstu3.model.ClinicalImpression) src); + if (src instanceof org.hl7.fhir.dstu3.model.Communication) + return convertCommunication((org.hl7.fhir.dstu3.model.Communication) src); + if (src instanceof org.hl7.fhir.dstu3.model.CommunicationRequest) + return convertCommunicationRequest((org.hl7.fhir.dstu3.model.CommunicationRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.Composition) + return convertComposition((org.hl7.fhir.dstu3.model.Composition) src); + if (src instanceof org.hl7.fhir.dstu3.model.ConceptMap) + return convertConceptMap((org.hl7.fhir.dstu3.model.ConceptMap) src); + if (src instanceof org.hl7.fhir.dstu3.model.Condition) + return convertCondition((org.hl7.fhir.dstu3.model.Condition) src); + if (src instanceof org.hl7.fhir.dstu3.model.CapabilityStatement) + return convertConformance((org.hl7.fhir.dstu3.model.CapabilityStatement) src); + if (src instanceof org.hl7.fhir.dstu3.model.Contract) + return convertContract((org.hl7.fhir.dstu3.model.Contract) src); + if (src instanceof org.hl7.fhir.dstu3.model.DataElement) + return convertDataElement((org.hl7.fhir.dstu3.model.DataElement) src); + if (src instanceof org.hl7.fhir.dstu3.model.DetectedIssue) + return convertDetectedIssue((org.hl7.fhir.dstu3.model.DetectedIssue) src); + if (src instanceof org.hl7.fhir.dstu3.model.Device) + return convertDevice((org.hl7.fhir.dstu3.model.Device) src); + if (src instanceof org.hl7.fhir.dstu3.model.DeviceComponent) + return convertDeviceComponent((org.hl7.fhir.dstu3.model.DeviceComponent) src); + if (src instanceof org.hl7.fhir.dstu3.model.DeviceMetric) + return convertDeviceMetric((org.hl7.fhir.dstu3.model.DeviceMetric) src); + if (src instanceof org.hl7.fhir.dstu3.model.DeviceUseStatement) + return convertDeviceUseStatement((org.hl7.fhir.dstu3.model.DeviceUseStatement) src); + if (src instanceof org.hl7.fhir.dstu3.model.DiagnosticReport) + return convertDiagnosticReport((org.hl7.fhir.dstu3.model.DiagnosticReport) src); + if (src instanceof org.hl7.fhir.dstu3.model.DocumentManifest) + return convertDocumentManifest((org.hl7.fhir.dstu3.model.DocumentManifest) src); + if (src instanceof org.hl7.fhir.dstu3.model.DocumentReference) + return convertDocumentReference((org.hl7.fhir.dstu3.model.DocumentReference) src); + if (src instanceof org.hl7.fhir.dstu3.model.Encounter) + return convertEncounter((org.hl7.fhir.dstu3.model.Encounter) src); + if (src instanceof org.hl7.fhir.dstu3.model.EnrollmentRequest) + return convertEnrollmentRequest((org.hl7.fhir.dstu3.model.EnrollmentRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.EnrollmentResponse) + return convertEnrollmentResponse((org.hl7.fhir.dstu3.model.EnrollmentResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.EpisodeOfCare) + return convertEpisodeOfCare((org.hl7.fhir.dstu3.model.EpisodeOfCare) src); + if (src instanceof org.hl7.fhir.dstu3.model.FamilyMemberHistory) + return convertFamilyMemberHistory((org.hl7.fhir.dstu3.model.FamilyMemberHistory) src); + if (src instanceof org.hl7.fhir.dstu3.model.Flag) + return convertFlag((org.hl7.fhir.dstu3.model.Flag) src); + if (src instanceof org.hl7.fhir.dstu3.model.Group) + return convertGroup((org.hl7.fhir.dstu3.model.Group) src); + if (src instanceof org.hl7.fhir.dstu3.model.HealthcareService) + return convertHealthcareService((org.hl7.fhir.dstu3.model.HealthcareService) src); + if (src instanceof org.hl7.fhir.dstu3.model.ImagingStudy) + return convertImagingStudy((org.hl7.fhir.dstu3.model.ImagingStudy) src); + if (src instanceof org.hl7.fhir.dstu3.model.Immunization) + return convertImmunization((org.hl7.fhir.dstu3.model.Immunization) src); + if (src instanceof org.hl7.fhir.dstu3.model.ImmunizationRecommendation) + return convertImmunizationRecommendation((org.hl7.fhir.dstu3.model.ImmunizationRecommendation) src); + if (src instanceof org.hl7.fhir.dstu3.model.ImplementationGuide) + return convertImplementationGuide((org.hl7.fhir.dstu3.model.ImplementationGuide) src); + if (src instanceof org.hl7.fhir.dstu3.model.ListResource) + return convertList((org.hl7.fhir.dstu3.model.ListResource) src); + if (src instanceof org.hl7.fhir.dstu3.model.Location) + return convertLocation((org.hl7.fhir.dstu3.model.Location) src); + if (src instanceof org.hl7.fhir.dstu3.model.Media) + return convertMedia((org.hl7.fhir.dstu3.model.Media) src); + if (src instanceof org.hl7.fhir.dstu3.model.Medication) + return convertMedication((org.hl7.fhir.dstu3.model.Medication) src); + if (src instanceof org.hl7.fhir.dstu3.model.MedicationDispense) + return convertMedicationDispense((org.hl7.fhir.dstu3.model.MedicationDispense) src); +// if (src instanceof org.hl7.fhir.dstu3.model.MedicationOrder) +// return convertMedicationOrder((org.hl7.fhir.dstu3.model.MedicationOrder) src); + if (src instanceof org.hl7.fhir.dstu3.model.MedicationStatement) + return convertMedicationStatement((org.hl7.fhir.dstu3.model.MedicationStatement) src); + if (src instanceof org.hl7.fhir.dstu3.model.MessageHeader) + return convertMessageHeader((org.hl7.fhir.dstu3.model.MessageHeader) src); + if (src instanceof org.hl7.fhir.dstu3.model.NamingSystem) + return convertNamingSystem((org.hl7.fhir.dstu3.model.NamingSystem) src); + if (src instanceof org.hl7.fhir.dstu3.model.Observation) + return convertObservation((org.hl7.fhir.dstu3.model.Observation) src); + if (src instanceof org.hl7.fhir.dstu3.model.OperationDefinition) + return convertOperationDefinition((org.hl7.fhir.dstu3.model.OperationDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.OperationOutcome) + return convertOperationOutcome((org.hl7.fhir.dstu3.model.OperationOutcome) src); + if (src instanceof org.hl7.fhir.dstu3.model.Organization) + return convertOrganization((org.hl7.fhir.dstu3.model.Organization) src); + if (src instanceof org.hl7.fhir.dstu3.model.Patient) + return convertPatient((org.hl7.fhir.dstu3.model.Patient) src); + if (src instanceof org.hl7.fhir.dstu3.model.Person) + return convertPerson((org.hl7.fhir.dstu3.model.Person) src); + if (src instanceof org.hl7.fhir.dstu3.model.Practitioner) + return convertPractitioner((org.hl7.fhir.dstu3.model.Practitioner) src); + if (src instanceof org.hl7.fhir.dstu3.model.Procedure) + return convertProcedure((org.hl7.fhir.dstu3.model.Procedure) src); + if (src instanceof org.hl7.fhir.dstu3.model.ProcedureRequest) + return convertProcedureRequest((org.hl7.fhir.dstu3.model.ProcedureRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.Provenance) + return convertProvenance((org.hl7.fhir.dstu3.model.Provenance) src); + if (src instanceof org.hl7.fhir.dstu3.model.Questionnaire) + return convertQuestionnaire((org.hl7.fhir.dstu3.model.Questionnaire) src); + if (src instanceof org.hl7.fhir.dstu3.model.QuestionnaireResponse) + return convertQuestionnaireResponse((org.hl7.fhir.dstu3.model.QuestionnaireResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.ReferralRequest) + return convertReferralRequest((org.hl7.fhir.dstu3.model.ReferralRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.RelatedPerson) + return convertRelatedPerson((org.hl7.fhir.dstu3.model.RelatedPerson) src); + if (src instanceof org.hl7.fhir.dstu3.model.RiskAssessment) + return convertRiskAssessment((org.hl7.fhir.dstu3.model.RiskAssessment) src); + if (src instanceof org.hl7.fhir.dstu3.model.Schedule) + return convertSchedule((org.hl7.fhir.dstu3.model.Schedule) src); + if (src instanceof org.hl7.fhir.dstu3.model.SearchParameter) + return convertSearchParameter((org.hl7.fhir.dstu3.model.SearchParameter) src); + if (src instanceof org.hl7.fhir.dstu3.model.Slot) + return convertSlot((org.hl7.fhir.dstu3.model.Slot) src); + if (src instanceof org.hl7.fhir.dstu3.model.StructureDefinition) + return convertStructureDefinition((org.hl7.fhir.dstu3.model.StructureDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.Subscription) + return convertSubscription((org.hl7.fhir.dstu3.model.Subscription) src); + if (src instanceof org.hl7.fhir.dstu3.model.Substance) + return convertSubstance((org.hl7.fhir.dstu3.model.Substance) src); + if (src instanceof org.hl7.fhir.dstu3.model.SupplyDelivery) + return convertSupplyDelivery((org.hl7.fhir.dstu3.model.SupplyDelivery) src); + if (src instanceof org.hl7.fhir.dstu3.model.SupplyRequest) + return convertSupplyRequest((org.hl7.fhir.dstu3.model.SupplyRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.TestScript) + return convertTestScript((org.hl7.fhir.dstu3.model.TestScript) src); + if (src instanceof org.hl7.fhir.dstu3.model.ValueSet) + return convertValueSet((org.hl7.fhir.dstu3.model.ValueSet) src); + throw new Error("Unknown resource "+src.fhirType()); + } + +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_10_40.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_10_40.java index 6b4a25907d2..4668800b156 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_10_40.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_10_40.java @@ -1,13021 +1,13042 @@ -package org.hl7.fhir.convertors; - -import java.util.ArrayList; -import java.util.List; - -import org.apache.commons.codec.binary.Base64; -import org.hl7.fhir.instance.model.CodeableConcept; -import org.hl7.fhir.instance.model.Reference; -import org.hl7.fhir.instance.utils.ToolingExtensions; -import org.hl7.fhir.r4.conformance.ProfileUtilities; -import org.hl7.fhir.r4.model.Annotation; -import org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction; -import org.hl7.fhir.r4.model.CodeSystem; -import org.hl7.fhir.r4.model.Coding; -import org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode; -import org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent; -import org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent; -import org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority; -import org.hl7.fhir.r4.model.ConceptMap; -import org.hl7.fhir.r4.model.ContactDetail; -import org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent; -import org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent; -import org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus; -import org.hl7.fhir.r4.model.Dosage; -import org.hl7.fhir.r4.model.ElementDefinition; -import org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent; -import org.hl7.fhir.r4.model.Enumeration; -import org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent; -import org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind; -import org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule; -import org.hl7.fhir.r4.model.Timing.EventTiming; -import org.hl7.fhir.r4.model.UriType; -import org.hl7.fhir.r4.terminologies.CodeSystemUtilities; -import org.hl7.fhir.exceptions.FHIRException; -import org.hl7.fhir.utilities.Utilities; - -/* - Copyright (c) 2011+, HL7, Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without modification, - are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of HL7 nor the names of its contributors may be used to - endorse or promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - - */ - -// Generated on Thu, Apr 7, 2016 02:14+1000 for FHIR v1.4.0 - - -public class VersionConvertor_10_40 { - - public VersionConvertorAdvisor40 advisor; - - public VersionConvertor_10_40(VersionConvertorAdvisor40 advisor) { - super(); - this.advisor = advisor; - } - - public void copyElement(org.hl7.fhir.instance.model.Element src, org.hl7.fhir.r4.model.Element tgt) throws FHIRException { - tgt.setId(src.getId()); - for (org.hl7.fhir.instance.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - public void copyElement(org.hl7.fhir.r4.model.Element src, org.hl7.fhir.instance.model.Element tgt) throws FHIRException { - tgt.setId(src.getId()); - for (org.hl7.fhir.r4.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - public void copyElement(org.hl7.fhir.r4.model.DomainResource src, org.hl7.fhir.instance.model.Element tgt) throws FHIRException { - tgt.setId(src.getId()); - for (org.hl7.fhir.r4.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - public void copyBackboneElement(org.hl7.fhir.instance.model.BackboneElement src, org.hl7.fhir.r4.model.BackboneElement tgt) throws FHIRException { - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Extension e : src.getModifierExtension()) { - tgt.addModifierExtension(convertExtension(e)); - } - } - - public void copyBackboneElement(org.hl7.fhir.r4.model.BackboneElement src, org.hl7.fhir.instance.model.BackboneElement tgt) throws FHIRException { - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Extension e : src.getModifierExtension()) { - tgt.addModifierExtension(convertExtension(e)); - } - } - - public org.hl7.fhir.r4.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.instance.model.Base64BinaryType src) throws FHIRException { - org.hl7.fhir.r4.model.Base64BinaryType tgt = new org.hl7.fhir.r4.model.Base64BinaryType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.r4.model.Base64BinaryType src) throws FHIRException { - org.hl7.fhir.instance.model.Base64BinaryType tgt = new org.hl7.fhir.instance.model.Base64BinaryType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.BooleanType convertBoolean(org.hl7.fhir.instance.model.BooleanType src) throws FHIRException { - org.hl7.fhir.r4.model.BooleanType tgt = new org.hl7.fhir.r4.model.BooleanType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.BooleanType convertBoolean(org.hl7.fhir.r4.model.BooleanType src) throws FHIRException { - org.hl7.fhir.instance.model.BooleanType tgt = new org.hl7.fhir.instance.model.BooleanType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.CodeType convertCode(org.hl7.fhir.instance.model.CodeType src) throws FHIRException { - org.hl7.fhir.r4.model.CodeType tgt = new org.hl7.fhir.r4.model.CodeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.CodeType convertCode(org.hl7.fhir.r4.model.CodeType src) throws FHIRException { - org.hl7.fhir.instance.model.CodeType tgt = new org.hl7.fhir.instance.model.CodeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.UriType convertCodeToUri(org.hl7.fhir.instance.model.CodeType src) throws FHIRException { - org.hl7.fhir.r4.model.UriType tgt = new org.hl7.fhir.r4.model.UriType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.CodeType convertUriToCode(org.hl7.fhir.r4.model.UriType src) throws FHIRException { - org.hl7.fhir.instance.model.CodeType tgt = new org.hl7.fhir.instance.model.CodeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.DateType convertDate(org.hl7.fhir.instance.model.DateType src) throws FHIRException { - org.hl7.fhir.r4.model.DateType tgt = new org.hl7.fhir.r4.model.DateType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.DateType convertDate(org.hl7.fhir.instance.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.r4.model.DateType tgt = new org.hl7.fhir.r4.model.DateType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.DateType convertDate(org.hl7.fhir.r4.model.DateType src) throws FHIRException { - org.hl7.fhir.instance.model.DateType tgt = new org.hl7.fhir.instance.model.DateType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.DateType convertDate(org.hl7.fhir.r4.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.instance.model.DateType tgt = new org.hl7.fhir.instance.model.DateType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.DateTimeType convertDateTime(org.hl7.fhir.instance.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.r4.model.DateTimeType tgt = new org.hl7.fhir.r4.model.DateTimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.DateTimeType convertDateTime(org.hl7.fhir.r4.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.instance.model.DateTimeType tgt = new org.hl7.fhir.instance.model.DateTimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.DecimalType convertDecimal(org.hl7.fhir.instance.model.DecimalType src) throws FHIRException { - org.hl7.fhir.r4.model.DecimalType tgt = new org.hl7.fhir.r4.model.DecimalType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.DecimalType convertDecimal(org.hl7.fhir.r4.model.DecimalType src) throws FHIRException { - org.hl7.fhir.instance.model.DecimalType tgt = new org.hl7.fhir.instance.model.DecimalType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.IdType convertId(org.hl7.fhir.instance.model.IdType src) throws FHIRException { - org.hl7.fhir.r4.model.IdType tgt = new org.hl7.fhir.r4.model.IdType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.IdType convertId(org.hl7.fhir.r4.model.IdType src) throws FHIRException { - org.hl7.fhir.instance.model.IdType tgt = new org.hl7.fhir.instance.model.IdType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.InstantType convertInstant(org.hl7.fhir.instance.model.InstantType src) throws FHIRException { - org.hl7.fhir.r4.model.InstantType tgt = new org.hl7.fhir.r4.model.InstantType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.InstantType convertInstant(org.hl7.fhir.r4.model.InstantType src) throws FHIRException { - org.hl7.fhir.instance.model.InstantType tgt = new org.hl7.fhir.instance.model.InstantType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.IntegerType convertInteger(org.hl7.fhir.instance.model.IntegerType src) throws FHIRException { - org.hl7.fhir.r4.model.IntegerType tgt = new org.hl7.fhir.r4.model.IntegerType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.IntegerType convertInteger(org.hl7.fhir.r4.model.IntegerType src) throws FHIRException { - org.hl7.fhir.instance.model.IntegerType tgt = new org.hl7.fhir.instance.model.IntegerType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.MarkdownType convertMarkdown(org.hl7.fhir.instance.model.MarkdownType src) throws FHIRException { - org.hl7.fhir.r4.model.MarkdownType tgt = new org.hl7.fhir.r4.model.MarkdownType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.MarkdownType convertMarkdown(org.hl7.fhir.r4.model.MarkdownType src) throws FHIRException { - org.hl7.fhir.instance.model.MarkdownType tgt = new org.hl7.fhir.instance.model.MarkdownType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.OidType convertOid(org.hl7.fhir.instance.model.OidType src) throws FHIRException { - org.hl7.fhir.r4.model.OidType tgt = new org.hl7.fhir.r4.model.OidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.OidType convertOid(org.hl7.fhir.r4.model.OidType src) throws FHIRException { - org.hl7.fhir.instance.model.OidType tgt = new org.hl7.fhir.instance.model.OidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.PositiveIntType convertPositiveInt(org.hl7.fhir.instance.model.PositiveIntType src) throws FHIRException { - org.hl7.fhir.r4.model.PositiveIntType tgt = new org.hl7.fhir.r4.model.PositiveIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.PositiveIntType convertPositiveInt(org.hl7.fhir.r4.model.PositiveIntType src) throws FHIRException { - org.hl7.fhir.instance.model.PositiveIntType tgt = new org.hl7.fhir.instance.model.PositiveIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.StringType convertString(org.hl7.fhir.instance.model.StringType src) throws FHIRException { - org.hl7.fhir.r4.model.StringType tgt = new org.hl7.fhir.r4.model.StringType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.StringType convertString(org.hl7.fhir.r4.model.StringType src) throws FHIRException { - org.hl7.fhir.instance.model.StringType tgt = new org.hl7.fhir.instance.model.StringType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.TimeType convertTime(org.hl7.fhir.instance.model.TimeType src) throws FHIRException { - org.hl7.fhir.r4.model.TimeType tgt = new org.hl7.fhir.r4.model.TimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.TimeType convertTime(org.hl7.fhir.r4.model.TimeType src) throws FHIRException { - org.hl7.fhir.instance.model.TimeType tgt = new org.hl7.fhir.instance.model.TimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.instance.model.UnsignedIntType src) throws FHIRException { - org.hl7.fhir.r4.model.UnsignedIntType tgt = new org.hl7.fhir.r4.model.UnsignedIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.r4.model.UnsignedIntType src) throws FHIRException { - org.hl7.fhir.instance.model.UnsignedIntType tgt = new org.hl7.fhir.instance.model.UnsignedIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.UriType convertUri(org.hl7.fhir.instance.model.UriType src) throws FHIRException { - org.hl7.fhir.r4.model.UriType tgt = new org.hl7.fhir.r4.model.UriType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.UriType convertUri(org.hl7.fhir.r4.model.UriType src) throws FHIRException { - org.hl7.fhir.instance.model.UriType tgt = new org.hl7.fhir.instance.model.UriType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.UuidType convertUuid(org.hl7.fhir.instance.model.UuidType src) throws FHIRException { - org.hl7.fhir.r4.model.UuidType tgt = new org.hl7.fhir.r4.model.UuidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.instance.model.UuidType convertUuid(org.hl7.fhir.r4.model.UuidType src) throws FHIRException { - org.hl7.fhir.instance.model.UuidType tgt = new org.hl7.fhir.instance.model.UuidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public org.hl7.fhir.r4.model.Extension convertExtension(org.hl7.fhir.instance.model.Extension src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Extension tgt = new org.hl7.fhir.r4.model.Extension(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public org.hl7.fhir.instance.model.Extension convertExtension(org.hl7.fhir.r4.model.Extension src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Extension tgt = new org.hl7.fhir.instance.model.Extension(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public org.hl7.fhir.r4.model.Narrative convertNarrative(org.hl7.fhir.instance.model.Narrative src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Narrative tgt = new org.hl7.fhir.r4.model.Narrative(); - copyElement(src, tgt); - tgt.setStatus(convertNarrativeStatus(src.getStatus())); - tgt.setDiv(src.getDiv()); - return tgt; - } - - public org.hl7.fhir.instance.model.Narrative convertNarrative(org.hl7.fhir.r4.model.Narrative src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Narrative tgt = new org.hl7.fhir.instance.model.Narrative(); - copyElement(src, tgt); - tgt.setStatus(convertNarrativeStatus(src.getStatus())); - tgt.setDiv(src.getDiv()); - return tgt; - } - - public org.hl7.fhir.r4.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.instance.model.Narrative.NarrativeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GENERATED: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.GENERATED; - case EXTENSIONS: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EXTENSIONS; - case ADDITIONAL: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.ADDITIONAL; - case EMPTY: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EMPTY; - default: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.r4.model.Narrative.NarrativeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GENERATED: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.GENERATED; - case EXTENSIONS: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.EXTENSIONS; - case ADDITIONAL: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.ADDITIONAL; - case EMPTY: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.EMPTY; - default: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Annotation convertAnnotation(org.hl7.fhir.instance.model.Annotation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Annotation tgt = new org.hl7.fhir.r4.model.Annotation(); - copyElement(src, tgt); - tgt.setAuthor(convertType(src.getAuthor())); - tgt.setTime(src.getTime()); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.instance.model.Annotation convertAnnotation(org.hl7.fhir.r4.model.Annotation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Annotation tgt = new org.hl7.fhir.instance.model.Annotation(); - copyElement(src, tgt); - tgt.setAuthor(convertType(src.getAuthor())); - tgt.setTime(src.getTime()); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.r4.model.Attachment convertAttachment(org.hl7.fhir.instance.model.Attachment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Attachment tgt = new org.hl7.fhir.r4.model.Attachment(); - copyElement(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setLanguage(src.getLanguage()); - tgt.setData(src.getData()); - tgt.setUrl(src.getUrl()); - tgt.setSize(src.getSize()); - tgt.setHash(src.getHash()); - tgt.setTitle(src.getTitle()); - tgt.setCreation(src.getCreation()); - return tgt; - } - - public org.hl7.fhir.instance.model.Attachment convertAttachment(org.hl7.fhir.r4.model.Attachment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Attachment tgt = new org.hl7.fhir.instance.model.Attachment(); - copyElement(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setLanguage(src.getLanguage()); - tgt.setData(src.getData()); - tgt.setUrl(src.getUrl()); - tgt.setSize(src.getSize()); - tgt.setHash(src.getHash()); - tgt.setTitle(src.getTitle()); - tgt.setCreation(src.getCreation()); - return tgt; - } - - public org.hl7.fhir.r4.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.instance.model.CodeableConcept src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CodeableConcept tgt = new org.hl7.fhir.r4.model.CodeableConcept(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Coding t : src.getCoding()) - tgt.addCoding(convertCoding(t)); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.instance.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.r4.model.CodeableConcept src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CodeableConcept tgt = new org.hl7.fhir.instance.model.CodeableConcept(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Coding t : src.getCoding()) - tgt.addCoding(convertCoding(t)); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.r4.model.Coding convertCoding(org.hl7.fhir.instance.model.Coding src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Coding tgt = new org.hl7.fhir.r4.model.Coding(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setVersion(src.getVersion()); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - tgt.setUserSelected(src.getUserSelected()); - return tgt; - } - - public org.hl7.fhir.instance.model.Coding convertCoding(org.hl7.fhir.r4.model.Coding src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Coding tgt = new org.hl7.fhir.instance.model.Coding(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setVersion(src.getVersion()); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - tgt.setUserSelected(src.getUserSelected()); - return tgt; - } - - - - public org.hl7.fhir.r4.model.Identifier convertIdentifier(org.hl7.fhir.instance.model.Identifier src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Identifier tgt = new org.hl7.fhir.r4.model.Identifier(); - copyElement(src, tgt); - tgt.setUse(convertIdentifierUse(src.getUse())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setSystem(src.getSystem()); - tgt.setValue(src.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setAssigner(convertReference(src.getAssigner())); - return tgt; - } - - public org.hl7.fhir.instance.model.Identifier convertIdentifier(org.hl7.fhir.r4.model.Identifier src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Identifier tgt = new org.hl7.fhir.instance.model.Identifier(); - copyElement(src, tgt); - if (src.hasUse()) - tgt.setUse(convertIdentifierUse(src.getUse())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasAssigner()) - tgt.setAssigner(convertReference(src.getAssigner())); - return tgt; - } - - public org.hl7.fhir.r4.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.instance.model.Identifier.IdentifierUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.USUAL; - case OFFICIAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.OFFICIAL; - case TEMP: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.TEMP; - case SECONDARY: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.SECONDARY; - default: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.NULL; - } - } - - public org.hl7.fhir.instance.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.r4.model.Identifier.IdentifierUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.USUAL; - case OFFICIAL: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.OFFICIAL; - case TEMP: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.TEMP; - case SECONDARY: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.SECONDARY; - default: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.NULL; - } - } - - public org.hl7.fhir.r4.model.Period convertPeriod(org.hl7.fhir.instance.model.Period src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Period tgt = new org.hl7.fhir.r4.model.Period(); - copyElement(src, tgt); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - return tgt; - } - - public org.hl7.fhir.instance.model.Period convertPeriod(org.hl7.fhir.r4.model.Period src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Period tgt = new org.hl7.fhir.instance.model.Period(); - copyElement(src, tgt); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - return tgt; - } - - public org.hl7.fhir.r4.model.Quantity convertQuantity(org.hl7.fhir.instance.model.Quantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Quantity tgt = new org.hl7.fhir.r4.model.Quantity(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Quantity convertQuantity(org.hl7.fhir.r4.model.Quantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Quantity tgt = new org.hl7.fhir.instance.model.Quantity(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.r4.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.instance.model.Quantity.QuantityComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LESS_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_THAN; - case LESS_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_OR_EQUAL; - case GREATER_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; - case GREATER_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_THAN; - default: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.NULL; - } - } - - public org.hl7.fhir.instance.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.r4.model.Quantity.QuantityComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LESS_THAN: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.LESS_THAN; - case LESS_OR_EQUAL: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.LESS_OR_EQUAL; - case GREATER_OR_EQUAL: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; - case GREATER_THAN: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.GREATER_THAN; - default: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.NULL; - } - } - - public org.hl7.fhir.r4.model.Range convertRange(org.hl7.fhir.instance.model.Range src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Range tgt = new org.hl7.fhir.r4.model.Range(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - return tgt; - } - - public org.hl7.fhir.instance.model.Range convertRange(org.hl7.fhir.r4.model.Range src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Range tgt = new org.hl7.fhir.instance.model.Range(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - return tgt; - } - - public org.hl7.fhir.r4.model.Ratio convertRatio(org.hl7.fhir.instance.model.Ratio src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Ratio tgt = new org.hl7.fhir.r4.model.Ratio(); - copyElement(src, tgt); - tgt.setNumerator(convertQuantity(src.getNumerator())); - tgt.setDenominator(convertQuantity(src.getDenominator())); - return tgt; - } - - public org.hl7.fhir.instance.model.Ratio convertRatio(org.hl7.fhir.r4.model.Ratio src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Ratio tgt = new org.hl7.fhir.instance.model.Ratio(); - copyElement(src, tgt); - tgt.setNumerator(convertQuantity(src.getNumerator())); - tgt.setDenominator(convertQuantity(src.getDenominator())); - return tgt; - } - - public org.hl7.fhir.r4.model.Reference convertReference(org.hl7.fhir.instance.model.Reference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Reference tgt = new org.hl7.fhir.r4.model.Reference(); - copyElement(src, tgt); - tgt.setReference(src.getReference()); - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public org.hl7.fhir.instance.model.Reference convertReference(org.hl7.fhir.r4.model.Reference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Reference tgt = new org.hl7.fhir.instance.model.Reference(); - copyElement(src, tgt); - tgt.setReference(src.getReference()); - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public org.hl7.fhir.r4.model.SampledData convertSampledData(org.hl7.fhir.instance.model.SampledData src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.SampledData tgt = new org.hl7.fhir.r4.model.SampledData(); - copyElement(src, tgt); - tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); - tgt.setPeriod(src.getPeriod()); - tgt.setFactor(src.getFactor()); - tgt.setLowerLimit(src.getLowerLimit()); - tgt.setUpperLimit(src.getUpperLimit()); - tgt.setDimensions(src.getDimensions()); - tgt.setData(src.getData()); - return tgt; - } - - public org.hl7.fhir.instance.model.SampledData convertSampledData(org.hl7.fhir.r4.model.SampledData src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SampledData tgt = new org.hl7.fhir.instance.model.SampledData(); - copyElement(src, tgt); - tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); - tgt.setPeriod(src.getPeriod()); - tgt.setFactor(src.getFactor()); - tgt.setLowerLimit(src.getLowerLimit()); - tgt.setUpperLimit(src.getUpperLimit()); - tgt.setDimensions(src.getDimensions()); - tgt.setData(src.getData()); - return tgt; - } - - public org.hl7.fhir.r4.model.Signature convertSignature(org.hl7.fhir.instance.model.Signature src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Signature tgt = new org.hl7.fhir.r4.model.Signature(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - tgt.setWhen(src.getWhen()); - tgt.setWho(convertType(src.getWho())); - tgt.setContentType(src.getContentType()); - tgt.setBlob(src.getBlob()); - return tgt; - } - - public org.hl7.fhir.instance.model.Signature convertSignature(org.hl7.fhir.r4.model.Signature src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Signature tgt = new org.hl7.fhir.instance.model.Signature(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - tgt.setWhen(src.getWhen()); - tgt.setWho(convertType(src.getWho())); - tgt.setContentType(src.getContentType()); - tgt.setBlob(src.getBlob()); - return tgt; - } - - public org.hl7.fhir.r4.model.Address convertAddress(org.hl7.fhir.instance.model.Address src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Address tgt = new org.hl7.fhir.r4.model.Address(); - copyElement(src, tgt); - tgt.setUse(convertAddressUse(src.getUse())); - tgt.setType(convertAddressType(src.getType())); - tgt.setText(src.getText()); - for (org.hl7.fhir.instance.model.StringType t : src.getLine()) - tgt.addLine(t.getValue()); - tgt.setCity(src.getCity()); - tgt.setDistrict(src.getDistrict()); - tgt.setState(src.getState()); - tgt.setPostalCode(src.getPostalCode()); - tgt.setCountry(src.getCountry()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.Address convertAddress(org.hl7.fhir.r4.model.Address src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Address tgt = new org.hl7.fhir.instance.model.Address(); - copyElement(src, tgt); - tgt.setUse(convertAddressUse(src.getUse())); - tgt.setType(convertAddressType(src.getType())); - tgt.setText(src.getText()); - for (org.hl7.fhir.r4.model.StringType t : src.getLine()) - tgt.addLine(t.getValue()); - tgt.setCity(src.getCity()); - tgt.setDistrict(src.getDistrict()); - tgt.setState(src.getState()); - tgt.setPostalCode(src.getPostalCode()); - tgt.setCountry(src.getCountry()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.r4.model.Address.AddressUse convertAddressUse(org.hl7.fhir.instance.model.Address.AddressUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.r4.model.Address.AddressUse.HOME; - case WORK: return org.hl7.fhir.r4.model.Address.AddressUse.WORK; - case TEMP: return org.hl7.fhir.r4.model.Address.AddressUse.TEMP; - case OLD: return org.hl7.fhir.r4.model.Address.AddressUse.OLD; - default: return org.hl7.fhir.r4.model.Address.AddressUse.NULL; - } - } - - public org.hl7.fhir.instance.model.Address.AddressUse convertAddressUse(org.hl7.fhir.r4.model.Address.AddressUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.instance.model.Address.AddressUse.HOME; - case WORK: return org.hl7.fhir.instance.model.Address.AddressUse.WORK; - case TEMP: return org.hl7.fhir.instance.model.Address.AddressUse.TEMP; - case OLD: return org.hl7.fhir.instance.model.Address.AddressUse.OLD; - default: return org.hl7.fhir.instance.model.Address.AddressUse.NULL; - } - } - - public org.hl7.fhir.r4.model.Address.AddressType convertAddressType(org.hl7.fhir.instance.model.Address.AddressType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case POSTAL: return org.hl7.fhir.r4.model.Address.AddressType.POSTAL; - case PHYSICAL: return org.hl7.fhir.r4.model.Address.AddressType.PHYSICAL; - case BOTH: return org.hl7.fhir.r4.model.Address.AddressType.BOTH; - default: return org.hl7.fhir.r4.model.Address.AddressType.NULL; - } - } - - public org.hl7.fhir.instance.model.Address.AddressType convertAddressType(org.hl7.fhir.r4.model.Address.AddressType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case POSTAL: return org.hl7.fhir.instance.model.Address.AddressType.POSTAL; - case PHYSICAL: return org.hl7.fhir.instance.model.Address.AddressType.PHYSICAL; - case BOTH: return org.hl7.fhir.instance.model.Address.AddressType.BOTH; - default: return org.hl7.fhir.instance.model.Address.AddressType.NULL; - } - } - - public org.hl7.fhir.r4.model.ContactPoint convertContactPoint(org.hl7.fhir.instance.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactPoint tgt = new org.hl7.fhir.r4.model.ContactPoint(); - copyElement(src, tgt); - tgt.setSystem(convertContactPointSystem(src.getSystem())); - tgt.setValue(src.getValue()); - tgt.setUse(convertContactPointUse(src.getUse())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.ContactPoint convertContactPoint(org.hl7.fhir.r4.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ContactPoint tgt = new org.hl7.fhir.instance.model.ContactPoint(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(convertContactPointSystem(src.getSystem())); - tgt.setValue(src.getValue()); - tgt.setUse(convertContactPointUse(src.getUse())); - tgt.setRank(src.getRank()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHONE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PHONE; - case FAX: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.FAX; - case EMAIL: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.EMAIL; - case PAGER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PAGER; - case OTHER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.OTHER; - default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.NULL; - } - } - - public org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHONE: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.PHONE; - case FAX: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.FAX; - case EMAIL: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.EMAIL; - case PAGER: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.PAGER; - case OTHER: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.OTHER; - case URL: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.OTHER; - default: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.NULL; - } - } - - public org.hl7.fhir.r4.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.instance.model.ContactPoint.ContactPointUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.HOME; - case WORK: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.WORK; - case TEMP: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.TEMP; - case OLD: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.OLD; - case MOBILE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.MOBILE; - default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.NULL; - } - } - - public org.hl7.fhir.instance.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.r4.model.ContactPoint.ContactPointUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.HOME; - case WORK: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.WORK; - case TEMP: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.TEMP; - case OLD: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.OLD; - case MOBILE: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.MOBILE; - default: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.NULL; - } - } - - public org.hl7.fhir.r4.model.ElementDefinition convertElementDefinition(org.hl7.fhir.instance.model.ElementDefinition src, List slicePaths) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition tgt = new org.hl7.fhir.r4.model.ElementDefinition(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - for (org.hl7.fhir.instance.model.Enumeration t : src.getRepresentation()) - tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); - if (src.hasName()) { - if (slicePaths.contains(src.getPath())) - tgt.setSliceName(src.getName()); - tgt.setId(src.getName()); - } - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - for (org.hl7.fhir.instance.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - if (src.hasSlicing()) - tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); - if (src.hasShort()) - tgt.setShort(src.getShort()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasComments()) - tgt.setComment(src.getComments()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - for (org.hl7.fhir.instance.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasBase()) - tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); - if (src.hasNameReference()) - tgt.setContentReference("#"+src.getNameReference()); - for (org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent t : src.getType()) - tgt.addType(convertElementDefinitionTypeComponent(t)); - if (src.hasDefaultValue()) - tgt.setDefaultValue(convertType(src.getDefaultValue())); - if (src.hasMeaningWhenMissing()) - tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); - if (src.hasFixed()) - tgt.setFixed(convertType(src.getFixed())); - if (src.hasPattern()) - tgt.setPattern(convertType(src.getPattern())); - if (src.hasExample()) - tgt.addExample().setLabel("General").setValue(convertType(src.getExample())); - if (src.hasMinValue()) - tgt.setMinValue(convertType(src.getMinValue())); - if (src.hasMaxValue()) - tgt.setMaxValue(convertType(src.getMaxValue())); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - for (org.hl7.fhir.instance.model.IdType t : src.getCondition()) - tgt.addCondition(t.getValue()); - for (org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) - tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); - if (src.hasMustSupport()) - tgt.setMustSupport(src.getMustSupport()); - if (src.hasIsModifier()) - tgt.setIsModifier(src.getIsModifier()); - if (src.hasIsSummary()) - tgt.setIsSummary(src.getIsSummary()); - if (src.hasBinding()) - tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); - for (org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertElementDefinitionMappingComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition convertElementDefinition(org.hl7.fhir.r4.model.ElementDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition tgt = new org.hl7.fhir.instance.model.ElementDefinition(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - for (org.hl7.fhir.r4.model.Enumeration t : src.getRepresentation()) - tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); - if (src.hasSliceName()) - tgt.setName(src.getSliceName()); - else - tgt.setName(src.getId()); - tgt.setLabel(src.getLabel()); - for (org.hl7.fhir.r4.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - if (src.hasSlicing()) - tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); - tgt.setShort(src.getShort()); - tgt.setDefinition(src.getDefinition()); - tgt.setComments(src.getComment()); - tgt.setRequirements(src.getRequirements()); - for (org.hl7.fhir.r4.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - if (src.hasBase()) - tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); - if (src.hasContentReference()) - tgt.setNameReference(src.getContentReference().substring(1)); - for (org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent t : src.getType()) - tgt.addType(convertElementDefinitionTypeComponent(t)); - tgt.setDefaultValue(convertType(src.getDefaultValue())); - tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); - tgt.setFixed(convertType(src.getFixed())); - tgt.setPattern(convertType(src.getPattern())); - if (src.hasExample()) - tgt.setExample(convertType(src.getExampleFirstRep().getValue())); - tgt.setMinValue(convertType(src.getMinValue())); - tgt.setMaxValue(convertType(src.getMaxValue())); - tgt.setMaxLength(src.getMaxLength()); - for (org.hl7.fhir.r4.model.IdType t : src.getCondition()) - tgt.addCondition(t.getValue()); - for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) - tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); - tgt.setMustSupport(src.getMustSupport()); - tgt.setIsModifier(src.getIsModifier()); - tgt.setIsSummary(src.getIsSummary()); - if (src.hasBinding()) - tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); - for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertElementDefinitionMappingComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XMLATTR: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XMLATTR; - default: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.NULL; - } - } - - public org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XMLATTR: return org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation.XMLATTR; - default: return org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation.NULL; - } - } - - public org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.StringType t : src.getDiscriminator()) - tgt.addDiscriminator(ProfileUtilities.interpretR2Discriminator(t.getValue())); - tgt.setDescription(src.getDescription()); - tgt.setOrdered(src.getOrdered()); - tgt.setRules(convertSlicingRules(src.getRules())); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent(); - copyElement(src, tgt); - for (ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) - tgt.addDiscriminator(ProfileUtilities.buildR2Discriminator(t)); - tgt.setDescription(src.getDescription()); - tgt.setOrdered(src.getOrdered()); - tgt.setRules(convertSlicingRules(src.getRules())); - return tgt; - } - - public org.hl7.fhir.r4.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.instance.model.ElementDefinition.SlicingRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLOSED: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.CLOSED; - case OPEN: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPEN; - case OPENATEND: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPENATEND; - default: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.NULL; - } - } - - public org.hl7.fhir.instance.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.r4.model.ElementDefinition.SlicingRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLOSED: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.CLOSED; - case OPEN: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.OPEN; - case OPENATEND: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.OPENATEND; - default: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.NULL; - } - } - - public org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - return tgt; - } - - public org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent convertElementDefinitionTypeComponent(org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent(); - copyElement(src, tgt); - tgt.setCodeElement(convertCodeToUri(src.getCodeElement())); - for (org.hl7.fhir.instance.model.UriType t : src.getProfile()) - if (src.hasCode() && "Reference".equals(src.getCode())) - tgt.setTargetProfile(t.getValueAsString()); - else - tgt.setProfile(t.getValue()); - for (org.hl7.fhir.instance.model.Enumeration t : src.getAggregation()) - tgt.addAggregation(convertAggregationMode(t.getValue())); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent convertElementDefinitionTypeComponent(org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent(); - copyElement(src, tgt); - tgt.setCodeElement(convertUriToCode(src.getCodeElement())); - if (src.hasCode() && "Reference".equals(src.getCode())) { - if (src.hasTargetProfile()) - tgt.addProfile(src.getTargetProfile()); - } else if (src.hasProfile()) - tgt.addProfile(src.getProfile()); - for (org.hl7.fhir.r4.model.Enumeration t : src.getAggregation()) - tgt.addAggregation(convertAggregationMode(t.getValue())); - return tgt; - } - - public org.hl7.fhir.r4.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.instance.model.ElementDefinition.AggregationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONTAINED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.CONTAINED; - case REFERENCED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.REFERENCED; - case BUNDLED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.BUNDLED; - default: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.NULL; - } - } - - public org.hl7.fhir.instance.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.r4.model.ElementDefinition.AggregationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONTAINED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.CONTAINED; - case REFERENCED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.REFERENCED; - case BUNDLED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.BUNDLED; - default: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.NULL; - } - } - - public org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent(); - copyElement(src, tgt); - tgt.setKey(src.getKey()); - tgt.setRequirements(src.getRequirements()); - tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); - tgt.setHuman(src.getHuman()); - tgt.setExpression(ToolingExtensions.readStringExtension(src, ToolingExtensions.EXT_EXPRESSION)); - tgt.setXpath(src.getXpath()); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent(); - copyElement(src, tgt); - tgt.setKey(src.getKey()); - tgt.setRequirements(src.getRequirements()); - tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); - tgt.setHuman(src.getHuman()); - if (src.hasExpression()) - ToolingExtensions.addStringExtension(tgt, ToolingExtensions.EXT_EXPRESSION, src.getExpression()); - tgt.setXpath(src.getXpath()); - return tgt; - } - - public org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ERROR: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.ERROR; - case WARNING: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.WARNING; - default: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.NULL; - } - } - - public org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ERROR: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.ERROR; - case WARNING: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.WARNING; - default: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.NULL; - } - } - - public org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setDescription(src.getDescription()); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setDescription(src.getDescription()); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public org.hl7.fhir.r4.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.instance.model.Enumerations.BindingStrength src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.REQUIRED; - case EXTENSIBLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXTENSIBLE; - case PREFERRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.PREFERRED; - case EXAMPLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXAMPLE; - default: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.r4.model.Enumerations.BindingStrength src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.REQUIRED; - case EXTENSIBLE: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.EXTENSIBLE; - case PREFERRED: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.PREFERRED; - case EXAMPLE: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.EXAMPLE; - default: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.NULL; - } - } - - public org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setLanguage(src.getLanguage()); - tgt.setMap(src.getMap()); - return tgt; - } - - public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setLanguage(src.getLanguage()); - tgt.setMap(src.getMap()); - return tgt; - } - - public org.hl7.fhir.r4.model.HumanName convertHumanName(org.hl7.fhir.instance.model.HumanName src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.HumanName tgt = new org.hl7.fhir.r4.model.HumanName(); - copyElement(src, tgt); - tgt.setUse(convertNameUse(src.getUse())); - tgt.setText(src.getText()); - for (org.hl7.fhir.instance.model.StringType t : src.getFamily()) - tgt.setFamily(t.getValue()); - for (org.hl7.fhir.instance.model.StringType t : src.getGiven()) - tgt.addGiven(t.getValue()); - for (org.hl7.fhir.instance.model.StringType t : src.getPrefix()) - tgt.addPrefix(t.getValue()); - for (org.hl7.fhir.instance.model.StringType t : src.getSuffix()) - tgt.addSuffix(t.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.HumanName convertHumanName(org.hl7.fhir.r4.model.HumanName src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.HumanName tgt = new org.hl7.fhir.instance.model.HumanName(); - copyElement(src, tgt); - tgt.setUse(convertNameUse(src.getUse())); - tgt.setText(src.getText()); - if (src.hasFamily()) - tgt.addFamily(src.getFamily()); - for (org.hl7.fhir.r4.model.StringType t : src.getGiven()) - tgt.addGiven(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getPrefix()) - tgt.addPrefix(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getSuffix()) - tgt.addSuffix(t.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.r4.model.HumanName.NameUse convertNameUse(org.hl7.fhir.instance.model.HumanName.NameUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.r4.model.HumanName.NameUse.USUAL; - case OFFICIAL: return org.hl7.fhir.r4.model.HumanName.NameUse.OFFICIAL; - case TEMP: return org.hl7.fhir.r4.model.HumanName.NameUse.TEMP; - case NICKNAME: return org.hl7.fhir.r4.model.HumanName.NameUse.NICKNAME; - case ANONYMOUS: return org.hl7.fhir.r4.model.HumanName.NameUse.ANONYMOUS; - case OLD: return org.hl7.fhir.r4.model.HumanName.NameUse.OLD; - case MAIDEN: return org.hl7.fhir.r4.model.HumanName.NameUse.MAIDEN; - default: return org.hl7.fhir.r4.model.HumanName.NameUse.NULL; - } - } - - public org.hl7.fhir.instance.model.HumanName.NameUse convertNameUse(org.hl7.fhir.r4.model.HumanName.NameUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.instance.model.HumanName.NameUse.USUAL; - case OFFICIAL: return org.hl7.fhir.instance.model.HumanName.NameUse.OFFICIAL; - case TEMP: return org.hl7.fhir.instance.model.HumanName.NameUse.TEMP; - case NICKNAME: return org.hl7.fhir.instance.model.HumanName.NameUse.NICKNAME; - case ANONYMOUS: return org.hl7.fhir.instance.model.HumanName.NameUse.ANONYMOUS; - case OLD: return org.hl7.fhir.instance.model.HumanName.NameUse.OLD; - case MAIDEN: return org.hl7.fhir.instance.model.HumanName.NameUse.MAIDEN; - default: return org.hl7.fhir.instance.model.HumanName.NameUse.NULL; - } - } - - public org.hl7.fhir.r4.model.Meta convertMeta(org.hl7.fhir.instance.model.Meta src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Meta tgt = new org.hl7.fhir.r4.model.Meta(); - copyElement(src, tgt); - tgt.setVersionId(src.getVersionId()); - tgt.setLastUpdated(src.getLastUpdated()); - for (org.hl7.fhir.instance.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.instance.model.Coding t : src.getSecurity()) - tgt.addSecurity(convertCoding(t)); - for (org.hl7.fhir.instance.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Meta convertMeta(org.hl7.fhir.r4.model.Meta src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Meta tgt = new org.hl7.fhir.instance.model.Meta(); - copyElement(src, tgt); - tgt.setVersionId(src.getVersionId()); - tgt.setLastUpdated(src.getLastUpdated()); - for (org.hl7.fhir.r4.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.r4.model.Coding t : src.getSecurity()) - tgt.addSecurity(convertCoding(t)); - for (org.hl7.fhir.r4.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Timing convertTiming(org.hl7.fhir.instance.model.Timing src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Timing tgt = new org.hl7.fhir.r4.model.Timing(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.DateTimeType t : src.getEvent()) - tgt.addEvent(t.getValue()); - tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public org.hl7.fhir.instance.model.Timing convertTiming(org.hl7.fhir.r4.model.Timing src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Timing tgt = new org.hl7.fhir.instance.model.Timing(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.DateTimeType t : src.getEvent()) - tgt.addEvent(t.getValue()); - tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public org.hl7.fhir.r4.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.instance.model.Timing.TimingRepeatComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.r4.model.Timing.TimingRepeatComponent(); - copyElement(src, tgt); - tgt.setBounds(convertType(src.getBounds())); - tgt.setCount(src.getCount()); - tgt.setDuration(src.getDuration()); - tgt.setDurationMax(src.getDurationMax()); - tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnits())); - tgt.setFrequency(src.getFrequency()); - tgt.setFrequencyMax(src.getFrequencyMax()); - tgt.setPeriod(src.getPeriod()); - tgt.setPeriodMax(src.getPeriodMax()); - tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnits())); - tgt.addWhen(convertEventTiming(src.getWhen())); - return tgt; - } - - public org.hl7.fhir.instance.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.r4.model.Timing.TimingRepeatComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.instance.model.Timing.TimingRepeatComponent(); - copyElement(src, tgt); - tgt.setBounds(convertType(src.getBounds())); - tgt.setCount(src.getCount()); - tgt.setDuration(src.getDuration()); - tgt.setDurationMax(src.getDurationMax()); - tgt.setDurationUnits(convertUnitsOfTime(src.getDurationUnit())); - tgt.setFrequency(src.getFrequency()); - tgt.setFrequencyMax(src.getFrequencyMax()); - tgt.setPeriod(src.getPeriod()); - tgt.setPeriodMax(src.getPeriodMax()); - tgt.setPeriodUnits(convertUnitsOfTime(src.getPeriodUnit())); - for (Enumeration t : src.getWhen()) - tgt.setWhen(convertEventTiming(t.getValue())); - return tgt; - } - - public org.hl7.fhir.r4.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.instance.model.Timing.UnitsOfTime src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case S: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.S; - case MIN: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MIN; - case H: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.H; - case D: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.D; - case WK: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.WK; - case MO: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MO; - case A: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.A; - default: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.NULL; - } - } - - public org.hl7.fhir.instance.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.r4.model.Timing.UnitsOfTime src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case S: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.S; - case MIN: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.MIN; - case H: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.H; - case D: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.D; - case WK: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.WK; - case MO: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.MO; - case A: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.A; - default: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.NULL; - } - } - - public org.hl7.fhir.r4.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.instance.model.Timing.EventTiming src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HS: return org.hl7.fhir.r4.model.Timing.EventTiming.HS; - case WAKE: return org.hl7.fhir.r4.model.Timing.EventTiming.WAKE; - case C: return org.hl7.fhir.r4.model.Timing.EventTiming.C; - case CM: return org.hl7.fhir.r4.model.Timing.EventTiming.CM; - case CD: return org.hl7.fhir.r4.model.Timing.EventTiming.CD; - case CV: return org.hl7.fhir.r4.model.Timing.EventTiming.CV; - case AC: return org.hl7.fhir.r4.model.Timing.EventTiming.AC; - case ACM: return org.hl7.fhir.r4.model.Timing.EventTiming.ACM; - case ACD: return org.hl7.fhir.r4.model.Timing.EventTiming.ACD; - case ACV: return org.hl7.fhir.r4.model.Timing.EventTiming.ACV; - case PC: return org.hl7.fhir.r4.model.Timing.EventTiming.PC; - case PCM: return org.hl7.fhir.r4.model.Timing.EventTiming.PCM; - case PCD: return org.hl7.fhir.r4.model.Timing.EventTiming.PCD; - case PCV: return org.hl7.fhir.r4.model.Timing.EventTiming.PCV; - default: return org.hl7.fhir.r4.model.Timing.EventTiming.NULL; - } - } - - public org.hl7.fhir.instance.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.r4.model.Timing.EventTiming src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HS: return org.hl7.fhir.instance.model.Timing.EventTiming.HS; - case WAKE: return org.hl7.fhir.instance.model.Timing.EventTiming.WAKE; - case C: return org.hl7.fhir.instance.model.Timing.EventTiming.C; - case CM: return org.hl7.fhir.instance.model.Timing.EventTiming.CM; - case CD: return org.hl7.fhir.instance.model.Timing.EventTiming.CD; - case CV: return org.hl7.fhir.instance.model.Timing.EventTiming.CV; - case AC: return org.hl7.fhir.instance.model.Timing.EventTiming.AC; - case ACM: return org.hl7.fhir.instance.model.Timing.EventTiming.ACM; - case ACD: return org.hl7.fhir.instance.model.Timing.EventTiming.ACD; - case ACV: return org.hl7.fhir.instance.model.Timing.EventTiming.ACV; - case PC: return org.hl7.fhir.instance.model.Timing.EventTiming.PC; - case PCM: return org.hl7.fhir.instance.model.Timing.EventTiming.PCM; - case PCD: return org.hl7.fhir.instance.model.Timing.EventTiming.PCD; - case PCV: return org.hl7.fhir.instance.model.Timing.EventTiming.PCV; - default: return org.hl7.fhir.instance.model.Timing.EventTiming.NULL; - } - } - - public org.hl7.fhir.r4.model.Age convertAge(org.hl7.fhir.instance.model.Age src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Age tgt = new org.hl7.fhir.r4.model.Age(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Age convertAge(org.hl7.fhir.r4.model.Age src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Age tgt = new org.hl7.fhir.instance.model.Age(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.r4.model.Count convertCount(org.hl7.fhir.instance.model.Count src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Count tgt = new org.hl7.fhir.r4.model.Count(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Count convertCount(org.hl7.fhir.r4.model.Count src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Count tgt = new org.hl7.fhir.instance.model.Count(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.r4.model.Distance convertDistance(org.hl7.fhir.instance.model.Distance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Distance tgt = new org.hl7.fhir.r4.model.Distance(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Distance convertDistance(org.hl7.fhir.r4.model.Distance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Distance tgt = new org.hl7.fhir.instance.model.Distance(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.r4.model.Duration convertDuration(org.hl7.fhir.instance.model.Duration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Duration tgt = new org.hl7.fhir.r4.model.Duration(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Duration convertDuration(org.hl7.fhir.r4.model.Duration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Duration tgt = new org.hl7.fhir.instance.model.Duration(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.r4.model.Money convertMoney(org.hl7.fhir.instance.model.Money src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Money tgt = new org.hl7.fhir.r4.model.Money(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.Money convertMoney(org.hl7.fhir.r4.model.Money src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Money tgt = new org.hl7.fhir.instance.model.Money(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.r4.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.instance.model.SimpleQuantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.SimpleQuantity tgt = new org.hl7.fhir.r4.model.SimpleQuantity(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.r4.model.SimpleQuantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SimpleQuantity tgt = new org.hl7.fhir.instance.model.SimpleQuantity(); - copyElement(src, tgt); - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - tgt.setUnit(src.getUnit()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.r4.model.Type convertType(org.hl7.fhir.instance.model.Type src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.instance.model.Base64BinaryType) - return convertBase64Binary((org.hl7.fhir.instance.model.Base64BinaryType) src); - if (src instanceof org.hl7.fhir.instance.model.BooleanType) - return convertBoolean((org.hl7.fhir.instance.model.BooleanType) src); - if (src instanceof org.hl7.fhir.instance.model.CodeType) - return convertCode((org.hl7.fhir.instance.model.CodeType) src); - if (src instanceof org.hl7.fhir.instance.model.DateType) - return convertDate((org.hl7.fhir.instance.model.DateType) src); - if (src instanceof org.hl7.fhir.instance.model.DateTimeType) - return convertDateTime((org.hl7.fhir.instance.model.DateTimeType) src); - if (src instanceof org.hl7.fhir.instance.model.DecimalType) - return convertDecimal((org.hl7.fhir.instance.model.DecimalType) src); - if (src instanceof org.hl7.fhir.instance.model.IdType) - return convertId((org.hl7.fhir.instance.model.IdType) src); - if (src instanceof org.hl7.fhir.instance.model.InstantType) - return convertInstant((org.hl7.fhir.instance.model.InstantType) src); - if (src instanceof org.hl7.fhir.instance.model.IntegerType) - return convertInteger((org.hl7.fhir.instance.model.IntegerType) src); - if (src instanceof org.hl7.fhir.instance.model.MarkdownType) - return convertMarkdown((org.hl7.fhir.instance.model.MarkdownType) src); - if (src instanceof org.hl7.fhir.instance.model.OidType) - return convertOid((org.hl7.fhir.instance.model.OidType) src); - if (src instanceof org.hl7.fhir.instance.model.PositiveIntType) - return convertPositiveInt((org.hl7.fhir.instance.model.PositiveIntType) src); - if (src instanceof org.hl7.fhir.instance.model.StringType) - return convertString((org.hl7.fhir.instance.model.StringType) src); - if (src instanceof org.hl7.fhir.instance.model.TimeType) - return convertTime((org.hl7.fhir.instance.model.TimeType) src); - if (src instanceof org.hl7.fhir.instance.model.UnsignedIntType) - return convertUnsignedInt((org.hl7.fhir.instance.model.UnsignedIntType) src); - if (src instanceof org.hl7.fhir.instance.model.UriType) - return convertUri((org.hl7.fhir.instance.model.UriType) src); - if (src instanceof org.hl7.fhir.instance.model.UuidType) - return convertUuid((org.hl7.fhir.instance.model.UuidType) src); - if (src instanceof org.hl7.fhir.instance.model.Extension) - return convertExtension((org.hl7.fhir.instance.model.Extension) src); - if (src instanceof org.hl7.fhir.instance.model.Narrative) - return convertNarrative((org.hl7.fhir.instance.model.Narrative) src); - if (src instanceof org.hl7.fhir.instance.model.Annotation) - return convertAnnotation((org.hl7.fhir.instance.model.Annotation) src); - if (src instanceof org.hl7.fhir.instance.model.Attachment) - return convertAttachment((org.hl7.fhir.instance.model.Attachment) src); - if (src instanceof org.hl7.fhir.instance.model.CodeableConcept) - return convertCodeableConcept((org.hl7.fhir.instance.model.CodeableConcept) src); - if (src instanceof org.hl7.fhir.instance.model.Coding) - return convertCoding((org.hl7.fhir.instance.model.Coding) src); - if (src instanceof org.hl7.fhir.instance.model.Identifier) - return convertIdentifier((org.hl7.fhir.instance.model.Identifier) src); - if (src instanceof org.hl7.fhir.instance.model.Period) - return convertPeriod((org.hl7.fhir.instance.model.Period) src); - if (src instanceof org.hl7.fhir.instance.model.Quantity) - return convertQuantity((org.hl7.fhir.instance.model.Quantity) src); - if (src instanceof org.hl7.fhir.instance.model.Range) - return convertRange((org.hl7.fhir.instance.model.Range) src); - if (src instanceof org.hl7.fhir.instance.model.Ratio) - return convertRatio((org.hl7.fhir.instance.model.Ratio) src); - if (src instanceof org.hl7.fhir.instance.model.Reference) - return convertReference((org.hl7.fhir.instance.model.Reference) src); - if (src instanceof org.hl7.fhir.instance.model.SampledData) - return convertSampledData((org.hl7.fhir.instance.model.SampledData) src); - if (src instanceof org.hl7.fhir.instance.model.Signature) - return convertSignature((org.hl7.fhir.instance.model.Signature) src); - if (src instanceof org.hl7.fhir.instance.model.Address) - return convertAddress((org.hl7.fhir.instance.model.Address) src); - if (src instanceof org.hl7.fhir.instance.model.ContactPoint) - return convertContactPoint((org.hl7.fhir.instance.model.ContactPoint) src); - if (src instanceof org.hl7.fhir.instance.model.ElementDefinition) - return convertElementDefinition((org.hl7.fhir.instance.model.ElementDefinition) src, new ArrayList()); - if (src instanceof org.hl7.fhir.instance.model.HumanName) - return convertHumanName((org.hl7.fhir.instance.model.HumanName) src); - if (src instanceof org.hl7.fhir.instance.model.Meta) - return convertMeta((org.hl7.fhir.instance.model.Meta) src); - if (src instanceof org.hl7.fhir.instance.model.Timing) - return convertTiming((org.hl7.fhir.instance.model.Timing) src); - if (src instanceof org.hl7.fhir.instance.model.Age) - return convertAge((org.hl7.fhir.instance.model.Age) src); - if (src instanceof org.hl7.fhir.instance.model.Count) - return convertCount((org.hl7.fhir.instance.model.Count) src); - if (src instanceof org.hl7.fhir.instance.model.Distance) - return convertDistance((org.hl7.fhir.instance.model.Distance) src); - if (src instanceof org.hl7.fhir.instance.model.Duration) - return convertDuration((org.hl7.fhir.instance.model.Duration) src); - if (src instanceof org.hl7.fhir.instance.model.Money) - return convertMoney((org.hl7.fhir.instance.model.Money) src); - if (src instanceof org.hl7.fhir.instance.model.SimpleQuantity) - return convertSimpleQuantity((org.hl7.fhir.instance.model.SimpleQuantity) src); - throw new Error("Unknown type "+src.fhirType()); - } - - public org.hl7.fhir.instance.model.Type convertType(org.hl7.fhir.r4.model.Type src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.r4.model.Base64BinaryType) - return convertBase64Binary((org.hl7.fhir.r4.model.Base64BinaryType) src); - if (src instanceof org.hl7.fhir.r4.model.BooleanType) - return convertBoolean((org.hl7.fhir.r4.model.BooleanType) src); - if (src instanceof org.hl7.fhir.r4.model.CodeType) - return convertCode((org.hl7.fhir.r4.model.CodeType) src); - if (src instanceof org.hl7.fhir.r4.model.DateType) - return convertDate((org.hl7.fhir.r4.model.DateType) src); - if (src instanceof org.hl7.fhir.r4.model.DateTimeType) - return convertDateTime((org.hl7.fhir.r4.model.DateTimeType) src); - if (src instanceof org.hl7.fhir.r4.model.DecimalType) - return convertDecimal((org.hl7.fhir.r4.model.DecimalType) src); - if (src instanceof org.hl7.fhir.r4.model.IdType) - return convertId((org.hl7.fhir.r4.model.IdType) src); - if (src instanceof org.hl7.fhir.r4.model.InstantType) - return convertInstant((org.hl7.fhir.r4.model.InstantType) src); - if (src instanceof org.hl7.fhir.r4.model.IntegerType) - return convertInteger((org.hl7.fhir.r4.model.IntegerType) src); - if (src instanceof org.hl7.fhir.r4.model.MarkdownType) - return convertMarkdown((org.hl7.fhir.r4.model.MarkdownType) src); - if (src instanceof org.hl7.fhir.r4.model.OidType) - return convertOid((org.hl7.fhir.r4.model.OidType) src); - if (src instanceof org.hl7.fhir.r4.model.PositiveIntType) - return convertPositiveInt((org.hl7.fhir.r4.model.PositiveIntType) src); - if (src instanceof org.hl7.fhir.r4.model.StringType) - return convertString((org.hl7.fhir.r4.model.StringType) src); - if (src instanceof org.hl7.fhir.r4.model.TimeType) - return convertTime((org.hl7.fhir.r4.model.TimeType) src); - if (src instanceof org.hl7.fhir.r4.model.UnsignedIntType) - return convertUnsignedInt((org.hl7.fhir.r4.model.UnsignedIntType) src); - if (src instanceof org.hl7.fhir.r4.model.UriType) - return convertUri((org.hl7.fhir.r4.model.UriType) src); - if (src instanceof org.hl7.fhir.r4.model.UuidType) - return convertUuid((org.hl7.fhir.r4.model.UuidType) src); - if (src instanceof org.hl7.fhir.r4.model.Extension) - return convertExtension((org.hl7.fhir.r4.model.Extension) src); - if (src instanceof org.hl7.fhir.r4.model.Narrative) - return convertNarrative((org.hl7.fhir.r4.model.Narrative) src); - if (src instanceof org.hl7.fhir.r4.model.Annotation) - return convertAnnotation((org.hl7.fhir.r4.model.Annotation) src); - if (src instanceof org.hl7.fhir.r4.model.Attachment) - return convertAttachment((org.hl7.fhir.r4.model.Attachment) src); - if (src instanceof org.hl7.fhir.r4.model.CodeableConcept) - return convertCodeableConcept((org.hl7.fhir.r4.model.CodeableConcept) src); - if (src instanceof org.hl7.fhir.r4.model.Coding) - return convertCoding((org.hl7.fhir.r4.model.Coding) src); - if (src instanceof org.hl7.fhir.r4.model.Identifier) - return convertIdentifier((org.hl7.fhir.r4.model.Identifier) src); - if (src instanceof org.hl7.fhir.r4.model.Period) - return convertPeriod((org.hl7.fhir.r4.model.Period) src); - if (src instanceof org.hl7.fhir.r4.model.Quantity) - return convertQuantity((org.hl7.fhir.r4.model.Quantity) src); - if (src instanceof org.hl7.fhir.r4.model.Range) - return convertRange((org.hl7.fhir.r4.model.Range) src); - if (src instanceof org.hl7.fhir.r4.model.Ratio) - return convertRatio((org.hl7.fhir.r4.model.Ratio) src); - if (src instanceof org.hl7.fhir.r4.model.Reference) - return convertReference((org.hl7.fhir.r4.model.Reference) src); - if (src instanceof org.hl7.fhir.r4.model.SampledData) - return convertSampledData((org.hl7.fhir.r4.model.SampledData) src); - if (src instanceof org.hl7.fhir.r4.model.Signature) - return convertSignature((org.hl7.fhir.r4.model.Signature) src); - if (src instanceof org.hl7.fhir.r4.model.Address) - return convertAddress((org.hl7.fhir.r4.model.Address) src); - if (src instanceof org.hl7.fhir.r4.model.ContactPoint) - return convertContactPoint((org.hl7.fhir.r4.model.ContactPoint) src); - if (src instanceof org.hl7.fhir.r4.model.ElementDefinition) - return convertElementDefinition((org.hl7.fhir.r4.model.ElementDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.HumanName) - return convertHumanName((org.hl7.fhir.r4.model.HumanName) src); - if (src instanceof org.hl7.fhir.r4.model.Meta) - return convertMeta((org.hl7.fhir.r4.model.Meta) src); - if (src instanceof org.hl7.fhir.r4.model.Timing) - return convertTiming((org.hl7.fhir.r4.model.Timing) src); - if (src instanceof org.hl7.fhir.r4.model.Age) - return convertAge((org.hl7.fhir.r4.model.Age) src); - if (src instanceof org.hl7.fhir.r4.model.Count) - return convertCount((org.hl7.fhir.r4.model.Count) src); - if (src instanceof org.hl7.fhir.r4.model.Distance) - return convertDistance((org.hl7.fhir.r4.model.Distance) src); - if (src instanceof org.hl7.fhir.r4.model.Duration) - return convertDuration((org.hl7.fhir.r4.model.Duration) src); - if (src instanceof org.hl7.fhir.r4.model.Money) - return convertMoney((org.hl7.fhir.r4.model.Money) src); - if (src instanceof org.hl7.fhir.r4.model.SimpleQuantity) - return convertSimpleQuantity((org.hl7.fhir.r4.model.SimpleQuantity) src); - throw new Error("Unknown type "+src.fhirType()); - } - - public void copyDomainResource(org.hl7.fhir.instance.model.DomainResource src, org.hl7.fhir.r4.model.DomainResource tgt) throws FHIRException { - copyResource(src, tgt); - tgt.setText(convertNarrative(src.getText())); - for (org.hl7.fhir.instance.model.Resource t : src.getContained()) - tgt.addContained(convertResource(t)); - for (org.hl7.fhir.instance.model.Extension t : src.getExtension()) - tgt.addExtension(convertExtension(t)); - for (org.hl7.fhir.instance.model.Extension t : src.getModifierExtension()) - tgt.addModifierExtension(convertExtension(t)); - } - public void copyDomainResource(org.hl7.fhir.r4.model.DomainResource src, org.hl7.fhir.instance.model.DomainResource tgt) throws FHIRException { - copyResource(src, tgt); - tgt.setText(convertNarrative(src.getText())); - for (org.hl7.fhir.r4.model.Resource t : src.getContained()) - tgt.addContained(convertResource(t)); - for (org.hl7.fhir.r4.model.Extension t : src.getExtension()) - tgt.addExtension(convertExtension(t)); - for (org.hl7.fhir.r4.model.Extension t : src.getModifierExtension()) - tgt.addModifierExtension(convertExtension(t)); - } - - public org.hl7.fhir.r4.model.Parameters convertParameters(org.hl7.fhir.instance.model.Parameters src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Parameters tgt = new org.hl7.fhir.r4.model.Parameters(); - copyResource(src, tgt); - for (org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent t : src.getParameter()) - tgt.addParameter(convertParametersParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Parameters convertParameters(org.hl7.fhir.r4.model.Parameters src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Parameters tgt = new org.hl7.fhir.instance.model.Parameters(); - copyResource(src, tgt); - for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getParameter()) - tgt.addParameter(convertParametersParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - tgt.setResource(convertResource(src.getResource())); - for (org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent t : src.getPart()) - tgt.addPart(convertParametersParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - tgt.setResource(convertResource(src.getResource())); - for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getPart()) - tgt.addPart(convertParametersParameterComponent(t)); - return tgt; - } - - public void copyResource(org.hl7.fhir.instance.model.Resource src, org.hl7.fhir.r4.model.Resource tgt) throws FHIRException { - tgt.setId(src.getId()); - tgt.setMeta(convertMeta(src.getMeta())); - tgt.setImplicitRules(src.getImplicitRules()); - tgt.setLanguage(src.getLanguage()); - } - public void copyResource(org.hl7.fhir.r4.model.Resource src, org.hl7.fhir.instance.model.Resource tgt) throws FHIRException { - tgt.setId(src.getId()); - if (src.hasMeta()) - tgt.setMeta(convertMeta(src.getMeta())); - if (src.hasImplicitRules()) - tgt.setImplicitRules(src.getImplicitRules()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - } - - public org.hl7.fhir.r4.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.instance.model.Enumerations.AdministrativeGender src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MALE: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.MALE; - case FEMALE: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.FEMALE; - case OTHER: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.OTHER; - case UNKNOWN: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.UNKNOWN; - default: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.r4.model.Enumerations.AdministrativeGender src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MALE: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.MALE; - case FEMALE: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.FEMALE; - case OTHER: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.OTHER; - case UNKNOWN: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.UNKNOWN; - default: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.NULL; - } - } - - public org.hl7.fhir.r4.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.instance.model.Enumerations.SearchParamType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NUMBER: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NUMBER; - case DATE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.DATE; - case STRING: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.STRING; - case TOKEN: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.TOKEN; - case REFERENCE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.REFERENCE; - case COMPOSITE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.COMPOSITE; - case QUANTITY: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.QUANTITY; - case URI: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.URI; - default: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.r4.model.Enumerations.SearchParamType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NUMBER: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.NUMBER; - case DATE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.DATE; - case STRING: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.STRING; - case TOKEN: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.TOKEN; - case REFERENCE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.REFERENCE; - case COMPOSITE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.COMPOSITE; - case QUANTITY: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.QUANTITY; - case URI: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.URI; - default: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.NULL; - } - } - - public org.hl7.fhir.r4.model.Account convertAccount(org.hl7.fhir.instance.model.Account src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Account tgt = new org.hl7.fhir.r4.model.Account(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setStatus(convertAccountStatus(src.getStatus())); - tgt.setActive(convertPeriod(src.getActivePeriod())); - tgt.setBalance(convertMoney(src.getBalance())); -// tgt.setCoveragePeriod(convertPeriod(src.getCoveragePeriod())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setOwner(convertReference(src.getOwner())); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.instance.model.Account convertAccount(org.hl7.fhir.r4.model.Account src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Account tgt = new org.hl7.fhir.instance.model.Account(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setName(src.getName()); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setStatus(convertAccountStatus(src.getStatus())); - tgt.setActivePeriod(convertPeriod(src.getActive())); - tgt.setBalance(convertMoney(src.getBalance())); -// tgt.setCoveragePeriod(convertPeriod(src.getCoveragePeriod())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setOwner(convertReference(src.getOwner())); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.r4.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.instance.model.Account.AccountStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Account.AccountStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.r4.model.Account.AccountStatus.INACTIVE; - default: return org.hl7.fhir.r4.model.Account.AccountStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.r4.model.Account.AccountStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.Account.AccountStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.instance.model.Account.AccountStatus.INACTIVE; - default: return org.hl7.fhir.instance.model.Account.AccountStatus.NULL; - } - } - - - public org.hl7.fhir.r4.model.Appointment convertAppointment(org.hl7.fhir.instance.model.Appointment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Appointment tgt = new org.hl7.fhir.r4.model.Appointment(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertAppointmentStatus(src.getStatus())); - if (src.hasType()) - tgt.addServiceType(convertCodeableConcept(src.getType())); -// tgt.setReason(convertCodeableConcept(src.getReason())); - tgt.setPriority(src.getPriority()); - tgt.setDescription(src.getDescription()); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - tgt.setMinutesDuration(src.getMinutesDuration()); - for (org.hl7.fhir.instance.model.Reference t : src.getSlot()) - tgt.addSlot(convertReference(t)); - tgt.setComment(src.getComment()); - for (org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertAppointmentParticipantComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Appointment convertAppointment(org.hl7.fhir.r4.model.Appointment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Appointment tgt = new org.hl7.fhir.instance.model.Appointment(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertAppointmentStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) - tgt.setType(convertCodeableConcept(t)); -// tgt.setReason(convertCodeableConcept(src.getReason())); - tgt.setPriority(src.getPriority()); - tgt.setDescription(src.getDescription()); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - tgt.setMinutesDuration(src.getMinutesDuration()); - for (org.hl7.fhir.r4.model.Reference t : src.getSlot()) - tgt.addSlot(convertReference(t)); - tgt.setComment(src.getComment()); - for (org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertAppointmentParticipantComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.instance.model.Appointment.AppointmentStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.PROPOSED; - case PENDING: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.PENDING; - case BOOKED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.BOOKED; - case ARRIVED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.ARRIVED; - case FULFILLED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.FULFILLED; - case CANCELLED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.CANCELLED; - case NOSHOW: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.NOSHOW; - default: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.r4.model.Appointment.AppointmentStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.PROPOSED; - case PENDING: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.PENDING; - case BOOKED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.BOOKED; - case ARRIVED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.ARRIVED; - case FULFILLED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.FULFILLED; - case CANCELLED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.CANCELLED; - case NOSHOW: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.NOSHOW; - default: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setActor(convertReference(src.getActor())); - tgt.setRequired(convertParticipantRequired(src.getRequired())); - tgt.setStatus(convertParticipationStatus(src.getStatus())); - return tgt; - } - - public org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setActor(convertReference(src.getActor())); - tgt.setRequired(convertParticipantRequired(src.getRequired())); - tgt.setStatus(convertParticipationStatus(src.getStatus())); - return tgt; - } - - public org.hl7.fhir.r4.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.instance.model.Appointment.ParticipantRequired src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.REQUIRED; - case OPTIONAL: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.OPTIONAL; - case INFORMATIONONLY: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.INFORMATIONONLY; - default: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.NULL; - } - } - - public org.hl7.fhir.instance.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.r4.model.Appointment.ParticipantRequired src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.REQUIRED; - case OPTIONAL: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.OPTIONAL; - case INFORMATIONONLY: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.INFORMATIONONLY; - default: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.NULL; - } - } - - public org.hl7.fhir.r4.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.instance.model.Appointment.ParticipationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.TENTATIVE; - case NEEDSACTION: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.NEEDSACTION; - default: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.r4.model.Appointment.ParticipationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.TENTATIVE; - case NEEDSACTION: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.NEEDSACTION; - default: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.instance.model.AppointmentResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.AppointmentResponse tgt = new org.hl7.fhir.r4.model.AppointmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setAppointment(convertReference(src.getAppointment())); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getParticipantType()) - tgt.addParticipantType(convertCodeableConcept(t)); - tgt.setActor(convertReference(src.getActor())); - tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); - tgt.setComment(src.getComment()); - return tgt; - } - - private org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus src) { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.TENTATIVE; - case INPROCESS: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.ACCEPTED; - case COMPLETED: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.ACCEPTED; - case NEEDSACTION: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; - default: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.NULL; - } - } - - private org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus src) { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.TENTATIVE; - case NEEDSACTION: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; - default: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.r4.model.AppointmentResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AppointmentResponse tgt = new org.hl7.fhir.instance.model.AppointmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setAppointment(convertReference(src.getAppointment())); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getParticipantType()) - tgt.addParticipantType(convertCodeableConcept(t)); - tgt.setActor(convertReference(src.getActor())); - tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); - tgt.setComment(src.getComment()); - return tgt; - } - - public org.hl7.fhir.r4.model.AuditEvent convertAuditEvent(org.hl7.fhir.instance.model.AuditEvent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.AuditEvent tgt = new org.hl7.fhir.r4.model.AuditEvent(); - copyDomainResource(src, tgt); - if (src.hasEvent()) { - tgt.setType(convertCoding(src.getEvent().getType())); - for (org.hl7.fhir.instance.model.Coding t : src.getEvent().getSubtype()) - tgt.addSubtype(convertCoding(t)); - tgt.setAction(convertAuditEventAction(src.getEvent().getAction())); - tgt.setRecorded(src.getEvent().getDateTime()); - tgt.setOutcome(convertAuditEventOutcome(src.getEvent().getOutcome())); - tgt.setOutcomeDesc(src.getEvent().getOutcomeDesc()); - for (org.hl7.fhir.instance.model.Coding t : src.getEvent().getPurposeOfEvent()) - tgt.addPurposeOfEvent().addCoding(convertCoding(t)); - } - for (org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent t : src.getParticipant()) - tgt.addAgent(convertAuditEventAgentComponent(t)); - tgt.setSource(convertAuditEventSourceComponent(src.getSource())); - for (org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent t : src.getObject()) - tgt.addEntity(convertAuditEventEntityComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent convertAuditEvent(org.hl7.fhir.r4.model.AuditEvent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent tgt = new org.hl7.fhir.instance.model.AuditEvent(); - copyDomainResource(src, tgt); - tgt.getEvent().setType(convertCoding(src.getType())); - for (org.hl7.fhir.r4.model.Coding t : src.getSubtype()) - tgt.getEvent().addSubtype(convertCoding(t)); - tgt.getEvent().setAction(convertAuditEventAction(src.getAction())); - tgt.getEvent().setDateTime(src.getRecorded()); - tgt.getEvent().setOutcome(convertAuditEventOutcome(src.getOutcome())); - tgt.getEvent().setOutcomeDesc(src.getOutcomeDesc()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPurposeOfEvent()) - for (org.hl7.fhir.r4.model.Coding cc : t.getCoding()) - tgt.getEvent().addPurposeOfEvent(convertCoding(cc)); - for (org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) - tgt.addParticipant(convertAuditEventAgentComponent(t)); - tgt.setSource(convertAuditEventSourceComponent(src.getSource())); - for (org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent t : src.getEntity()) - tgt.addObject(convertAuditEventEntityComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.instance.model.AuditEvent.AuditEventAction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case C: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.C; - case R: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.R; - case U: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.U; - case D: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.D; - case E: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.E; - default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.NULL; - } - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.r4.model.AuditEvent.AuditEventAction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case C: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.C; - case R: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.R; - case U: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.U; - case D: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.D; - case E: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.E; - default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.NULL; - } - } - - public org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _0: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._0; - case _4: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._4; - case _8: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._8; - case _12: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._12; - default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome.NULL; - } - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _0: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._0; - case _4: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._4; - case _8: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._8; - case _12: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._12; - default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome.NULL; - } - } - - public org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent convertAuditEventAgentComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - tgt.setReference(convertReference(src.getReference())); - tgt.setUserId(convertIdentifier(src.getUserId())); - tgt.setAltId(src.getAltId()); - tgt.setName(src.getName()); - tgt.setRequestor(src.getRequestor()); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.instance.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - tgt.setMedia(convertCoding(src.getMedia())); - tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); - for (org.hl7.fhir.instance.model.Coding t : src.getPurposeOfUse()) - tgt.addPurposeOfUse().addCoding(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent convertAuditEventAgentComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - tgt.setReference(convertReference(src.getReference())); - tgt.setUserId(convertIdentifier(src.getUserId())); - tgt.setAltId(src.getAltId()); - tgt.setName(src.getName()); - tgt.setRequestor(src.getRequestor()); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.r4.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - tgt.setMedia(convertCoding(src.getMedia())); - tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPurposeOfUse()) - for (org.hl7.fhir.r4.model.Coding cc : t.getCoding()) - tgt.addPurposeOfUse(convertCoding(cc)); - return tgt; - } - - public org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent(); - copyElement(src, tgt); - tgt.setAddress(src.getAddress()); - tgt.setType(convertAuditEventParticipantNetworkType(src.getType())); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent(); - copyElement(src, tgt); - tgt.setAddress(src.getAddress()); - tgt.setType(convertAuditEventParticipantNetworkType(src.getType())); - return tgt; - } - - public org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType convertAuditEventParticipantNetworkType(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _1: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._1; - case _2: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._2; - case _3: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._3; - case _4: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._4; - case _5: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._5; - default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType.NULL; - } - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType convertAuditEventParticipantNetworkType(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _1: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._1; - case _2: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._2; - case _3: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._3; - case _4: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._4; - case _5: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._5; - default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType.NULL; - } - } - - public org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent(); - copyElement(src, tgt); - tgt.setSite(src.getSite()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.instance.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent(); - copyElement(src, tgt); - tgt.setSite(src.getSite()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.r4.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent convertAuditEventEntityComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setReference(convertReference(src.getReference())); - tgt.setType(convertCoding(src.getType())); - tgt.setRole(convertCoding(src.getRole())); - tgt.setLifecycle(convertCoding(src.getLifecycle())); - for (org.hl7.fhir.instance.model.Coding t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCoding(t)); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setQuery(src.getQuery()); - for (org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent t : src.getDetail()) - tgt.addDetail(convertAuditEventEntityDetailComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent convertAuditEventEntityComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setReference(convertReference(src.getReference())); - tgt.setType(convertCoding(src.getType())); - tgt.setRole(convertCoding(src.getRole())); - tgt.setLifecycle(convertCoding(src.getLifecycle())); - for (org.hl7.fhir.r4.model.Coding t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCoding(t)); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setQuery(src.getQuery()); - for (org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent t : src.getDetail()) - tgt.addDetail(convertAuditEventEntityDetailComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.r4.model.Basic convertBasic(org.hl7.fhir.instance.model.Basic src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Basic tgt = new org.hl7.fhir.r4.model.Basic(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setCreated(src.getCreated()); - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public org.hl7.fhir.instance.model.Basic convertBasic(org.hl7.fhir.r4.model.Basic src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Basic tgt = new org.hl7.fhir.instance.model.Basic(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setCreated(src.getCreated()); - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public org.hl7.fhir.r4.model.Binary convertBinary(org.hl7.fhir.instance.model.Binary src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Binary tgt = new org.hl7.fhir.r4.model.Binary(); - copyResource(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setContent(src.getContent()); - return tgt; - } - - public org.hl7.fhir.instance.model.Binary convertBinary(org.hl7.fhir.r4.model.Binary src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Binary tgt = new org.hl7.fhir.instance.model.Binary(); - copyResource(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setContent(src.getContent()); - return tgt; - } - - public org.hl7.fhir.r4.model.Bundle convertBundle(org.hl7.fhir.instance.model.Bundle src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle tgt = new org.hl7.fhir.r4.model.Bundle(); - copyResource(src, tgt); - tgt.setType(convertBundleType(src.getType())); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - for (org.hl7.fhir.instance.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - for (org.hl7.fhir.instance.model.Bundle.BundleEntryComponent t : src.getEntry()) - tgt.addEntry(convertBundleEntryComponent(t)); - tgt.setSignature(convertSignature(src.getSignature())); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle convertBundle(org.hl7.fhir.r4.model.Bundle src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Bundle tgt = new org.hl7.fhir.instance.model.Bundle(); - copyResource(src, tgt); - tgt.setType(convertBundleType(src.getType())); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - for (org.hl7.fhir.r4.model.Bundle.BundleEntryComponent t : src.getEntry()) - tgt.addEntry(convertBundleEntryComponent(t)); - if (src.hasSignature()) - tgt.setSignature(convertSignature(src.getSignature())); - return tgt; - } - - public org.hl7.fhir.r4.model.Bundle.BundleType convertBundleType(org.hl7.fhir.instance.model.Bundle.BundleType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENT: return org.hl7.fhir.r4.model.Bundle.BundleType.DOCUMENT; - case MESSAGE: return org.hl7.fhir.r4.model.Bundle.BundleType.MESSAGE; - case TRANSACTION: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTION; - case TRANSACTIONRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTIONRESPONSE; - case BATCH: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCH; - case BATCHRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCHRESPONSE; - case HISTORY: return org.hl7.fhir.r4.model.Bundle.BundleType.HISTORY; - case SEARCHSET: return org.hl7.fhir.r4.model.Bundle.BundleType.SEARCHSET; - case COLLECTION: return org.hl7.fhir.r4.model.Bundle.BundleType.COLLECTION; - default: return org.hl7.fhir.r4.model.Bundle.BundleType.NULL; - } - } - - public org.hl7.fhir.instance.model.Bundle.BundleType convertBundleType(org.hl7.fhir.r4.model.Bundle.BundleType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENT: return org.hl7.fhir.instance.model.Bundle.BundleType.DOCUMENT; - case MESSAGE: return org.hl7.fhir.instance.model.Bundle.BundleType.MESSAGE; - case TRANSACTION: return org.hl7.fhir.instance.model.Bundle.BundleType.TRANSACTION; - case TRANSACTIONRESPONSE: return org.hl7.fhir.instance.model.Bundle.BundleType.TRANSACTIONRESPONSE; - case BATCH: return org.hl7.fhir.instance.model.Bundle.BundleType.BATCH; - case BATCHRESPONSE: return org.hl7.fhir.instance.model.Bundle.BundleType.BATCHRESPONSE; - case HISTORY: return org.hl7.fhir.instance.model.Bundle.BundleType.HISTORY; - case SEARCHSET: return org.hl7.fhir.instance.model.Bundle.BundleType.SEARCHSET; - case COLLECTION: return org.hl7.fhir.instance.model.Bundle.BundleType.COLLECTION; - default: return org.hl7.fhir.instance.model.Bundle.BundleType.NULL; - } - } - - public org.hl7.fhir.r4.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.instance.model.Bundle.BundleLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleLinkComponent(); - copyElement(src, tgt); - tgt.setRelation(src.getRelation()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.r4.model.Bundle.BundleLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleLinkComponent(); - copyElement(src, tgt); - tgt.setRelation(src.getRelation()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.r4.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - tgt.setFullUrl(src.getFullUrl()); - tgt.setResource(convertResource(src.getResource())); - tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); - tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); - tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (advisor.ignoreEntry(src)) - return null; - - org.hl7.fhir.instance.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - tgt.setFullUrl(src.getFullUrl()); - org.hl7.fhir.instance.model.Resource res = advisor.convertR2(src.getResource()); - if (res == null) - res = convertResource(src.getResource()); - tgt.setResource(res); - if (src.hasSearch()) - tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); - if (src.hasRequest()) - tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); - return tgt; - } - - public org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent(); - copyElement(src, tgt); - tgt.setMode(convertSearchEntryMode(src.getMode())); - tgt.setScore(src.getScore()); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent(); - copyElement(src, tgt); - tgt.setMode(convertSearchEntryMode(src.getMode())); - tgt.setScore(src.getScore()); - return tgt; - } - - public org.hl7.fhir.r4.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.instance.model.Bundle.SearchEntryMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MATCH: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.MATCH; - case INCLUDE: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.INCLUDE; - case OUTCOME: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.OUTCOME; - default: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.r4.model.Bundle.SearchEntryMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MATCH: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.MATCH; - case INCLUDE: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.INCLUDE; - case OUTCOME: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.OUTCOME; - default: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.NULL; - } - } - - public org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent(); - copyElement(src, tgt); - tgt.setMethod(convertHTTPVerb(src.getMethod())); - tgt.setUrl(src.getUrl()); - tgt.setIfNoneMatch(src.getIfNoneMatch()); - tgt.setIfModifiedSince(src.getIfModifiedSince()); - tgt.setIfMatch(src.getIfMatch()); - tgt.setIfNoneExist(src.getIfNoneExist()); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent(); - copyElement(src, tgt); - tgt.setMethod(convertHTTPVerb(src.getMethod())); - tgt.setUrl(src.getUrl()); - tgt.setIfNoneMatch(src.getIfNoneMatch()); - tgt.setIfModifiedSince(src.getIfModifiedSince()); - tgt.setIfMatch(src.getIfMatch()); - tgt.setIfNoneExist(src.getIfNoneExist()); - return tgt; - } - - public org.hl7.fhir.r4.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.instance.model.Bundle.HTTPVerb src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GET: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.GET; - case POST: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.POST; - case PUT: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.PUT; - case DELETE: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.DELETE; - default: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.NULL; - } - } - - public org.hl7.fhir.instance.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.r4.model.Bundle.HTTPVerb src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GET: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.GET; - case POST: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.POST; - case PUT: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.PUT; - case DELETE: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.DELETE; - default: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.NULL; - } - } - - public org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent(); - copyElement(src, tgt); - tgt.setStatus(src.getStatus()); - tgt.setLocation(src.getLocation()); - tgt.setEtag(src.getEtag()); - tgt.setLastModified(src.getLastModified()); - return tgt; - } - - public org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent(); - copyElement(src, tgt); - tgt.setStatus(src.getStatus()); - tgt.setLocation(src.getLocation()); - tgt.setEtag(src.getEtag()); - tgt.setLastModified(src.getLastModified()); - return tgt; - } - - public org.hl7.fhir.r4.model.CarePlan convertCarePlan(org.hl7.fhir.instance.model.CarePlan src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CarePlan tgt = new org.hl7.fhir.r4.model.CarePlan(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setStatus(convertCarePlanStatus(src.getStatus())); - tgt.setContext(convertReference(src.getContext())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); -// tgt.setModified(src.getModified()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.Reference t : src.getAddresses()) - tgt.addAddresses(convertReference(t)); -// for (org.hl7.fhir.instance.model.Reference t : src.getSupport()) -// tgt.addSupport(convertReference(t)); -// for (org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent t : src.getRelatedPlan()) -// tgt.addRelatedPlan(convertCarePlanRelatedPlanComponent(t)); -// for (org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent t : src.getParticipant()) -// tgt.addParticipant(convertCarePlanParticipantComponent(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - for (org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) - tgt.addActivity(convertCarePlanActivityComponent(t)); -// tgt.setNote(convertAnnotation(src.getNote())); - return tgt; - } - - public org.hl7.fhir.instance.model.CarePlan convertCarePlan(org.hl7.fhir.r4.model.CarePlan src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CarePlan tgt = new org.hl7.fhir.instance.model.CarePlan(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setStatus(convertCarePlanStatus(src.getStatus())); - tgt.setContext(convertReference(src.getContext())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); -// tgt.setModified(src.getModified()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.Reference t : src.getAddresses()) - tgt.addAddresses(convertReference(t)); -// for (org.hl7.fhir.r4.model.Reference t : src.getSupport()) -// tgt.addSupport(convertReference(t)); -// for (org.hl7.fhir.r4.model.CarePlan.CarePlanRelatedPlanComponent t : src.getRelatedPlan()) -// tgt.addRelatedPlan(convertCarePlanRelatedPlanComponent(t)); -// for (org.hl7.fhir.r4.model.CarePlan.CarePlanParticipantComponent t : src.getParticipant()) -// tgt.addParticipant(convertCarePlanParticipantComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - for (org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) - tgt.addActivity(convertCarePlanActivityComponent(t)); -// tgt.setNote(convertAnnotation(src.getNote())); - return tgt; - } - - public org.hl7.fhir.r4.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.instance.model.CarePlan.CarePlanStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.DRAFT; - case DRAFT: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.CANCELLED; - default: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.r4.model.CarePlan.CarePlanStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { -// case PROPOSED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.PROPOSED; - case DRAFT: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.CANCELLED; - default: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.NULL; - } - } - -// public org.hl7.fhir.r4.model.CarePlan.CarePlanRelatedPlanComponent convertCarePlanRelatedPlanComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.CarePlan.CarePlanRelatedPlanComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanRelatedPlanComponent(); -// copyElement(src, tgt); -// tgt.setCode(convertCarePlanRelationship(src.getCode())); -// tgt.setPlan(convertReference(src.getPlan())); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent convertCarePlanRelatedPlanComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanRelatedPlanComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent(); -// copyElement(src, tgt); -// tgt.setCode(convertCarePlanRelationship(src.getCode())); -// tgt.setPlan(convertReference(src.getPlan())); -// return tgt; -// } - -// public org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship convertCarePlanRelationship(org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case INCLUDES: return org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship.INCLUDES; -// case REPLACES: return org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship.REPLACES; -// case FULFILLS: return org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship.FULFILLS; -// default: return org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship.NULL; -// } -// } - -// public org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship convertCarePlanRelationship(org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case INCLUDES: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.INCLUDES; -// case REPLACES: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.REPLACES; -// case FULFILLS: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.FULFILLS; -// default: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.NULL; -// } -// } - -// public org.hl7.fhir.r4.model.CarePlan.CarePlanParticipantComponent convertCarePlanParticipantComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.CarePlan.CarePlanParticipantComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanParticipantComponent(); -// copyElement(src, tgt); -// tgt.setRole(convertCodeableConcept(src.getRole())); -// tgt.setMember(convertReference(src.getMember())); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent convertCarePlanParticipantComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanParticipantComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent(); -// copyElement(src, tgt); -// tgt.setRole(convertCodeableConcept(src.getRole())); -// tgt.setMember(convertReference(src.getMember())); -// return tgt; -// } -// - public org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent(); - copyElement(src, tgt); -// for (org.hl7.fhir.instance.model.Reference t : src.getActionResulting()) -// tgt.addActionResulting(convertReference(t)); - for (org.hl7.fhir.instance.model.Annotation t : src.getProgress()) - tgt.addProgress(convertAnnotation(t)); - tgt.setReference(convertReference(src.getReference())); - tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); - return tgt; - } - - public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent(); - copyElement(src, tgt); -// for (org.hl7.fhir.r4.model.Reference t : src.getActionResulting()) -// tgt.addActionResulting(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getProgress()) - tgt.addProgress(convertAnnotation(t)); - tgt.setReference(convertReference(src.getReference())); - tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); - return tgt; - } - - public org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent(); - copyElement(src, tgt); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); -// tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); - tgt.setProhibited(src.getProhibited()); - tgt.setScheduled(convertType(src.getScheduled())); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.instance.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - tgt.setProduct(convertType(src.getProduct())); - tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent(); - copyElement(src, tgt); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); -// tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); - tgt.setProhibited(src.getProhibited()); - tgt.setScheduled(convertType(src.getScheduled())); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - tgt.setProduct(convertType(src.getProduct())); - tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSTARTED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; - case SCHEDULED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.SCHEDULED; - case INPROGRESS: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.CANCELLED; - default: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSTARTED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; - case SCHEDULED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.SCHEDULED; - case INPROGRESS: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.CANCELLED; - default: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.instance.model.ClinicalImpression src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ClinicalImpression tgt = new org.hl7.fhir.r4.model.ClinicalImpression(); - copyDomainResource(src, tgt); - tgt.setSubject(convertReference(src.getPatient())); - tgt.setAssessor(convertReference(src.getAssessor())); - tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - tgt.setPrevious(convertReference(src.getPrevious())); - for (org.hl7.fhir.instance.model.Reference t : src.getProblem()) - tgt.addProblem(convertReference(t)); -// for (org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent t : src.getInvestigations()) -// tgt.addInvestigations(convertClinicalImpressionInvestigationsComponent(t)); - tgt.addProtocol(src.getProtocol()); - tgt.setSummary(src.getSummary()); - for (org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) - tgt.addFinding(convertClinicalImpressionFindingComponent(t)); - if (src.hasPrognosis()) - tgt.addPrognosisCodeableConcept ().setText(src.getPrognosis()); -// for (org.hl7.fhir.instance.model.Reference t : src.getPlan()) -// tgt.addPlan(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getAction()) - tgt.addAction(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.r4.model.ClinicalImpression src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ClinicalImpression tgt = new org.hl7.fhir.instance.model.ClinicalImpression(); - copyDomainResource(src, tgt); - tgt.setPatient(convertReference(src.getSubject())); - tgt.setAssessor(convertReference(src.getAssessor())); - tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - tgt.setPrevious(convertReference(src.getPrevious())); - for (org.hl7.fhir.r4.model.Reference t : src.getProblem()) - tgt.addProblem(convertReference(t)); -// for (org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent t : src.getInvestigations()) -// tgt.addInvestigations(convertClinicalImpressionInvestigationsComponent(t)); - for (UriType t : src.getProtocol()) - tgt.setProtocol(t.asStringValue()); - tgt.setSummary(src.getSummary()); - for (org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) - tgt.addFinding(convertClinicalImpressionFindingComponent(t)); - tgt.setPrognosis(src.getPrognosisCodeableConceptFirstRep().getText()); -// for (org.hl7.fhir.r4.model.Reference t : src.getPlan()) -// tgt.addPlan(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getAction()) - tgt.addAction(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.DRAFT; - case COMPLETED: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.NULL; - } - } - -// public org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent convertClinicalImpressionInvestigationsComponent(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent tgt = new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent(); -// copyElement(src, tgt); -// tgt.setCode(convertCodeableConcept(src.getCode())); -// for (org.hl7.fhir.instance.model.Reference t : src.getItem()) -// tgt.addItem(convertReference(t)); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent convertClinicalImpressionInvestigationsComponent(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent tgt = new org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent(); -// copyElement(src, tgt); -// tgt.setCode(convertCodeableConcept(src.getCode())); -// for (org.hl7.fhir.r4.model.Reference t : src.getItem()) -// tgt.addItem(convertReference(t)); -// return tgt; -// } - - public org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent(); - copyElement(src, tgt); - tgt.setItem(convertCodeableConcept(src.getItem())); -// tgt.setCause(src.getCause()); - return tgt; - } - - public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent(); - copyElement(src, tgt); - if (src.hasItemCodeableConcept()) - try { - tgt.setItem(convertCodeableConcept(src.getItemCodeableConcept())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - } -// tgt.setCause(src.getCause()); - return tgt; - } - - public org.hl7.fhir.r4.model.Communication convertCommunication(org.hl7.fhir.instance.model.Communication src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Communication tgt = new org.hl7.fhir.r4.model.Communication(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.addCategory(convertCodeableConcept(src.getCategory())); - tgt.setSender(convertReference(src.getSender())); - for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationPayloadComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - tgt.setStatus(convertCommunicationStatus(src.getStatus())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setSent(src.getSent()); - tgt.setReceived(src.getReceived()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - tgt.addReasonCode(convertCodeableConcept(t)); - tgt.setSubject(convertReference(src.getSubject())); - return tgt; - } - - public org.hl7.fhir.instance.model.Communication convertCommunication(org.hl7.fhir.r4.model.Communication src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Communication tgt = new org.hl7.fhir.instance.model.Communication(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); - tgt.setSender(convertReference(src.getSender())); - for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationPayloadComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - tgt.setStatus(convertCommunicationStatus(src.getStatus())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setSent(src.getSent()); - tgt.setReceived(src.getReceived()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReason(convertCodeableConcept(t)); - tgt.setSubject(convertReference(src.getSubject())); - return tgt; - } - - public org.hl7.fhir.r4.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.instance.model.Communication.CommunicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.SUSPENDED; - case REJECTED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.ENTEREDINERROR; - case FAILED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.ABORTED; - default: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.r4.model.Communication.CommunicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.SUSPENDED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.REJECTED; - case ABORTED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.FAILED; - default: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.r4.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.instance.model.CommunicationRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CommunicationRequest tgt = new org.hl7.fhir.r4.model.CommunicationRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.addCategory(convertCodeableConcept(src.getCategory())); - tgt.setSender(convertReference(src.getSender())); - for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - tgt.getRequester().setAgent(convertReference(src.getRequester())); - tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setOccurrence(convertType(src.getScheduled())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - tgt.addReasonCode(convertCodeableConcept(t)); - tgt.setAuthoredOn(src.getRequestedOn()); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setPriority(convertPriorityCode(src.getPriority())); - return tgt; - } - - private org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority convertPriorityCode(org.hl7.fhir.instance.model.CodeableConcept priority) { - for (org.hl7.fhir.instance.model.Coding c : priority.getCoding()) { - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "routine".equals(c.getCode())) - return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.ROUTINE; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "urgent".equals(c.getCode())) - return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.URGENT; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "stat".equals(c.getCode())) - return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.STAT; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "asap".equals(c.getCode())) - return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.ASAP; - } - return null; - } - - public org.hl7.fhir.instance.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.r4.model.CommunicationRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CommunicationRequest tgt = new org.hl7.fhir.instance.model.CommunicationRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); - tgt.setSender(convertReference(src.getSender())); - for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - tgt.setRequester(convertReference(src.getRequester().getAgent())); - tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setScheduled(convertType(src.getOccurrence())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReason(convertCodeableConcept(t)); - tgt.setRequestedOn(src.getAuthoredOn()); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setPriority(convertPriorityCode(src.getPriority())); - return tgt; - } - - private org.hl7.fhir.instance.model.CodeableConcept convertPriorityCode(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority priority) { - org.hl7.fhir.instance.model.CodeableConcept cc = new org.hl7.fhir.instance.model.CodeableConcept(); - switch (priority) { - case ROUTINE: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("routine"); break; - case URGENT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("urgent"); break; - case STAT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("stat"); break; - case ASAP: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("asap"); break; - default: return null; - } - return cc; - } - - public org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.DRAFT; - case PLANNED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case REQUESTED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case RECEIVED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case ACCEPTED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case INPROGRESS: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; - case REJECTED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ENTEREDINERROR; -// case FAILED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.FAILED; - default: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.PROPOSED; -// case PLANNED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.PLANNED; -// case REQUESTED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.REQUESTED; -// case RECEIVED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.RECEIVED; -// case ACCEPTED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.ACCEPTED; - case ACTIVE: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.REJECTED; -// case FAILED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.FAILED; - default: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.r4.model.Composition convertComposition(org.hl7.fhir.instance.model.Composition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Composition tgt = new org.hl7.fhir.r4.model.Composition(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setClass_(convertCodeableConcept(src.getClass_())); - tgt.setTitle(src.getTitle()); - tgt.setStatus(convertCompositionStatus(src.getStatus())); - try { - tgt.setConfidentiality(org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.fromCode(src.getConfidentiality())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - for (org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent t : src.getAttester()) - tgt.addAttester(convertCompositionAttesterComponent(t)); - tgt.setCustodian(convertReference(src.getCustodian())); - for (org.hl7.fhir.instance.model.Composition.CompositionEventComponent t : src.getEvent()) - tgt.addEvent(convertCompositionEventComponent(t)); - tgt.setEncounter(convertReference(src.getEncounter())); - for (org.hl7.fhir.instance.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Composition convertComposition(org.hl7.fhir.r4.model.Composition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Composition tgt = new org.hl7.fhir.instance.model.Composition(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setClass_(convertCodeableConcept(src.getClass_())); - tgt.setTitle(src.getTitle()); - tgt.setStatus(convertCompositionStatus(src.getStatus())); - tgt.setConfidentiality(src.getConfidentiality().toCode()); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - for (org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent t : src.getAttester()) - tgt.addAttester(convertCompositionAttesterComponent(t)); - tgt.setCustodian(convertReference(src.getCustodian())); - for (org.hl7.fhir.r4.model.Composition.CompositionEventComponent t : src.getEvent()) - tgt.addEvent(convertCompositionEventComponent(t)); - tgt.setEncounter(convertReference(src.getEncounter())); - for (org.hl7.fhir.r4.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.instance.model.Composition.CompositionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRELIMINARY: return org.hl7.fhir.r4.model.Composition.CompositionStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.r4.model.Composition.CompositionStatus.FINAL; - case AMENDED: return org.hl7.fhir.r4.model.Composition.CompositionStatus.AMENDED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Composition.CompositionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Composition.CompositionStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.r4.model.Composition.CompositionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRELIMINARY: return org.hl7.fhir.instance.model.Composition.CompositionStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.instance.model.Composition.CompositionStatus.FINAL; - case AMENDED: return org.hl7.fhir.instance.model.Composition.CompositionStatus.AMENDED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Composition.CompositionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.Composition.CompositionStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Enumeration t : src.getMode()) - tgt.addMode(convertCompositionAttestationMode(t.getValue())); - tgt.setTime(src.getTime()); - tgt.setParty(convertReference(src.getParty())); - return tgt; - } - - public org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Enumeration t : src.getMode()) - tgt.addMode(convertCompositionAttestationMode(t.getValue())); - tgt.setTime(src.getTime()); - tgt.setParty(convertReference(src.getParty())); - return tgt; - } - - public org.hl7.fhir.r4.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.instance.model.Composition.CompositionAttestationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSONAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.PERSONAL; - case PROFESSIONAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.PROFESSIONAL; - case LEGAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.LEGAL; - case OFFICIAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.OFFICIAL; - default: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.r4.model.Composition.CompositionAttestationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSONAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.PERSONAL; - case PROFESSIONAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.PROFESSIONAL; - case LEGAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.LEGAL; - case OFFICIAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.OFFICIAL; - default: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.NULL; - } - } - - public org.hl7.fhir.r4.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.instance.model.Composition.CompositionEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.r4.model.Composition.CompositionEventComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.instance.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.r4.model.Composition.CompositionEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.instance.model.Composition.CompositionEventComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.instance.model.Composition.SectionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Composition.SectionComponent tgt = new org.hl7.fhir.r4.model.Composition.SectionComponent(); - copyElement(src, tgt); - tgt.setTitle(src.getTitle()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setText(convertNarrative(src.getText())); - try { - tgt.setMode(org.hl7.fhir.r4.model.Composition.SectionMode.fromCode(src.getMode())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - for (org.hl7.fhir.instance.model.Reference t : src.getEntry()) - tgt.addEntry(convertReference(t)); - tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); - for (org.hl7.fhir.instance.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.r4.model.Composition.SectionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Composition.SectionComponent tgt = new org.hl7.fhir.instance.model.Composition.SectionComponent(); - copyElement(src, tgt); - tgt.setTitle(src.getTitle()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setText(convertNarrative(src.getText())); - tgt.setMode(src.getMode().toCode()); - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - for (org.hl7.fhir.r4.model.Reference t : src.getEntry()) - tgt.addEntry(convertReference(t)); - tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); - for (org.hl7.fhir.r4.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - private class SourceElementComponentWrapper { - public SourceElementComponentWrapper(SourceElementComponent comp, String source, String target) { - super(); - this.source = source; - this.target = target; - this.comp = comp; - } - private String source; - private String target; - private org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent comp; - - } - - public org.hl7.fhir.r4.model.ConceptMap convertConceptMap(org.hl7.fhir.instance.model.ConceptMap src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ConceptMap tgt = new org.hl7.fhir.r4.model.ConceptMap(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent t : src.getContact()) - tgt.addContact(convertConceptMapContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setPurpose(src.getRequirements()); - tgt.setCopyright(src.getCopyright()); - tgt.setSource(convertType(src.getSource())); - tgt.setTarget(convertType(src.getTarget())); - for (org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent t : src.getElement()) { - List ws = convertSourceElementComponent(t); - for (SourceElementComponentWrapper w : ws) - getGroup(tgt, w.source, w.target).addElement(w.comp); - } - return tgt; - } - - public org.hl7.fhir.r4.model.UsageContext convertCodeableConceptToUsageContext(org.hl7.fhir.instance.model.CodeableConcept t) throws FHIRException { - org.hl7.fhir.r4.model.UsageContext result = new org.hl7.fhir.r4.model.UsageContext(); - // todo: set type.. - result.setValue(convertCodeableConcept(t)); - return result; - } - - - private ConceptMapGroupComponent getGroup(ConceptMap map, String srcs, String tgts) { - for (ConceptMapGroupComponent grp : map.getGroup()) { - if (grp.getSource().equals(srcs) && grp.getTarget().equals(tgts)) - return grp; - } - ConceptMapGroupComponent grp = map.addGroup(); - grp.setSource(srcs); - grp.setTarget(tgts); - return grp; - } - - - public org.hl7.fhir.instance.model.ConceptMap convertConceptMap(org.hl7.fhir.r4.model.ConceptMap src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ConceptMap tgt = new org.hl7.fhir.instance.model.ConceptMap(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertConceptMapContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setRequirements(src.getPurpose()); - tgt.setCopyright(src.getCopyright()); - tgt.setSource(convertType(src.getSource())); - tgt.setTarget(convertType(src.getTarget())); - for (org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g : src.getGroup()) - for (org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent t : g.getElement()) - tgt.addElement(convertSourceElementComponent(t, g)); - return tgt; - } - - public org.hl7.fhir.r4.model.Enumerations.PublicationStatus convertConformanceResourceStatus(org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.RETIRED; - default: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus convertConformanceResourceStatus(org.hl7.fhir.r4.model.Enumerations.PublicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.RETIRED; - default: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.ContactDetail convertConceptMapContactComponent(org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent convertConceptMapContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public List convertSourceElementComponent(org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent src) throws FHIRException { - List res = new ArrayList(); - if (src == null || src.isEmpty()) - return res; - for (org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent t : src.getTarget()) { - org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.addTarget(convertTargetElementComponent(t)); - res.add(new SourceElementComponentWrapper(tgt, src.getCodeSystem(), t.getCodeSystem())); - } - return res; - } - - public org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent src, org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent(); - copyElement(src, tgt); - tgt.setCodeSystem(g.getSource()); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent t : src.getTarget()) - tgt.addTarget(convertTargetElementComponent(t, g)); - return tgt; - } - - public org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); - tgt.setComment(src.getComments()); - for (org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) - tgt.addDependsOn(convertOtherElementComponent(t)); - for (org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent t : src.getProduct()) - tgt.addProduct(convertOtherElementComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent src, org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent(); - copyElement(src, tgt); - tgt.setCodeSystem(g.getTarget()); - tgt.setCode(src.getCode()); - tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); - tgt.setComments(src.getComment()); - for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) - tgt.addDependsOn(convertOtherElementComponent(t)); - for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getProduct()) - tgt.addProduct(convertOtherElementComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUIVALENT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; - case EQUAL: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUAL; - case WIDER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.WIDER; - case SUBSUMES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SUBSUMES; - case NARROWER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NARROWER; - case SPECIALIZES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; - case INEXACT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.INEXACT; - case UNMATCHED: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.UNMATCHED; - case DISJOINT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.DISJOINT; - default: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUIVALENT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; - case EQUAL: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.EQUAL; - case WIDER: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.WIDER; - case SUBSUMES: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.SUBSUMES; - case NARROWER: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.NARROWER; - case SPECIALIZES: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; - case INEXACT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.INEXACT; - case UNMATCHED: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.UNMATCHED; - case DISJOINT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.DISJOINT; - default: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.NULL; - } - } - - public org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getElement()); - tgt.setSystem(src.getCodeSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent(); - copyElement(src, tgt); - tgt.setElement(src.getProperty()); - tgt.setCodeSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public org.hl7.fhir.r4.model.Condition convertCondition(org.hl7.fhir.instance.model.Condition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Condition tgt = new org.hl7.fhir.r4.model.Condition(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getPatient())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setAsserter(convertReference(src.getAsserter())); - if (src.hasDateRecorded()) - tgt.setAssertedDate(src.getDateRecorded()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.addCategory(convertCodeableConcept(src.getCategory())); - try { - tgt.setClinicalStatus(org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.fromCode(src.getClinicalStatus())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); - tgt.setSeverity(convertCodeableConcept(src.getSeverity())); - tgt.setOnset(convertType(src.getOnset())); - tgt.setAbatement(convertType(src.getAbatement())); - tgt.addStage(convertConditionStageComponent(src.getStage())); - for (org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) - tgt.addEvidence(convertConditionEvidenceComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); -// tgt.setNotes(src.getNotes()); - return tgt; - } - - public org.hl7.fhir.instance.model.Condition convertCondition(org.hl7.fhir.r4.model.Condition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Condition tgt = new org.hl7.fhir.instance.model.Condition(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setAsserter(convertReference(src.getAsserter())); - if (src.hasAssertedDate()) - tgt.setDateRecorded(src.getAssertedDate()); - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.setCategory(convertCodeableConcept(t)); - tgt.setClinicalStatus(src.getClinicalStatus().toCode()); - tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); - tgt.setSeverity(convertCodeableConcept(src.getSeverity())); - tgt.setOnset(convertType(src.getOnset())); - tgt.setAbatement(convertType(src.getAbatement())); - tgt.setStage(convertConditionStageComponent(src.getStageFirstRep())); - for (org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) - tgt.addEvidence(convertConditionEvidenceComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); -// tgt.setNotes(src.getNotes()); - return tgt; - } - - public org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROVISIONAL: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.PROVISIONAL; - case DIFFERENTIAL: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; - case CONFIRMED: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.CONFIRMED; - case REFUTED: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.REFUTED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROVISIONAL: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.PROVISIONAL; - case DIFFERENTIAL: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; - case CONFIRMED: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.CONFIRMED; - case REFUTED: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.REFUTED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.UNKNOWN; - default: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.instance.model.Condition.ConditionStageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.r4.model.Condition.ConditionStageComponent(); - copyElement(src, tgt); - tgt.setSummary(convertCodeableConcept(src.getSummary())); - for (org.hl7.fhir.instance.model.Reference t : src.getAssessment()) - tgt.addAssessment(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.r4.model.Condition.ConditionStageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.instance.model.Condition.ConditionStageComponent(); - copyElement(src, tgt); - tgt.setSummary(convertCodeableConcept(src.getSummary())); - for (org.hl7.fhir.r4.model.Reference t : src.getAssessment()) - tgt.addAssessment(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent(); - copyElement(src, tgt); - tgt.addCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.instance.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept cc : src.getCode()) - tgt.setCode(convertCodeableConcept(cc)); - for (org.hl7.fhir.r4.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement convertConformance(org.hl7.fhir.instance.model.Conformance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement tgt = new org.hl7.fhir.r4.model.CapabilityStatement(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent t : src.getContact()) - tgt.addContact(convertConformanceContactComponent(t)); - tgt.setDescription(src.getDescription()); - tgt.setPurpose(src.getRequirements()); - tgt.setCopyright(src.getCopyright()); - tgt.setKind(convertConformanceStatementKind(src.getKind())); - tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); - tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); - tgt.setFhirVersion(src.getFhirVersion()); - tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); - for (org.hl7.fhir.instance.model.CodeType t : src.getFormat()) - tgt.addFormat(t.getValue()); - for (org.hl7.fhir.instance.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent t : src.getRest()) - tgt.addRest(convertConformanceRestComponent(t)); - for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent t : src.getMessaging()) - tgt.addMessaging(convertConformanceMessagingComponent(t)); - for (org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent t : src.getDocument()) - tgt.addDocument(convertConformanceDocumentComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance convertConformance(org.hl7.fhir.r4.model.CapabilityStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance tgt = new org.hl7.fhir.instance.model.Conformance(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertConformanceContactComponent(t)); - tgt.setDescription(src.getDescription()); - tgt.setRequirements(src.getPurpose()); - tgt.setCopyright(src.getCopyright()); - tgt.setKind(convertConformanceStatementKind(src.getKind())); - tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); - if (src.hasImplementation()) - tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); - tgt.setFhirVersion(src.getFhirVersion()); - tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); - for (org.hl7.fhir.r4.model.CodeType t : src.getFormat()) - tgt.addFormat(t.getValue()); - for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) - tgt.addRest(convertConformanceRestComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) - tgt.addMessaging(convertConformanceMessagingComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) - tgt.addDocument(convertConformanceDocumentComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind convertConformanceStatementKind(org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; - case CAPABILITY: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; - case REQUIREMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; - default: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind convertConformanceStatementKind(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.INSTANCE; - case CAPABILITY: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.CAPABILITY; - case REQUIREMENTS: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.REQUIREMENTS; - default: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.NULL; - } - } - - public org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.instance.model.Conformance.UnknownContentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NO: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NO; - case EXTENSIONS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; - case ELEMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.ELEMENTS; - case BOTH: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.BOTH; - default: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NO: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.NO; - case EXTENSIONS: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.EXTENSIONS; - case ELEMENTS: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.ELEMENTS; - case BOTH: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.BOTH; - default: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.NULL; - } - } - - public org.hl7.fhir.r4.model.ContactDetail convertConformanceContactComponent(org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent convertConformanceContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setVersion(src.getVersion()); - tgt.setReleaseDate(src.getReleaseDate()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setVersion(src.getVersion()); - tgt.setReleaseDate(src.getReleaseDate()); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent convertConformanceRestComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent(); - copyElement(src, tgt); - tgt.setMode(convertRestfulConformanceMode(src.getMode())); - tgt.setDocumentation(src.getDocumentation()); - tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent t : src.getResource()) - tgt.addResource(convertConformanceRestResourceComponent(t)); - for (org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertSystemInteractionComponent(t)); - if (src.getTransactionMode() == org.hl7.fhir.instance.model.Conformance.TransactionMode.BATCH || src.getTransactionMode() == org.hl7.fhir.instance.model.Conformance.TransactionMode.BOTH) - tgt.addInteraction().setCode(SystemRestfulInteraction.BATCH); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent t : src.getOperation()) - tgt.addOperation(convertConformanceRestOperationComponent(t)); - for (org.hl7.fhir.instance.model.UriType t : src.getCompartment()) - tgt.addCompartment(t.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent convertConformanceRestComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent(); - copyElement(src, tgt); - tgt.setMode(convertRestfulConformanceMode(src.getMode())); - tgt.setDocumentation(src.getDocumentation()); - tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) - tgt.addResource(convertConformanceRestResourceComponent(t)); - boolean batch = false; - boolean transaction = false; - for (org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) { - if (t.getCode().equals(SystemRestfulInteraction.BATCH)) - batch = true; - else - tgt.addInteraction(convertSystemInteractionComponent(t)); - if (t.getCode().equals(SystemRestfulInteraction.TRANSACTION)) - transaction = true; - } - if (batch) - tgt.setTransactionMode(transaction ? org.hl7.fhir.instance.model.Conformance.TransactionMode.BOTH : org.hl7.fhir.instance.model.Conformance.TransactionMode.BATCH); - else - tgt.setTransactionMode(transaction ? org.hl7.fhir.instance.model.Conformance.TransactionMode.TRANSACTION : org.hl7.fhir.instance.model.Conformance.TransactionMode.NOTSUPPORTED); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) - tgt.addOperation(convertConformanceRestOperationComponent(t)); - for (org.hl7.fhir.r4.model.UriType t : src.getCompartment()) - tgt.addCompartment(t.getValue()); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode convertRestfulConformanceMode(org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLIENT: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; - case SERVER: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.SERVER; - default: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode convertRestfulConformanceMode(org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLIENT: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.CLIENT; - case SERVER: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.SERVER; - default: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.NULL; - } - } - - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); - copyElement(src, tgt); - tgt.setCors(src.getCors()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getService()) - tgt.addService(convertCodeableConcept(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent t : src.getCertificate()) - tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent(); - copyElement(src, tgt); - tgt.setCors(src.getCors()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getService()) - tgt.addService(convertCodeableConcept(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) - tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setBlob(src.getBlob()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setBlob(src.getBlob()); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - for (org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertResourceInteractionComponent(t)); - tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); - tgt.setReadHistory(src.getReadHistory()); - tgt.setUpdateCreate(src.getUpdateCreate()); - tgt.setConditionalCreate(src.getConditionalCreate()); - tgt.setConditionalUpdate(src.getConditionalUpdate()); - tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); - for (org.hl7.fhir.instance.model.StringType t : src.getSearchInclude()) - tgt.addSearchInclude(t.getValue()); - for (org.hl7.fhir.instance.model.StringType t : src.getSearchRevInclude()) - tgt.addSearchRevInclude(t.getValue()); - for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - for (org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertResourceInteractionComponent(t)); - tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); - tgt.setReadHistory(src.getReadHistory()); - tgt.setUpdateCreate(src.getUpdateCreate()); - tgt.setConditionalCreate(src.getConditionalCreate()); - tgt.setConditionalUpdate(src.getConditionalUpdate()); - tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); - for (org.hl7.fhir.r4.model.StringType t : src.getSearchInclude()) - tgt.addSearchInclude(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getSearchRevInclude()) - tgt.addSearchRevInclude(t.getValue()); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOVERSION: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; - case VERSIONED: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; - case VERSIONEDUPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; - default: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOVERSION: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.NOVERSION; - case VERSIONED: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.VERSIONED; - case VERSIONEDUPDATE: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.VERSIONEDUPDATE; - default: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.NULL; - } - } - - public org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; - case SINGLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; - case MULTIPLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; - default: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.NOTSUPPORTED; - case SINGLE: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.SINGLE; - case MULTIPLE: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.MULTIPLE; - default: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertTypeRestfulInteraction(src.getCode())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent tgt = new org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertTypeRestfulInteraction(src.getCode())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case READ: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.READ; - case VREAD: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.VREAD; - case UPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; - case DELETE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.DELETE; - case HISTORYINSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; - case HISTORYTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; - case CREATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.CREATE; - case SEARCHTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; - default: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case READ: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.READ; - case VREAD: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.VREAD; - case UPDATE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.UPDATE; - case DELETE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.DELETE; - case HISTORYINSTANCE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.HISTORYINSTANCE; - case HISTORYTYPE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.HISTORYTYPE; - case CREATE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.CREATE; - case SEARCHTYPE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.SEARCHTYPE; - default: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.NULL; - } - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(src.getDefinition()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(src.getDefinition()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertSystemRestfulInteraction(src.getCode())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent tgt = new org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertSystemRestfulInteraction(src.getCode())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TRANSACTION: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; - case SEARCHSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; - case HISTORYSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; - default: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TRANSACTION: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.TRANSACTION; - case SEARCHSYSTEM: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.SEARCHSYSTEM; - case HISTORYSYSTEM: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.HISTORYSYSTEM; - default: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.NULL; - } - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent t : src.getEndpoint()) - tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); - tgt.setReliableCache(src.getReliableCache()); - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent t : src.getEvent()) - tgt.addEvent(convertConformanceMessagingEventComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) - tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); - tgt.setReliableCache(src.getReliableCache()); - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) - tgt.addEvent(convertConformanceMessagingEventComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); - copyElement(src, tgt); - tgt.setProtocol(convertCoding(src.getProtocol())); - tgt.setAddress(src.getAddress()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent(); - copyElement(src, tgt); - tgt.setProtocol(convertCoding(src.getProtocol())); - tgt.setAddress(src.getAddress()); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); - copyElement(src, tgt); - tgt.setCode(convertCoding(src.getCode())); - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - tgt.setMode(convertConformanceEventMode(src.getMode())); - tgt.setFocus(src.getFocus()); - tgt.setRequest(convertReference(src.getRequest())); - tgt.setResponse(convertReference(src.getResponse())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent(); - copyElement(src, tgt); - tgt.setCode(convertCoding(src.getCode())); - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - tgt.setMode(convertConformanceEventMode(src.getMode())); - tgt.setFocus(src.getFocus()); - tgt.setRequest(convertReference(src.getRequest())); - tgt.setResponse(convertReference(src.getResponse())); - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.NULL; - } - } - - public org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode convertConformanceEventMode(org.hl7.fhir.instance.model.Conformance.ConformanceEventMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SENDER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.SENDER; - case RECEIVER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.RECEIVER; - default: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceEventMode convertConformanceEventMode(org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SENDER: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.SENDER; - case RECEIVER: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.RECEIVER; - default: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.NULL; - } - } - - public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent(); - copyElement(src, tgt); - tgt.setMode(convertDocumentMode(src.getMode())); - tgt.setDocumentation(src.getDocumentation()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent(); - copyElement(src, tgt); - tgt.setMode(convertDocumentMode(src.getMode())); - tgt.setDocumentation(src.getDocumentation()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.instance.model.Conformance.DocumentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRODUCER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.PRODUCER; - case CONSUMER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.CONSUMER; - default: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Conformance.DocumentMode convertDocumentMode(org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRODUCER: return org.hl7.fhir.instance.model.Conformance.DocumentMode.PRODUCER; - case CONSUMER: return org.hl7.fhir.instance.model.Conformance.DocumentMode.CONSUMER; - default: return org.hl7.fhir.instance.model.Conformance.DocumentMode.NULL; - } - } - - public org.hl7.fhir.r4.model.Contract convertContract(org.hl7.fhir.instance.model.Contract src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Contract tgt = new org.hl7.fhir.r4.model.Contract(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setIssued(src.getIssued()); - tgt.setApplies(convertPeriod(src.getApplies())); - for (org.hl7.fhir.instance.model.Reference t : src.getSubject()) - tgt.addSubject(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthority()) - tgt.addAuthority(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getDomain()) - tgt.addDomain(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSubType()) - tgt.addSubType(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Contract.SignatoryComponent t : src.getSigner()) - tgt.addSigner(convertSignatoryComponent(t)); - for (org.hl7.fhir.instance.model.Contract.TermComponent t : src.getTerm()) - tgt.addTerm(convertTermComponent(t)); - for (org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) - tgt.addFriendly(convertFriendlyLanguageComponent(t)); - for (org.hl7.fhir.instance.model.Contract.LegalLanguageComponent t : src.getLegal()) - tgt.addLegal(convertLegalLanguageComponent(t)); - for (org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent t : src.getRule()) - tgt.setRule(convertComputableLanguageComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract convertContract(org.hl7.fhir.r4.model.Contract src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract tgt = new org.hl7.fhir.instance.model.Contract(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setIssued(src.getIssued()); - tgt.setApplies(convertPeriod(src.getApplies())); - for (org.hl7.fhir.r4.model.Reference t : src.getSubject()) - tgt.addSubject(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthority()) - tgt.addAuthority(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDomain()) - tgt.addDomain(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubType()) - tgt.addSubType(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Contract.SignatoryComponent t : src.getSigner()) - tgt.addSigner(convertSignatoryComponent(t)); - for (org.hl7.fhir.r4.model.Contract.TermComponent t : src.getTerm()) - tgt.addTerm(convertTermComponent(t)); - for (org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) - tgt.addFriendly(convertFriendlyLanguageComponent(t)); - for (org.hl7.fhir.r4.model.Contract.LegalLanguageComponent t : src.getLegal()) - tgt.addLegal(convertLegalLanguageComponent(t)); - if (src.hasRule()) - tgt.addRule(convertComputableLanguageComponent(src.getRule())); - return tgt; - } - - public org.hl7.fhir.r4.model.Contract.AgentComponent convertAgentComponent(org.hl7.fhir.instance.model.Contract.ActorComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Contract.AgentComponent tgt = new org.hl7.fhir.r4.model.Contract.AgentComponent(); - copyElement(src, tgt); - tgt.setActor(convertReference(src.getEntity())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.ActorComponent convertAgentComponent(org.hl7.fhir.r4.model.Contract.AgentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.ActorComponent tgt = new org.hl7.fhir.instance.model.Contract.ActorComponent(); - copyElement(src, tgt); - tgt.setEntity(convertReference(src.getActor())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.instance.model.Contract.SignatoryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.r4.model.Contract.SignatoryComponent(); - copyElement(src, tgt); - tgt.setType(convertCoding(src.getType())); - tgt.setParty(convertReference(src.getParty())); - if (src.hasSignature()) - tgt.addSignature(new org.hl7.fhir.r4.model.Signature().setBlob(src.getSignature().getBytes())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.r4.model.Contract.SignatoryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.instance.model.Contract.SignatoryComponent(); - copyElement(src, tgt); - tgt.setType(convertCoding(src.getType())); - tgt.setParty(convertReference(src.getParty())); - for (org.hl7.fhir.r4.model.Signature t : src.getSignature()) - tgt.setSignature(Base64.encodeBase64String(t.getBlob())); - return tgt; - } - - public org.hl7.fhir.r4.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.instance.model.Contract.ValuedItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.r4.model.Contract.ValuedItemComponent(); - copyElement(src, tgt); - tgt.setEntity(convertType(src.getEntity())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setEffectiveTime(src.getEffectiveTime()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - tgt.setFactor(src.getFactor()); - tgt.setPoints(src.getPoints()); - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.r4.model.Contract.ValuedItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.instance.model.Contract.ValuedItemComponent(); - copyElement(src, tgt); - tgt.setEntity(convertType(src.getEntity())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setEffectiveTime(src.getEffectiveTime()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - tgt.setFactor(src.getFactor()); - tgt.setPoints(src.getPoints()); - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public org.hl7.fhir.r4.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.instance.model.Contract.TermComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Contract.TermComponent tgt = new org.hl7.fhir.r4.model.Contract.TermComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setIssued(src.getIssued()); - tgt.setApplies(convertPeriod(src.getApplies())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setSubType(convertCodeableConcept(src.getSubType())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getAction()) - tgt.addAction(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getActionReason()) - tgt.addActionReason(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Contract.TermActorComponent t : src.getActor()) - tgt.addAgent(convertTermAgentComponent(t)); - for (org.hl7.fhir.instance.model.Contract.TermComponent t : src.getGroup()) - tgt.addGroup(convertTermComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.r4.model.Contract.TermComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.TermComponent tgt = new org.hl7.fhir.instance.model.Contract.TermComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setIssued(src.getIssued()); - tgt.setApplies(convertPeriod(src.getApplies())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setSubType(convertCodeableConcept(src.getSubType())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAction()) - tgt.addAction(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getActionReason()) - tgt.addActionReason(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Contract.AgentComponent t : src.getAgent()) - tgt.addActor(convertTermAgentComponent(t)); - for (org.hl7.fhir.r4.model.Contract.TermComponent t : src.getGroup()) - tgt.addGroup(convertTermComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Contract.AgentComponent convertTermAgentComponent(org.hl7.fhir.instance.model.Contract.TermActorComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Contract.AgentComponent tgt = new org.hl7.fhir.r4.model.Contract.AgentComponent(); - copyElement(src, tgt); - tgt.setActor(convertReference(src.getEntity())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.TermActorComponent convertTermAgentComponent(org.hl7.fhir.r4.model.Contract.AgentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.TermActorComponent tgt = new org.hl7.fhir.instance.model.Contract.TermActorComponent(); - copyElement(src, tgt); - tgt.setEntity(convertReference(src.getActor())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Contract.ValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.instance.model.Contract.TermValuedItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.r4.model.Contract.ValuedItemComponent(); - copyElement(src, tgt); - tgt.setEntity(convertType(src.getEntity())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setEffectiveTime(src.getEffectiveTime()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - tgt.setFactor(src.getFactor()); - tgt.setPoints(src.getPoints()); - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.TermValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.r4.model.Contract.ValuedItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.TermValuedItemComponent tgt = new org.hl7.fhir.instance.model.Contract.TermValuedItemComponent(); - copyElement(src, tgt); - tgt.setEntity(convertType(src.getEntity())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setEffectiveTime(src.getEffectiveTime()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - tgt.setFactor(src.getFactor()); - tgt.setPoints(src.getPoints()); - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.r4.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.instance.model.Contract.LegalLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.LegalLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.r4.model.Contract.LegalLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.LegalLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent(); - copyElement(src, tgt); - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - - public org.hl7.fhir.r4.model.StructureDefinition convertDataElement(org.hl7.fhir.instance.model.DataElement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl().replace("/DataElement/", "/StructureDefinition/de-")); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.DataElement.DataElementContactComponent t : src.getContact()) - tgt.addContact(convertDataElementContactComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setCopyright(src.getCopyright()); -// tgt.setStringency(convertDataElementStringency(src.getStringency())); - for (org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent t : src.getMapping()) - tgt.addMapping(convertDataElementMappingComponent(t)); - List slicePaths = new ArrayList(); - for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { - if (t.hasSlicing()) - slicePaths.add(t.getPath()); - tgt.getSnapshot().addElement(convertElementDefinition(t, slicePaths)); - } - tgt.setKind(StructureDefinitionKind.LOGICAL); - tgt.setAbstract(false); - tgt.setType(tgt.getName()); - tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/Element"); - tgt.setDerivation(TypeDerivationRule.SPECIALIZATION); - return tgt; - } - -// public org.hl7.fhir.instance.model.DataElement convertDataElement(org.hl7.fhir.r4.model.DataElement src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.DataElement tgt = new org.hl7.fhir.instance.model.DataElement(); -// copyDomainResource(src, tgt); -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) -// tgt.addIdentifier(convertIdentifier(t)); -// tgt.setVersion(src.getVersion()); -// tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); -// if (src.hasExperimental()) -// tgt.setExperimental(src.getExperimental()); -// tgt.setPublisher(src.getPublisher()); -// if (src.hasDate()) -// tgt.setDate(src.getDate()); -// tgt.setName(src.getName()); -// for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) -// tgt.addContact(convertDataElementContactComponent(t)); -// for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) -// if (t.hasValueCodeableConcept()) -// tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) -// tgt.addUseContext(convertCodeableConcept(t)); -// tgt.setCopyright(src.getCopyright()); -// tgt.setStringency(convertDataElementStringency(src.getStringency())); -// for (org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent t : src.getMapping()) -// tgt.addMapping(convertDataElementMappingComponent(t)); -// for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) -// tgt.addElement(convertElementDefinition(t)); -// return tgt; -// } - -// public org.hl7.fhir.r4.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.instance.model.DataElement.DataElementStringency src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case COMPARABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.COMPARABLE; -// case FULLYSPECIFIED: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FULLYSPECIFIED; -// case EQUIVALENT: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.EQUIVALENT; -// case CONVERTABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.CONVERTABLE; -// case SCALEABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.SCALEABLE; -// case FLEXIBLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FLEXIBLE; -// default: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.NULL; -// } -// } -// -// public org.hl7.fhir.instance.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.r4.model.DataElement.DataElementStringency src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case COMPARABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.COMPARABLE; -// case FULLYSPECIFIED: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.FULLYSPECIFIED; -// case EQUIVALENT: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.EQUIVALENT; -// case CONVERTABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.CONVERTABLE; -// case SCALEABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.SCALEABLE; -// case FLEXIBLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.FLEXIBLE; -// default: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.NULL; -// } -// } - - public org.hl7.fhir.r4.model.ContactDetail convertDataElementContactComponent(org.hl7.fhir.instance.model.DataElement.DataElementContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DataElement.DataElementContactComponent convertDataElementContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DataElement.DataElementContactComponent tgt = new org.hl7.fhir.instance.model.DataElement.DataElementContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertDataElementMappingComponent(org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setUri(src.getUri()); - tgt.setName(src.getName()); - tgt.setComment(src.getComments()); - return tgt; - } - -// public org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent(); -// copyElement(src, tgt); -// tgt.setIdentity(src.getIdentity()); -// tgt.setUri(src.getUri()); -// tgt.setName(src.getName()); -// tgt.setComments(src.getComment()); -// return tgt; -// } - - public org.hl7.fhir.r4.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.instance.model.DetectedIssue src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DetectedIssue tgt = new org.hl7.fhir.r4.model.DetectedIssue(); - copyDomainResource(src, tgt); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); - for (org.hl7.fhir.instance.model.Reference t : src.getImplicated()) - tgt.addImplicated(convertReference(t)); - tgt.setDetail(src.getDetail()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setReference(src.getReference()); - for (org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) - tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.r4.model.DetectedIssue src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DetectedIssue tgt = new org.hl7.fhir.instance.model.DetectedIssue(); - copyDomainResource(src, tgt); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); - for (org.hl7.fhir.r4.model.Reference t : src.getImplicated()) - tgt.addImplicated(convertReference(t)); - tgt.setDetail(src.getDetail()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setReference(src.getReference()); - for (org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) - tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HIGH: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.HIGH; - case MODERATE: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.MODERATE; - case LOW: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.LOW; - default: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.NULL; - } - } - - public org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HIGH: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.HIGH; - case MODERATE: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.MODERATE; - case LOW: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.LOW; - default: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.NULL; - } - } - - public org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent(); - copyElement(src, tgt); - tgt.setAction(convertCodeableConcept(src.getAction())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent(); - copyElement(src, tgt); - tgt.setAction(convertCodeableConcept(src.getAction())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public org.hl7.fhir.r4.model.Device convertDevice(org.hl7.fhir.instance.model.Device src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Device tgt = new org.hl7.fhir.r4.model.Device(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setUdi((new org.hl7.fhir.r4.model.Device.DeviceUdiComponent()).setDeviceIdentifier(src.getUdi())); - tgt.setStatus(convertDeviceStatus(src.getStatus())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setLotNumber(src.getLotNumber()); - tgt.setManufacturer(src.getManufacturer()); - tgt.setManufactureDate(src.getManufactureDate()); - tgt.setExpirationDate(src.getExpiry()); - tgt.setModel(src.getModel()); - tgt.setVersion(src.getVersion()); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setOwner(convertReference(src.getOwner())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.instance.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Device convertDevice(org.hl7.fhir.r4.model.Device src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Device tgt = new org.hl7.fhir.instance.model.Device(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasUdi()) - tgt.setUdi(src.getUdi().getDeviceIdentifier()); - tgt.setStatus(convertDeviceStatus(src.getStatus())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setLotNumber(src.getLotNumber()); - tgt.setManufacturer(src.getManufacturer()); - tgt.setManufactureDate(src.getManufactureDate()); - tgt.setExpiry(src.getExpirationDate()); - tgt.setModel(src.getModel()); - tgt.setVersion(src.getVersion()); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setOwner(convertReference(src.getOwner())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Device.FHIRDeviceStatus convertDeviceStatus(org.hl7.fhir.instance.model.Device.DeviceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case AVAILABLE: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.ACTIVE; - case NOTAVAILABLE: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Device.DeviceStatus convertDeviceStatus(org.hl7.fhir.r4.model.Device.FHIRDeviceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.Device.DeviceStatus.AVAILABLE; - case INACTIVE: return org.hl7.fhir.instance.model.Device.DeviceStatus.NOTAVAILABLE; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Device.DeviceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.Device.DeviceStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.instance.model.DeviceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DeviceComponent tgt = new org.hl7.fhir.r4.model.DeviceComponent(); - copyDomainResource(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setLastSystemChange(src.getLastSystemChange()); - tgt.setSource(convertReference(src.getSource())); - tgt.setParent(convertReference(src.getParent())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getOperationalStatus()) - tgt.addOperationalStatus(convertCodeableConcept(t)); - tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); - tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); - for (org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) - tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); - tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); - return tgt; - } - - public org.hl7.fhir.instance.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.r4.model.DeviceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DeviceComponent tgt = new org.hl7.fhir.instance.model.DeviceComponent(); - copyDomainResource(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setLastSystemChange(src.getLastSystemChange()); - tgt.setSource(convertReference(src.getSource())); - tgt.setParent(convertReference(src.getParent())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getOperationalStatus()) - tgt.addOperationalStatus(convertCodeableConcept(t)); - tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); - tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); - for (org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) - tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); - tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); - return tgt; - } - - public org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OTHER: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.OTHER; - case CHEMICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; - case ELECTRICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; - case IMPEDANCE: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; - case NUCLEAR: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; - case OPTICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.OPTICAL; - case THERMAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.THERMAL; - case BIOLOGICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; - case MECHANICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; - case ACOUSTICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; - case MANUAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.MANUAL; - default: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OTHER: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.OTHER; - case CHEMICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; - case ELECTRICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; - case IMPEDANCE: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; - case NUCLEAR: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; - case OPTICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.OPTICAL; - case THERMAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.THERMAL; - case BIOLOGICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; - case MECHANICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; - case ACOUSTICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; - case MANUAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.MANUAL; - default: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.NULL; - } - } - - public org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); - copyElement(src, tgt); - tgt.setSpecType(convertCodeableConcept(src.getSpecType())); - tgt.setComponentId(convertIdentifier(src.getComponentId())); - tgt.setProductionSpec(src.getProductionSpec()); - return tgt; - } - - public org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); - copyElement(src, tgt); - tgt.setSpecType(convertCodeableConcept(src.getSpecType())); - tgt.setComponentId(convertIdentifier(src.getComponentId())); - tgt.setProductionSpec(src.getProductionSpec()); - return tgt; - } - - public org.hl7.fhir.r4.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.instance.model.DeviceMetric src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DeviceMetric tgt = new org.hl7.fhir.r4.model.DeviceMetric(); - copyDomainResource(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setUnit(convertCodeableConcept(src.getUnit())); - tgt.setSource(convertReference(src.getSource())); - tgt.setParent(convertReference(src.getParent())); - tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); - tgt.setColor(convertDeviceMetricColor(src.getColor())); - tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); - tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); - for (org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) - tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.r4.model.DeviceMetric src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DeviceMetric tgt = new org.hl7.fhir.instance.model.DeviceMetric(); - copyDomainResource(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setUnit(convertCodeableConcept(src.getUnit())); - tgt.setSource(convertReference(src.getSource())); - tgt.setParent(convertReference(src.getParent())); - tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); - tgt.setColor(convertDeviceMetricColor(src.getColor())); - tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); - tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); - for (org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) - tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ON: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.ON; - case OFF: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; - case STANDBY: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; - default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ON: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.ON; - case OFF: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; - case STANDBY: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; - default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BLACK: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.BLACK; - case RED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.RED; - case GREEN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.GREEN; - case YELLOW: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.YELLOW; - case BLUE: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.BLUE; - case MAGENTA: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.MAGENTA; - case CYAN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.CYAN; - case WHITE: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.WHITE; - default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BLACK: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.BLACK; - case RED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.RED; - case GREEN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.GREEN; - case YELLOW: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.YELLOW; - case BLUE: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.BLUE; - case MAGENTA: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.MAGENTA; - case CYAN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.CYAN; - case WHITE: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.WHITE; - default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.NULL; - } - } - - public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MEASUREMENT: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; - case SETTING: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.SETTING; - case CALCULATION: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.CALCULATION; - case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; - default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MEASUREMENT: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; - case SETTING: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.SETTING; - case CALCULATION: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.CALCULATION; - case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; - default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.NULL; - } - } - - public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent(); - copyElement(src, tgt); - tgt.setType(convertDeviceMetricCalibrationType(src.getType())); - tgt.setState(convertDeviceMetricCalibrationState(src.getState())); - tgt.setTime(src.getTime()); - return tgt; - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent(); - copyElement(src, tgt); - tgt.setType(convertDeviceMetricCalibrationType(src.getType())); - tgt.setState(convertDeviceMetricCalibrationState(src.getState())); - tgt.setTime(src.getTime()); - return tgt; - } - - public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; - case OFFSET: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; - case GAIN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; - case TWOPOINT: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; - default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; - case OFFSET: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; - case GAIN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; - case TWOPOINT: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; - default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.NULL; - } - } - - public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTCALIBRATED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; - case CALIBRATIONREQUIRED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; - case CALIBRATED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; - case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; - default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.NULL; - } - } - - public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTCALIBRATED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; - case CALIBRATIONREQUIRED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; - case CALIBRATED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; - case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; - default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.NULL; - } - } - - public org.hl7.fhir.r4.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.instance.model.DeviceUseStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DeviceUseStatement tgt = new org.hl7.fhir.r4.model.DeviceUseStatement(); - copyDomainResource(src, tgt); - if (src.hasBodySiteCodeableConcept()) - tgt.setBodySite(convertCodeableConcept(src.getBodySiteCodeableConcept())); - tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getIndication()) - tgt.addIndication(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.StringType t : src.getNotes()) - tgt.addNote().setText(t.getValue()); - tgt.setRecordedOn(src.getRecordedOn()); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setTiming(convertType(src.getTiming())); - return tgt; - } - - public org.hl7.fhir.instance.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.r4.model.DeviceUseStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DeviceUseStatement tgt = new org.hl7.fhir.instance.model.DeviceUseStatement(); - copyDomainResource(src, tgt); - tgt.setBodySite(convertType(src.getBodySite())); - tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getIndication()) - tgt.addIndication(convertCodeableConcept(t)); - for (Annotation t : src.getNote()) - tgt.addNotes(t.getText()); - tgt.setRecordedOn(src.getRecordedOn()); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setTiming(convertType(src.getTiming())); - return tgt; - } - -// public org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus convertDiagnosticOrderStatus(org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus src) throws FHIRException { -// if (src ==/* null || src.isEmpty()*/) -// return null; -// switch (src) { -// case PROPOSED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.PROPOSED; -// case DRAFT: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.DRAFT; -// case PLANNED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.PLANNED; -// case REQUESTED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.REQUESTED; -// case RECEIVED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.RECEIVED; -// case ACCEPTED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.ACCEPTED; -// case INPROGRESS: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.INPROGRESS; -// case REVIEW: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.REVIEW; -// case COMPLETED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.COMPLETED; -// case CANCELLED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.CANCELLED; -// case SUSPENDED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.SUSPENDED; -// case REJECTED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.REJECTED; -// case FAILED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.FAILED; -// default: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.NULL; -// } -// } -// -// public org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus convertDiagnosticOrderStatus(org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus src) throws FHIRException { -// if (src ==/* null || src.isEmpty()*/) -// return null; -// switch (src) { -// case PROPOSED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.PROPOSED; -// case DRAFT: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.DRAFT; -// case PLANNED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.PLANNED; -// case REQUESTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REQUESTED; -// case RECEIVED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.RECEIVED; -// case ACCEPTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.ACCEPTED; -// case INPROGRESS: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.INPROGRESS; -// case REVIEW: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REVIEW; -// case COMPLETED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.COMPLETED; -// case CANCELLED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.CANCELLED; -// case SUSPENDED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.SUSPENDED; -// case REJECTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REJECTED; -// case FAILED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.FAILED; -// default: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.NULL; -// } -// } - - - public org.hl7.fhir.r4.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.instance.model.DiagnosticReport src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DiagnosticReport tgt = new org.hl7.fhir.r4.model.DiagnosticReport(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setIssued(src.getIssued()); -// tgt.setPerformer(convertReference(src.getPerformer())); -// for (org.hl7.fhir.instance.model.Reference t : src.getRequest()) -// tgt.addRequest(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getSpecimen()) - tgt.addSpecimen(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getResult()) - tgt.addResult(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getImagingStudy()) - tgt.addImagingStudy(convertReference(t)); - for (org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) - tgt.addImage(convertDiagnosticReportImageComponent(t)); - tgt.setConclusion(src.getConclusion()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCodedDiagnosis()) - tgt.addCodedDiagnosis(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Attachment t : src.getPresentedForm()) - tgt.addPresentedForm(convertAttachment(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.r4.model.DiagnosticReport src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DiagnosticReport tgt = new org.hl7.fhir.instance.model.DiagnosticReport(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setIssued(src.getIssued()); -// tgt.setPerformer(convertReference(src.getPerformer())); -// for (org.hl7.fhir.r4.model.Reference t : src.getRequest()) -// tgt.addRequest(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getSpecimen()) - tgt.addSpecimen(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getResult()) - tgt.addResult(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getImagingStudy()) - tgt.addImagingStudy(convertReference(t)); - for (org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) - tgt.addImage(convertDiagnosticReportImageComponent(t)); - tgt.setConclusion(src.getConclusion()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCodedDiagnosis()) - tgt.addCodedDiagnosis(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Attachment t : src.getPresentedForm()) - tgt.addPresentedForm(convertAttachment(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; - case PARTIAL: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; - case FINAL: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.FINAL; - case CORRECTED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; - case APPENDED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; - case CANCELLED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; - case PARTIAL: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; - case FINAL: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.FINAL; - case CORRECTED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; - case APPENDED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; - case CANCELLED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent(); - copyElement(src, tgt); - tgt.setComment(src.getComment()); - tgt.setLink(convertReference(src.getLink())); - return tgt; - } - - public org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent(); - copyElement(src, tgt); - tgt.setComment(src.getComment()); - tgt.setLink(convertReference(src.getLink())); - return tgt; - } - - public org.hl7.fhir.r4.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.instance.model.DocumentManifest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DocumentManifest tgt = new org.hl7.fhir.r4.model.DocumentManifest(); - copyDomainResource(src, tgt); - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - tgt.setCreated(src.getCreated()); - tgt.setSource(src.getSource()); - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) - tgt.addContent(convertDocumentManifestContentComponent(t)); - for (org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentManifestRelatedComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.r4.model.DocumentManifest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentManifest tgt = new org.hl7.fhir.instance.model.DocumentManifest(); - copyDomainResource(src, tgt); - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - tgt.setCreated(src.getCreated()); - tgt.setSource(src.getSource()); - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) - tgt.addContent(convertDocumentManifestContentComponent(t)); - for (org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentManifestRelatedComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.CURRENT; - case SUPERSEDED: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.CURRENT; - case SUPERSEDED: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent(); - copyElement(src, tgt); - tgt.setP(convertType(src.getP())); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent(); - copyElement(src, tgt); - tgt.setP(convertType(src.getP())); - return tgt; - } - - public org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - public org.hl7.fhir.r4.model.DocumentReference convertDocumentReference(org.hl7.fhir.instance.model.DocumentReference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DocumentReference tgt = new org.hl7.fhir.r4.model.DocumentReference(); - copyDomainResource(src, tgt); - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setClass_(convertCodeableConcept(src.getClass_())); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - tgt.setCustodian(convertReference(src.getCustodian())); - tgt.setAuthenticator(convertReference(src.getAuthenticator())); - tgt.setCreated(src.getCreated()); - tgt.setIndexed(src.getIndexed()); - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - tgt.setDocStatus(convertDocStatus(src.getDocStatus())); - for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) - tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) - tgt.addContent(convertDocumentReferenceContentComponent(t)); - tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); - return tgt; - } - - private ReferredDocumentStatus convertDocStatus(CodeableConcept cc) { - if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "preliminary")) - return ReferredDocumentStatus.PRELIMINARY; - if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "final")) - return ReferredDocumentStatus.FINAL; - if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "amended")) - return ReferredDocumentStatus.AMENDED; - if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "entered-in-error")) - return ReferredDocumentStatus.ENTEREDINERROR; - - return null; - } - - private CodeableConcept convertDocStatus(ReferredDocumentStatus docStatus) { - CodeableConcept cc = new CodeableConcept (); - switch (docStatus) { - case AMENDED: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("amended"); break; - case ENTEREDINERROR: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("entered-in-error"); break; - case FINAL: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("final"); break; - case PRELIMINARY: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("preliminary"); break; - default: return null; - } - return cc; - } - - public org.hl7.fhir.instance.model.DocumentReference convertDocumentReference(org.hl7.fhir.r4.model.DocumentReference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentReference tgt = new org.hl7.fhir.instance.model.DocumentReference(); - copyDomainResource(src, tgt); - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setClass_(convertCodeableConcept(src.getClass_())); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - tgt.setCustodian(convertReference(src.getCustodian())); - tgt.setAuthenticator(convertReference(src.getAuthenticator())); - tgt.setCreated(src.getCreated()); - tgt.setIndexed(src.getIndexed()); - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - tgt.setDocStatus(convertDocStatus(src.getDocStatus())); - for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) - tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) - tgt.addContent(convertDocumentReferenceContentComponent(t)); - tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); - return tgt; - } - - - public org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent(); - copyElement(src, tgt); - tgt.setCode(convertDocumentRelationshipType(src.getCode())); - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent(); - copyElement(src, tgt); - tgt.setCode(convertDocumentRelationshipType(src.getCode())); - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - public org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACES: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.REPLACES; - case TRANSFORMS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; - case SIGNS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.SIGNS; - case APPENDS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.APPENDS; - default: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.NULL; - } - } - - public org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACES: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.REPLACES; - case TRANSFORMS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; - case SIGNS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.SIGNS; - case APPENDS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.APPENDS; - default: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.NULL; - } - } - - public org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent(); - copyElement(src, tgt); - tgt.setAttachment(convertAttachment(src.getAttachment())); - for (org.hl7.fhir.instance.model.Coding t : src.getFormat()) - tgt.setFormat(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent(); - copyElement(src, tgt); - tgt.setAttachment(convertAttachment(src.getAttachment())); - tgt.addFormat(convertCoding(src.getFormat())); - return tgt; - } - - public org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent(); - copyElement(src, tgt); - tgt.setEncounter(convertReference(src.getEncounter())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getEvent()) - tgt.addEvent(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); - tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); - tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); - for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent(); - copyElement(src, tgt); - tgt.setEncounter(convertReference(src.getEncounter())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getEvent()) - tgt.addEvent(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); - tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); - tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); - for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - - public org.hl7.fhir.r4.model.Encounter convertEncounter(org.hl7.fhir.instance.model.Encounter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Encounter tgt = new org.hl7.fhir.r4.model.Encounter(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertEncounterState(src.getStatus())); -// for (org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent t : src.getStatusHistory()) -// tgt.addStatusHistory(convertEncounterStatusHistoryComponent(t)); - tgt.setClass_(convertEncounterClass(src.getClass_())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPriority(convertCodeableConcept(src.getPriority())); - tgt.setSubject(convertReference(src.getPatient())); - for (org.hl7.fhir.instance.model.Reference t : src.getEpisodeOfCare()) - tgt.addEpisodeOfCare(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getIncomingReferral()) - tgt.addIncomingReferral(convertReference(t)); - for (org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertEncounterParticipantComponent(t)); - tgt.setAppointment(convertReference(src.getAppointment())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setLength(convertDuration(src.getLength())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); - for (org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent t : src.getLocation()) - tgt.addLocation(convertEncounterLocationComponent(t)); - tgt.setServiceProvider(convertReference(src.getServiceProvider())); - tgt.setPartOf(convertReference(src.getPartOf())); - return tgt; - } - - public org.hl7.fhir.instance.model.Encounter convertEncounter(org.hl7.fhir.r4.model.Encounter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Encounter tgt = new org.hl7.fhir.instance.model.Encounter(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertEncounterState(src.getStatus())); -// for (org.hl7.fhir.r4.model.Encounter.EncounterStatusHistoryComponent t : src.getStatusHistory()) -// tgt.addStatusHistory(convertEncounterStatusHistoryComponent(t)); - tgt.setClass_(convertEncounterClass(src.getClass_())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPriority(convertCodeableConcept(src.getPriority())); - tgt.setPatient(convertReference(src.getSubject())); - for (org.hl7.fhir.r4.model.Reference t : src.getEpisodeOfCare()) - tgt.addEpisodeOfCare(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getIncomingReferral()) - tgt.addIncomingReferral(convertReference(t)); - for (org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertEncounterParticipantComponent(t)); - tgt.setAppointment(convertReference(src.getAppointment())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setLength(convertDuration(src.getLength())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); - for (org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent t : src.getLocation()) - tgt.addLocation(convertEncounterLocationComponent(t)); - tgt.setServiceProvider(convertReference(src.getServiceProvider())); - tgt.setPartOf(convertReference(src.getPartOf())); - return tgt; - } - - public org.hl7.fhir.r4.model.Encounter.EncounterStatus convertEncounterState(org.hl7.fhir.instance.model.Encounter.EncounterState src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.PLANNED; - case ARRIVED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.ARRIVED; - case INPROGRESS: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.INPROGRESS; - case ONLEAVE: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.ONLEAVE; - case FINISHED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.FINISHED; - case CANCELLED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.CANCELLED; - default: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Encounter.EncounterState convertEncounterState(org.hl7.fhir.r4.model.Encounter.EncounterStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.instance.model.Encounter.EncounterState.PLANNED; - case ARRIVED: return org.hl7.fhir.instance.model.Encounter.EncounterState.ARRIVED; - case INPROGRESS: return org.hl7.fhir.instance.model.Encounter.EncounterState.INPROGRESS; - case ONLEAVE: return org.hl7.fhir.instance.model.Encounter.EncounterState.ONLEAVE; - case FINISHED: return org.hl7.fhir.instance.model.Encounter.EncounterState.FINISHED; - case CANCELLED: return org.hl7.fhir.instance.model.Encounter.EncounterState.CANCELLED; - default: return org.hl7.fhir.instance.model.Encounter.EncounterState.NULL; - } - } - - public org.hl7.fhir.r4.model.Coding convertEncounterClass(org.hl7.fhir.instance.model.Encounter.EncounterClass src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPATIENT: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("IMP"); - case OUTPATIENT: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("AMB"); - case AMBULATORY: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("AMB"); - case EMERGENCY: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("EMER"); - case HOME: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("HH"); - case FIELD: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("FLD"); - case DAYTIME: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("SS"); - case VIRTUAL: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("VR"); - default: return null; - } - } - - public org.hl7.fhir.instance.model.Encounter.EncounterClass convertEncounterClass(org.hl7.fhir.r4.model.Coding src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src.getSystem().equals("http://hl7.org/fhir/v3/ActCode")) { - if (src.getCode().equals("IMP")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.INPATIENT; - if (src.getCode().equals("AMB")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.AMBULATORY; - if (src.getCode().equals("EMER")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.EMERGENCY; - if (src.getCode().equals("HH")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.HOME; - if (src.getCode().equals("FLD")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.FIELD; - if (src.getCode().equals("")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.DAYTIME; - if (src.getCode().equals("VR")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.VIRTUAL; - } - return org.hl7.fhir.instance.model.Encounter.EncounterClass.NULL; - } - -// public org.hl7.fhir.r4.model.Encounter.EncounterStatusHistoryComponent convertEncounterStatusHistoryComponent(org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.Encounter.EncounterStatusHistoryComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterStatusHistoryComponent(); -// copyElement(src, tgt); -// tgt.setStatus(convertEncounterState(src.getStatus())); -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent convertEncounterStatusHistoryComponent(org.hl7.fhir.r4.model.Encounter.EncounterStatusHistoryComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent(); -// copyElement(src, tgt); -// tgt.setStatus(convertEncounterState(src.getStatus())); -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// return tgt; -// } - - public org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setIndividual(convertReference(src.getIndividual())); - return tgt; - } - - public org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setIndividual(convertReference(src.getIndividual())); - return tgt; - } - - public org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent(); - copyElement(src, tgt); - tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); - tgt.setOrigin(convertReference(src.getOrigin())); - tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); - tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getDietPreference()) - tgt.addDietPreference(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialCourtesy()) - tgt.addSpecialCourtesy(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialArrangement()) - tgt.addSpecialArrangement(convertCodeableConcept(t)); - tgt.setDestination(convertReference(src.getDestination())); - tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); - return tgt; - } - - public org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent(); - copyElement(src, tgt); - tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); - tgt.setOrigin(convertReference(src.getOrigin())); - tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); - tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getDietPreference()) - tgt.addDietPreference(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialCourtesy()) - tgt.addSpecialCourtesy(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialArrangement()) - tgt.addSpecialArrangement(convertCodeableConcept(t)); - tgt.setDestination(convertReference(src.getDestination())); - tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); - return tgt; - } - - public org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent(); - copyElement(src, tgt); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent(); - copyElement(src, tgt); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.PLANNED; - case ACTIVE: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.ACTIVE; - case RESERVED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.RESERVED; - case COMPLETED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.COMPLETED; - default: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.PLANNED; - case ACTIVE: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.ACTIVE; - case RESERVED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.RESERVED; - case COMPLETED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.COMPLETED; - default: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.instance.model.EnrollmentRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.EnrollmentRequest tgt = new org.hl7.fhir.r4.model.EnrollmentRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCreated(src.getCreated()); -// tgt.setTarget(convertReference(src.getTarget())); - tgt.setProvider(convertReference(src.getProvider())); - tgt.setOrganization(convertReference(src.getOrganization())); - tgt.setCandidate(convertReference(src.getSubject())); - tgt.setCoverage(convertReference(src.getCoverage())); -// tgt.setRelationship(convertCoding(src.getRelationship())); - return tgt; - } - - public org.hl7.fhir.instance.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.r4.model.EnrollmentRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.EnrollmentRequest tgt = new org.hl7.fhir.instance.model.EnrollmentRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCreated(src.getCreated()); -// tgt.setTarget(convertReference(src.getTarget())); -// tgt.setProvider(convertReference(src.getProvider())); -// tgt.setOrganization(convertReference(src.getOrganization())); -// tgt.setSubject(convertReference(src.getSubject())); - tgt.setCoverage(convertReference(src.getCoverage())); -// tgt.setRelationship(convertCoding(src.getRelationship())); - return tgt; - } - - public org.hl7.fhir.r4.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.instance.model.EnrollmentResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.EnrollmentResponse tgt = new org.hl7.fhir.r4.model.EnrollmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setRequest(convertReference(src.getRequest())); -// tgt.setOutcome(convertRemittanceOutcome(src.getOutcome())); - tgt.setDisposition(src.getDisposition()); - tgt.setCreated(src.getCreated()); - tgt.setOrganization(convertReference(src.getOrganization())); - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - return tgt; - } - - public org.hl7.fhir.instance.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.r4.model.EnrollmentResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.EnrollmentResponse tgt = new org.hl7.fhir.instance.model.EnrollmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); -// tgt.setRequest(convertReference(src.getRequestReference())); -// tgt.setOutcome(convertRemittanceOutcome(src.getOutcome())); - tgt.setDisposition(src.getDisposition()); - tgt.setCreated(src.getCreated()); -// tgt.setOrganization(convertReference(src.getOrganizationReference())); -// tgt.setRequestProvider(convertReference(src.getRequestProviderReference())); -// tgt.setRequestOrganization(convertReference(src.getRequestOrganizationReference())); - return tgt; - } - - public org.hl7.fhir.r4.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.instance.model.EpisodeOfCare src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.EpisodeOfCare tgt = new org.hl7.fhir.r4.model.EpisodeOfCare(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - for (org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) - tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.instance.model.Reference t : src.getReferralRequest()) - tgt.addReferralRequest(convertReference(t)); - tgt.setCareManager(convertReference(src.getCareManager())); - return tgt; - } - - public org.hl7.fhir.instance.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.r4.model.EpisodeOfCare src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.EpisodeOfCare tgt = new org.hl7.fhir.instance.model.EpisodeOfCare(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) - tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.Reference t : src.getReferralRequest()) - tgt.addReferralRequest(convertReference(t)); - tgt.setCareManager(convertReference(src.getCareManager())); - return tgt; - } - - public org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; - case WAITLIST: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; - case ACTIVE: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; - case ONHOLD: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; - case FINISHED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; - case CANCELLED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; - default: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; - case WAITLIST: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; - case ACTIVE: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; - case ONHOLD: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; - case FINISHED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; - case CANCELLED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; - default: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); - copyElement(src, tgt); - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); - copyElement(src, tgt); - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - - public org.hl7.fhir.r4.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.instance.model.FamilyMemberHistory src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.FamilyMemberHistory tgt = new org.hl7.fhir.r4.model.FamilyMemberHistory(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); - tgt.setName(src.getName()); - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBorn(convertType(src.getBorn())); - tgt.setAge(convertType(src.getAge())); - tgt.setDeceased(convertType(src.getDeceased())); -// tgt.setNote(convertAnnotation(src.getNote())); - for (org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) - tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.r4.model.FamilyMemberHistory src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.FamilyMemberHistory tgt = new org.hl7.fhir.instance.model.FamilyMemberHistory(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); - tgt.setName(src.getName()); - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBorn(convertType(src.getBorn())); - tgt.setAge(convertType(src.getAge())); - tgt.setDeceased(convertType(src.getDeceased())); -// tgt.setNote(convertAnnotation(src.getNote())); - for (org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) - tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PARTIAL: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; - case COMPLETED: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; - case HEALTHUNKNOWN: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; - default: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PARTIAL: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; - case COMPLETED: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; - case HEALTHUNKNOWN: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; - default: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - tgt.setOnset(convertType(src.getOnset())); -// tgt.setNote(convertAnnotation(src.getNote())); - return tgt; - } - - public org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - tgt.setOnset(convertType(src.getOnset())); -// tgt.setNote(convertAnnotation(src.getNote())); - return tgt; - } - - public org.hl7.fhir.r4.model.Flag convertFlag(org.hl7.fhir.instance.model.Flag src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Flag tgt = new org.hl7.fhir.r4.model.Flag(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setStatus(convertFlagStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public org.hl7.fhir.instance.model.Flag convertFlag(org.hl7.fhir.r4.model.Flag src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Flag tgt = new org.hl7.fhir.instance.model.Flag(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setStatus(convertFlagStatus(src.getStatus())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public org.hl7.fhir.r4.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.instance.model.Flag.FlagStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Flag.FlagStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.r4.model.Flag.FlagStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Flag.FlagStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Flag.FlagStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.r4.model.Flag.FlagStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.Flag.FlagStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.instance.model.Flag.FlagStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Flag.FlagStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.Flag.FlagStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Group convertGroup(org.hl7.fhir.instance.model.Group src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Group tgt = new org.hl7.fhir.r4.model.Group(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setType(convertGroupType(src.getType())); - tgt.setActual(src.getActual()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setName(src.getName()); - tgt.setQuantity(src.getQuantity()); - for (org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) - tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); - for (org.hl7.fhir.instance.model.Group.GroupMemberComponent t : src.getMember()) - tgt.addMember(convertGroupMemberComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Group convertGroup(org.hl7.fhir.r4.model.Group src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Group tgt = new org.hl7.fhir.instance.model.Group(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setType(convertGroupType(src.getType())); - tgt.setActual(src.getActual()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setName(src.getName()); - tgt.setQuantity(src.getQuantity()); - for (org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) - tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); - for (org.hl7.fhir.r4.model.Group.GroupMemberComponent t : src.getMember()) - tgt.addMember(convertGroupMemberComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Group.GroupType convertGroupType(org.hl7.fhir.instance.model.Group.GroupType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSON: return org.hl7.fhir.r4.model.Group.GroupType.PERSON; - case ANIMAL: return org.hl7.fhir.r4.model.Group.GroupType.ANIMAL; - case PRACTITIONER: return org.hl7.fhir.r4.model.Group.GroupType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.r4.model.Group.GroupType.DEVICE; - case MEDICATION: return org.hl7.fhir.r4.model.Group.GroupType.MEDICATION; - case SUBSTANCE: return org.hl7.fhir.r4.model.Group.GroupType.SUBSTANCE; - default: return org.hl7.fhir.r4.model.Group.GroupType.NULL; - } - } - - public org.hl7.fhir.instance.model.Group.GroupType convertGroupType(org.hl7.fhir.r4.model.Group.GroupType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSON: return org.hl7.fhir.instance.model.Group.GroupType.PERSON; - case ANIMAL: return org.hl7.fhir.instance.model.Group.GroupType.ANIMAL; - case PRACTITIONER: return org.hl7.fhir.instance.model.Group.GroupType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.instance.model.Group.GroupType.DEVICE; - case MEDICATION: return org.hl7.fhir.instance.model.Group.GroupType.MEDICATION; - case SUBSTANCE: return org.hl7.fhir.instance.model.Group.GroupType.SUBSTANCE; - default: return org.hl7.fhir.instance.model.Group.GroupType.NULL; - } - } - - public org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(convertType(src.getValue())); - tgt.setExclude(src.getExclude()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(convertType(src.getValue())); - tgt.setExclude(src.getExclude()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.r4.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.instance.model.Group.GroupMemberComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.r4.model.Group.GroupMemberComponent(); - copyElement(src, tgt); - tgt.setEntity(convertReference(src.getEntity())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setInactive(src.getInactive()); - return tgt; - } - - public org.hl7.fhir.instance.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.r4.model.Group.GroupMemberComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.instance.model.Group.GroupMemberComponent(); - copyElement(src, tgt); - tgt.setEntity(convertReference(src.getEntity())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setInactive(src.getInactive()); - return tgt; - } - - public org.hl7.fhir.r4.model.HealthcareService convertHealthcareService(org.hl7.fhir.instance.model.HealthcareService src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.HealthcareService tgt = new org.hl7.fhir.r4.model.HealthcareService(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setProvidedBy(convertReference(src.getProvidedBy())); -// tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); - for (org.hl7.fhir.instance.model.HealthcareService.ServiceTypeComponent t : src.getServiceType()) { -// if (t.hasType()) -// tgt.addServiceType(convertCodeableConcept(t.getType())); - for (org.hl7.fhir.instance.model.CodeableConcept tj : t.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(tj)); - } - tgt.addLocation(convertReference(src.getLocation())); -// tgt.setServiceName(src.getServiceName()); - tgt.setComment(src.getComment()); - tgt.setExtraDetails(src.getExtraDetails()); - tgt.setPhoto(convertAttachment(src.getPhoto())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getCoverageArea()) - tgt.addCoverageArea(convertReference(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getServiceProvisionCode()) - tgt.addServiceProvisionCode(convertCodeableConcept(t)); - tgt.setEligibility(convertCodeableConcept(src.getEligibility())); - tgt.setEligibilityNote(src.getEligibilityNote()); - for (org.hl7.fhir.instance.model.StringType t : src.getProgramName()) - tgt.addProgramName(t.getValue()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCharacteristic()) - tgt.addCharacteristic(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReferralMethod()) - tgt.addReferralMethod(convertCodeableConcept(t)); -// tgt.setPublicKey(src.getPublicKey()); - tgt.setAppointmentRequired(src.getAppointmentRequired()); - for (org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) - tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); - for (org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) - tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); - tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); - return tgt; - } - - public org.hl7.fhir.instance.model.HealthcareService convertHealthcareService(org.hl7.fhir.r4.model.HealthcareService src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.HealthcareService tgt = new org.hl7.fhir.instance.model.HealthcareService(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setProvidedBy(convertReference(src.getProvidedBy())); -// tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) -// tgt.addServiceType().setType(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) { - if (!tgt.hasServiceType()) - tgt.addServiceType(); - tgt.getServiceType().get(0).addSpecialty(convertCodeableConcept(t)); - } - for (org.hl7.fhir.r4.model.Reference t : src.getLocation()) - tgt.setLocation(convertReference(t)); -// tgt.setServiceName(src.getServiceName()); - tgt.setComment(src.getComment()); - tgt.setExtraDetails(src.getExtraDetails()); - tgt.setPhoto(convertAttachment(src.getPhoto())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getCoverageArea()) - tgt.addCoverageArea(convertReference(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceProvisionCode()) - tgt.addServiceProvisionCode(convertCodeableConcept(t)); - tgt.setEligibility(convertCodeableConcept(src.getEligibility())); - tgt.setEligibilityNote(src.getEligibilityNote()); - for (org.hl7.fhir.r4.model.StringType t : src.getProgramName()) - tgt.addProgramName(t.getValue()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCharacteristic()) - tgt.addCharacteristic(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReferralMethod()) - tgt.addReferralMethod(convertCodeableConcept(t)); -// tgt.setPublicKey(src.getPublicKey()); - tgt.setAppointmentRequired(src.getAppointmentRequired()); - for (org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) - tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); - for (org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) - tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); - tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); - return tgt; - } - - public org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Enumeration t : src.getDaysOfWeek()) - tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); - tgt.setAllDay(src.getAllDay()); - tgt.setAvailableStartTime(src.getAvailableStartTime()); - tgt.setAvailableEndTime(src.getAvailableEndTime()); - return tgt; - } - - public org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Enumeration t : src.getDaysOfWeek()) - tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); - tgt.setAllDay(src.getAllDay()); - tgt.setAvailableStartTime(src.getAvailableStartTime()); - tgt.setAvailableEndTime(src.getAvailableEndTime()); - return tgt; - } - - public org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MON: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.MON; - case TUE: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.TUE; - case WED: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.WED; - case THU: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.THU; - case FRI: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.FRI; - case SAT: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.SAT; - case SUN: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.SUN; - default: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.NULL; - } - } - - public org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MON: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.MON; - case TUE: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.TUE; - case WED: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.WED; - case THU: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.THU; - case FRI: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.FRI; - case SAT: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.SAT; - case SUN: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.SUN; - default: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.NULL; - } - } - - public org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - tgt.setDuring(convertPeriod(src.getDuring())); - return tgt; - } - - public org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - tgt.setDuring(convertPeriod(src.getDuring())); - return tgt; - } - -// public org.hl7.fhir.r4.model.ImagingObjectSelection convertImagingObjectSelection(org.hl7.fhir.instance.model.ImagingObjectSelection src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.ImagingObjectSelection tgt = new org.hl7.fhir.r4.model.ImagingObjectSelection(); -// copyDomainResource(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setAuthoringTime(src.getAuthoringTime()); -// tgt.setAuthor(convertReference(src.getAuthor())); -// tgt.setTitle(convertCodeableConcept(src.getTitle())); -// tgt.setDescription(src.getDescription()); -// for (org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent t : src.getStudy()) -// tgt.addStudy(convertStudyComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ImagingObjectSelection convertImagingObjectSelection(org.hl7.fhir.r4.model.ImagingObjectSelection src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ImagingObjectSelection tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection(); -// copyDomainResource(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setAuthoringTime(src.getAuthoringTime()); -// tgt.setAuthor(convertReference(src.getAuthor())); -// tgt.setTitle(convertCodeableConcept(src.getTitle())); -// tgt.setDescription(src.getDescription()); -// for (org.hl7.fhir.r4.model.ImagingObjectSelection.StudyComponent t : src.getStudy()) -// tgt.addStudy(convertStudyComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.r4.model.ImagingObjectSelection.StudyComponent convertStudyComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.ImagingObjectSelection.StudyComponent tgt = new org.hl7.fhir.r4.model.ImagingObjectSelection.StudyComponent(); -// copyElement(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// tgt.setImagingStudy(convertReference(src.getImagingStudy())); -// for (org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent t : src.getSeries()) -// tgt.addSeries(convertSeriesComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent convertStudyComponent(org.hl7.fhir.r4.model.ImagingObjectSelection.StudyComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent(); -// copyElement(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// tgt.setImagingStudy(convertReference(src.getImagingStudy())); -// for (org.hl7.fhir.r4.model.ImagingObjectSelection.SeriesComponent t : src.getSeries()) -// tgt.addSeries(convertSeriesComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.r4.model.ImagingObjectSelection.SeriesComponent convertSeriesComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.ImagingObjectSelection.SeriesComponent tgt = new org.hl7.fhir.r4.model.ImagingObjectSelection.SeriesComponent(); -// copyElement(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent t : src.getInstance()) -// tgt.addInstance(convertInstanceComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent convertSeriesComponent(org.hl7.fhir.r4.model.ImagingObjectSelection.SeriesComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent(); -// copyElement(src, tgt); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.r4.model.ImagingObjectSelection.InstanceComponent t : src.getInstance()) -// tgt.addInstance(convertInstanceComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.r4.model.ImagingObjectSelection.InstanceComponent convertInstanceComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.ImagingObjectSelection.InstanceComponent tgt = new org.hl7.fhir.r4.model.ImagingObjectSelection.InstanceComponent(); -// copyElement(src, tgt); -// tgt.setSopClass(src.getSopClass()); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent t : src.getFrames()) -// tgt.addFrame(convertFramesComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent convertInstanceComponent(org.hl7.fhir.r4.model.ImagingObjectSelection.InstanceComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent(); -// copyElement(src, tgt); -// tgt.setSopClass(src.getSopClass()); -// tgt.setUid(src.getUid()); -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.r4.model.ImagingObjectSelection.FramesComponent t : src.getFrame()) -// tgt.addFrames(convertFramesComponent(t)); -// return tgt; -// } -// -// public org.hl7.fhir.r4.model.ImagingObjectSelection.FramesComponent convertFramesComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.ImagingObjectSelection.FramesComponent tgt = new org.hl7.fhir.r4.model.ImagingObjectSelection.FramesComponent(); -// copyElement(src, tgt); -// for (org.hl7.fhir.instance.model.UnsignedIntType t : src.getFrameNumbers()) -// tgt.addNumber(t.getValue()); -// tgt.setUrl(src.getUrl()); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent convertFramesComponent(org.hl7.fhir.r4.model.ImagingObjectSelection.FramesComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent(); -// copyElement(src, tgt); -// for (org.hl7.fhir.r4.model.UnsignedIntType t : src.getNumber()) -// tgt.addFrameNumbers(t.getValue()); -// tgt.setUrl(src.getUrl()); -// return tgt; -// } -// - public org.hl7.fhir.r4.model.ImagingStudy convertImagingStudy(org.hl7.fhir.instance.model.ImagingStudy src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImagingStudy tgt = new org.hl7.fhir.r4.model.ImagingStudy(); - copyDomainResource(src, tgt); - tgt.setUid(src.getUid()); - tgt.setAccession(convertIdentifier(src.getAccession())); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - for (org.hl7.fhir.instance.model.Coding t : src.getModalityList()) - tgt.addModalityList(convertCoding(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setStarted(src.getStarted()); - tgt.setReferrer(convertReference(src.getReferrer())); - tgt.addInterpreter(convertReference(src.getInterpreter())); - tgt.setNumberOfSeries(src.getNumberOfSeries()); - tgt.setNumberOfInstances(src.getNumberOfInstances()); - for (org.hl7.fhir.instance.model.Reference t : src.getProcedure()) - tgt.addProcedureReference(convertReference(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) - tgt.addSeries(convertImagingStudySeriesComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImagingStudy convertImagingStudy(org.hl7.fhir.r4.model.ImagingStudy src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImagingStudy tgt = new org.hl7.fhir.instance.model.ImagingStudy(); - copyDomainResource(src, tgt); - tgt.setUid(src.getUid()); - tgt.setAccession(convertIdentifier(src.getAccession())); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - for (org.hl7.fhir.r4.model.Coding t : src.getModalityList()) - tgt.addModalityList(convertCoding(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setStarted(src.getStarted()); - tgt.setReferrer(convertReference(src.getReferrer())); - for (org.hl7.fhir.r4.model.Reference t : src.getInterpreter()) - tgt.setInterpreter(convertReference(t)); - tgt.setNumberOfSeries(src.getNumberOfSeries()); - tgt.setNumberOfInstances(src.getNumberOfInstances()); - for (org.hl7.fhir.r4.model.Reference t : src.getProcedureReference()) - tgt.addProcedure(convertReference(t)); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) - tgt.addSeries(convertImagingStudySeriesComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ONLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.ONLINE; - case OFFLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.OFFLINE; - case NEARLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.NEARLINE; - case UNAVAILABLE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; - default: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.NULL; - } - } - - public org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ONLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.ONLINE; - case OFFLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.OFFLINE; - case NEARLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.NEARLINE; - case UNAVAILABLE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; - default: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.NULL; - } - } - - public org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent(); - copyElement(src, tgt); - tgt.setUid(src.getUid()); - tgt.setNumber(src.getNumber()); - tgt.setModality(convertCoding(src.getModality())); - tgt.setDescription(src.getDescription()); - tgt.setNumberOfInstances(src.getNumberOfInstances()); - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - tgt.setBodySite(convertCoding(src.getBodySite())); - tgt.setLaterality(convertCoding(src.getLaterality())); - tgt.setStarted(src.getStarted()); - for (org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) - tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent(); - copyElement(src, tgt); - tgt.setUid(src.getUid()); - tgt.setNumber(src.getNumber()); - tgt.setModality(convertCoding(src.getModality())); - tgt.setDescription(src.getDescription()); - tgt.setNumberOfInstances(src.getNumberOfInstances()); - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - tgt.setBodySite(convertCoding(src.getBodySite())); - tgt.setLaterality(convertCoding(src.getLaterality())); - tgt.setStarted(src.getStarted()); - for (org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) - tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); - copyElement(src, tgt); - tgt.setUid(src.getUid()); - tgt.setNumber(src.getNumber()); - tgt.setSopClass(src.getSopClass()); - tgt.setTitle(src.getTitle()); - return tgt; - } - - public org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); - copyElement(src, tgt); - tgt.setUid(src.getUid()); - tgt.setNumber(src.getNumber()); - tgt.setSopClass(src.getSopClass()); - tgt.setTitle(src.getTitle()); - return tgt; - } - - public org.hl7.fhir.r4.model.Immunization convertImmunization(org.hl7.fhir.instance.model.Immunization src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Immunization tgt = new org.hl7.fhir.r4.model.Immunization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - try { - tgt.setStatus(org.hl7.fhir.r4.model.Immunization.ImmunizationStatus.fromCode(src.getStatus())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setNotGiven(src.getWasNotGiven()); - tgt.setPrimarySource(!src.getReported()); - if (src.hasPerformer()) - tgt.addPractitioner().setActor(convertReference(src.getPerformer())).setRole(new org.hl7.fhir.r4.model.CodeableConcept().addCoding(new Coding().setSystem("http://hl7.org/fhir/v2/0443").setCode("AP"))); - if (src.hasRequester()) - tgt.addPractitioner().setActor(convertReference(src.getRequester())).setRole(new org.hl7.fhir.r4.model.CodeableConcept().addCoding(new Coding().setSystem("http://hl7.org/fhir/v2/0443").setCode("OP"))); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setManufacturer(convertReference(src.getManufacturer())); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setLotNumber(src.getLotNumber()); - tgt.setExpirationDate(src.getExpirationDate()); - tgt.setSite(convertCodeableConcept(src.getSite())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); - for (org.hl7.fhir.instance.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); - for (org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) - tgt.addReaction(convertImmunizationReactionComponent(t)); - for (org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) - tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Immunization convertImmunization(org.hl7.fhir.r4.model.Immunization src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Immunization tgt = new org.hl7.fhir.instance.model.Immunization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(src.getStatus().toCode()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setWasNotGiven(src.getNotGiven()); - tgt.setReported(!src.getPrimarySource()); - tgt.setPerformer(convertReference(getPerformer(src.getPractitioner()))); - tgt.setRequester(convertReference(getRequester(src.getPractitioner()))); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setManufacturer(convertReference(src.getManufacturer())); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setLotNumber(src.getLotNumber()); - tgt.setExpirationDate(src.getExpirationDate()); - tgt.setSite(convertCodeableConcept(src.getSite())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); - for (org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) - tgt.addReaction(convertImmunizationReactionComponent(t)); - for (org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) - tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); - return tgt; - } - - private org.hl7.fhir.r4.model.Reference getPerformer(List practitioner) { - for (ImmunizationPractitionerComponent p : practitioner) { - if (hasConcept(p.getRole(), "http://hl7.org/fhir/v2/0443", "AP")) - return p.getActor(); - } - return null; - } - - private org.hl7.fhir.r4.model.Reference getRequester(List practitioner) { - for (ImmunizationPractitionerComponent p : practitioner) { - if (hasConcept(p.getRole(), "http://hl7.org/fhir/v2/0443", "OP")) - return p.getActor(); - } - return null; - } - - private boolean hasConcept(org.hl7.fhir.r4.model.CodeableConcept cc, String system, String code) { - for (org.hl7.fhir.r4.model.Coding c : cc.getCoding()) { - if (system.equals(c.getSystem()) && code.equals(c.getCode())) - return true; - } - return false; - } - - private boolean hasConcept(org.hl7.fhir.instance.model.CodeableConcept cc, String system, String code) { - for (org.hl7.fhir.instance.model.Coding c : cc.getCoding()) { - if (system.equals(c.getSystem()) && code.equals(c.getCode())) - return true; - } - return false; - } - - public org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotGiven()) - tgt.addReasonNotGiven(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotGiven()) - tgt.addReasonNotGiven(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDetail(convertReference(src.getDetail())); - tgt.setReported(src.getReported()); - return tgt; - } - - public org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDetail(convertReference(src.getDetail())); - tgt.setReported(src.getReported()); - return tgt; - } - - public org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent(); - copyElement(src, tgt); - tgt.setDoseSequence(src.getDoseSequence()); - tgt.setDescription(src.getDescription()); - tgt.setAuthority(convertReference(src.getAuthority())); - tgt.setSeries(src.getSeries()); - tgt.setSeriesDoses(src.getSeriesDoses()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getTargetDisease()) - tgt.addTargetDisease(convertCodeableConcept(t)); - tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); - tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); - return tgt; - } - - public org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent(); - copyElement(src, tgt); - tgt.setDoseSequence(src.getDoseSequence()); - tgt.setDescription(src.getDescription()); - tgt.setAuthority(convertReference(src.getAuthority())); - tgt.setSeries(src.getSeries()); - tgt.setSeriesDoses(src.getSeriesDoses()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTargetDisease()) - tgt.addTargetDisease(convertCodeableConcept(t)); - tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); - tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); - return tgt; - } - - public org.hl7.fhir.r4.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.instance.model.ImmunizationRecommendation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImmunizationRecommendation tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - for (org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) - tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.r4.model.ImmunizationRecommendation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImmunizationRecommendation tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - for (org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) - tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - tgt.setDoseNumber(src.getDoseNumber()); - tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); - for (org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) - tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); - tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); - for (org.hl7.fhir.instance.model.Reference t : src.getSupportingImmunization()) - tgt.addSupportingImmunization(convertReference(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getSupportingPatientInformation()) - tgt.addSupportingPatientInformation(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - tgt.setDoseNumber(src.getDoseNumber()); - tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); - for (org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) - tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); - tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingImmunization()) - tgt.addSupportingImmunization(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingPatientInformation()) - tgt.addSupportingPatientInformation(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); - copyElement(src, tgt); - tgt.setDoseSequence(src.getDoseSequence()); - tgt.setDescription(src.getDescription()); - tgt.setAuthority(convertReference(src.getAuthority())); - tgt.setSeries(src.getSeries()); - return tgt; - } - - public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); - copyElement(src, tgt); - tgt.setDoseSequence(src.getDoseSequence()); - tgt.setDescription(src.getDescription()); - tgt.setAuthority(convertReference(src.getAuthority())); - tgt.setSeries(src.getSeries()); - return tgt; - } - - public org.hl7.fhir.r4.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.instance.model.ImplementationGuide src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide tgt = new org.hl7.fhir.r4.model.ImplementationGuide(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent t : src.getContact()) - tgt.addContact(convertImplementationGuideContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setCopyright(src.getCopyright()); - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) - tgt.addDependency(convertImplementationGuideDependencyComponent(t)); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) - tgt.addPackage(convertImplementationGuidePackageComponent(t)); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) - tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); - for (org.hl7.fhir.instance.model.UriType t : src.getBinary()) - tgt.addBinary(t.getValue()); - tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.r4.model.ImplementationGuide src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide tgt = new org.hl7.fhir.instance.model.ImplementationGuide(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertImplementationGuideContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setCopyright(src.getCopyright()); - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) - tgt.addDependency(convertImplementationGuideDependencyComponent(t)); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) - tgt.addPackage(convertImplementationGuidePackageComponent(t)); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) - tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); - for (org.hl7.fhir.r4.model.UriType t : src.getBinary()) - tgt.addBinary(t.getValue()); - tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); - return tgt; - } - - public org.hl7.fhir.r4.model.ContactDetail convertImplementationGuideContactComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent convertImplementationGuideContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent(); - copyElement(src, tgt); - tgt.setType(convertGuideDependencyType(src.getType())); - tgt.setUri(src.getUri()); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent(); - copyElement(src, tgt); - tgt.setType(convertGuideDependencyType(src.getType())); - tgt.setUri(src.getUri()); - return tgt; - } - - public org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REFERENCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.REFERENCE; - case INCLUSION: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.INCLUSION; - default: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.NULL; - } - } - - public org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REFERENCE: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.REFERENCE; - case INCLUSION: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.INCLUSION; - default: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.NULL; - } - } - - public org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) - tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) - tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); - copyElement(src, tgt); - tgt.setExample(src.getPurpose() == org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.EXAMPLE); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setAcronym(src.getAcronym()); - tgt.setSource(convertType(src.getSource())); - tgt.setExampleFor(convertReference(src.getExampleFor())); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); - copyElement(src, tgt); - if (src.getExample()) - tgt.setPurpose(org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.EXAMPLE); - else - tgt.setPurpose(org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.PROFILE); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setAcronym(src.getAcronym()); - tgt.setSource(convertType(src.getSource())); - tgt.setExampleFor(convertReference(src.getExampleFor())); - return tgt; - } - - public org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent(); - copyElement(src, tgt); - tgt.setSource(src.getSource()); - tgt.setTitle(src.getName()); - tgt.setKind(convertGuidePageKind(src.getKind())); - for (org.hl7.fhir.instance.model.CodeType t : src.getType()) - tgt.addType(t.getValue()); - for (org.hl7.fhir.instance.model.StringType t : src.getPackage()) - tgt.addPackage(t.getValue()); - tgt.setFormat(src.getFormat()); - for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) - tgt.addPage(convertImplementationGuidePageComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent(); - copyElement(src, tgt); - tgt.setSource(src.getSource()); - tgt.setName(src.getTitle()); - tgt.setKind(convertGuidePageKind(src.getKind())); - for (org.hl7.fhir.r4.model.CodeType t : src.getType()) - tgt.addType(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getPackage()) - tgt.addPackage(t.getValue()); - tgt.setFormat(src.getFormat()); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) - tgt.addPage(convertImplementationGuidePageComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PAGE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.PAGE; - case EXAMPLE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.EXAMPLE; - case LIST: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.LIST; - case INCLUDE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.INCLUDE; - case DIRECTORY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DIRECTORY; - case DICTIONARY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DICTIONARY; - case TOC: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.TOC; - case RESOURCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.RESOURCE; - default: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.NULL; - } - } - - public org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PAGE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.PAGE; - case EXAMPLE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.EXAMPLE; - case LIST: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.LIST; - case INCLUDE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.INCLUDE; - case DIRECTORY: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.DIRECTORY; - case DICTIONARY: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.DICTIONARY; - case TOC: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.TOC; - case RESOURCE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.RESOURCE; - default: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.NULL; - } - } - - - public org.hl7.fhir.r4.model.Location convertLocation(org.hl7.fhir.instance.model.Location src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Location tgt = new org.hl7.fhir.r4.model.Location(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertLocationStatus(src.getStatus())); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setMode(convertLocationMode(src.getMode())); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); - tgt.setPosition(convertLocationPositionComponent(src.getPosition())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setPartOf(convertReference(src.getPartOf())); - return tgt; - } - - public org.hl7.fhir.instance.model.Location convertLocation(org.hl7.fhir.r4.model.Location src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Location tgt = new org.hl7.fhir.instance.model.Location(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertLocationStatus(src.getStatus())); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - tgt.setMode(convertLocationMode(src.getMode())); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); - tgt.setPosition(convertLocationPositionComponent(src.getPosition())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setPartOf(convertReference(src.getPartOf())); - return tgt; - } - - public org.hl7.fhir.r4.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.instance.model.Location.LocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Location.LocationStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.Location.LocationStatus.SUSPENDED; - case INACTIVE: return org.hl7.fhir.r4.model.Location.LocationStatus.INACTIVE; - default: return org.hl7.fhir.r4.model.Location.LocationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.r4.model.Location.LocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.Location.LocationStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.instance.model.Location.LocationStatus.SUSPENDED; - case INACTIVE: return org.hl7.fhir.instance.model.Location.LocationStatus.INACTIVE; - default: return org.hl7.fhir.instance.model.Location.LocationStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Location.LocationMode convertLocationMode(org.hl7.fhir.instance.model.Location.LocationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.r4.model.Location.LocationMode.INSTANCE; - case KIND: return org.hl7.fhir.r4.model.Location.LocationMode.KIND; - default: return org.hl7.fhir.r4.model.Location.LocationMode.NULL; - } - } - - public org.hl7.fhir.instance.model.Location.LocationMode convertLocationMode(org.hl7.fhir.r4.model.Location.LocationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.instance.model.Location.LocationMode.INSTANCE; - case KIND: return org.hl7.fhir.instance.model.Location.LocationMode.KIND; - default: return org.hl7.fhir.instance.model.Location.LocationMode.NULL; - } - } - - public org.hl7.fhir.r4.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.instance.model.Location.LocationPositionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.r4.model.Location.LocationPositionComponent(); - copyElement(src, tgt); - tgt.setLongitude(src.getLongitude()); - tgt.setLatitude(src.getLatitude()); - tgt.setAltitude(src.getAltitude()); - return tgt; - } - - public org.hl7.fhir.instance.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.r4.model.Location.LocationPositionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.instance.model.Location.LocationPositionComponent(); - copyElement(src, tgt); - tgt.setLongitude(src.getLongitude()); - tgt.setLatitude(src.getLatitude()); - tgt.setAltitude(src.getAltitude()); - return tgt; - } - - public org.hl7.fhir.r4.model.Media convertMedia(org.hl7.fhir.instance.model.Media src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Media tgt = new org.hl7.fhir.r4.model.Media(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setType(convertDigitalMediaType(src.getType())); - tgt.setSubtype(convertCodeableConcept(src.getSubtype())); - tgt.setView(convertCodeableConcept(src.getView())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setOperator(convertReference(src.getOperator())); - tgt.getDevice().setDisplay(src.getDeviceName()); - tgt.setHeight(src.getHeight()); - tgt.setWidth(src.getWidth()); - tgt.setFrames(src.getFrames()); - tgt.setDuration(src.getDuration()); - tgt.setContent(convertAttachment(src.getContent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Media convertMedia(org.hl7.fhir.r4.model.Media src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Media tgt = new org.hl7.fhir.instance.model.Media(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setType(convertDigitalMediaType(src.getType())); - tgt.setSubtype(convertCodeableConcept(src.getSubtype())); - tgt.setView(convertCodeableConcept(src.getView())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setOperator(convertReference(src.getOperator())); - tgt.setDeviceName(src.getDevice().getDisplay()); - tgt.setHeight(src.getHeight()); - tgt.setWidth(src.getWidth()); - tgt.setFrames(src.getFrames()); - tgt.setDuration(src.getDuration()); - tgt.setContent(convertAttachment(src.getContent())); - return tgt; - } - - public org.hl7.fhir.r4.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.instance.model.Media.DigitalMediaType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHOTO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.PHOTO; - case VIDEO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.VIDEO; - case AUDIO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.AUDIO; - default: return org.hl7.fhir.r4.model.Media.DigitalMediaType.NULL; - } - } - - public org.hl7.fhir.instance.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.r4.model.Media.DigitalMediaType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHOTO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.PHOTO; - case VIDEO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.VIDEO; - case AUDIO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.AUDIO; - default: return org.hl7.fhir.instance.model.Media.DigitalMediaType.NULL; - } - } - - public org.hl7.fhir.r4.model.Medication convertMedication(org.hl7.fhir.instance.model.Medication src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Medication tgt = new org.hl7.fhir.r4.model.Medication(); - copyDomainResource(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setIsBrand(src.getIsBrand()); - tgt.setManufacturer(convertReference(src.getManufacturer())); -// tgt.setProduct(convertMedicationProductComponent(src.getProduct())); - tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); - return tgt; - } - - public org.hl7.fhir.instance.model.Medication convertMedication(org.hl7.fhir.r4.model.Medication src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Medication tgt = new org.hl7.fhir.instance.model.Medication(); - copyDomainResource(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setIsBrand(src.getIsBrand()); - tgt.setManufacturer(convertReference(src.getManufacturer())); -// tgt.setProduct(convertMedicationProductComponent(src.getProduct())); - tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); - return tgt; - } - -// public org.hl7.fhir.r4.model.Medication.MedicationProductComponent convertMedicationProductComponent(org.hl7.fhir.instance.model.Medication.MedicationProductComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.Medication.MedicationProductComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationProductComponent(); -// copyElement(src, tgt); -// tgt.setForm(convertCodeableConcept(src.getForm())); -// for (org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent t : src.getIngredient()) -// tgt.addIngredient(convertMedicationProductIngredientComponent(t)); -// for (org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent t : src.getBatch()) -// tgt.addBatch(convertMedicationProductBatchComponent(t)); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.Medication.MedicationProductComponent convertMedicationProductComponent(org.hl7.fhir.r4.model.Medication.MedicationProductComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.Medication.MedicationProductComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductComponent(); -// copyElement(src, tgt); -// tgt.setForm(convertCodeableConcept(src.getForm())); -// for (org.hl7.fhir.r4.model.Medication.MedicationProductIngredientComponent t : src.getIngredient()) -// tgt.addIngredient(convertMedicationProductIngredientComponent(t)); -// for (org.hl7.fhir.r4.model.Medication.MedicationProductBatchComponent t : src.getBatch()) -// tgt.addBatch(convertMedicationProductBatchComponent(t)); -// return tgt; -// } - -// public org.hl7.fhir.r4.model.Medication.MedicationProductIngredientComponent convertMedicationProductIngredientComponent(org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.Medication.MedicationProductIngredientComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationProductIngredientComponent(); -// copyElement(src, tgt); -// tgt.setItem(convertType(src.getItem())); -// tgt.setAmount(convertRatio(src.getAmount())); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent convertMedicationProductIngredientComponent(org.hl7.fhir.r4.model.Medication.MedicationProductIngredientComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent(); -// copyElement(src, tgt); -// if (src.hasItemReference()) -// tgt.setItem((org.hl7.fhir.instance.model.Reference) convertType(src.getItem())); -// tgt.setAmount(convertRatio(src.getAmount())); -// return tgt; -// } - -// public org.hl7.fhir.r4.model.Medication.MedicationProductBatchComponent convertMedicationProductBatchComponent(org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.Medication.MedicationProductBatchComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationProductBatchComponent(); -// copyElement(src, tgt); -// tgt.setLotNumber(src.getLotNumber()); -// tgt.setExpirationDate(src.getExpirationDate()); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent convertMedicationProductBatchComponent(org.hl7.fhir.r4.model.Medication.MedicationProductBatchComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent(); -// copyElement(src, tgt); -// tgt.setLotNumber(src.getLotNumber()); -// tgt.setExpirationDate(src.getExpirationDate()); -// return tgt; -// } - - public org.hl7.fhir.r4.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.instance.model.Medication.MedicationPackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationPackageComponent(); - copyElement(src, tgt); - tgt.setContainer(convertCodeableConcept(src.getContainer())); - for (org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent t : src.getContent()) - tgt.addContent(convertMedicationPackageContentComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.r4.model.Medication.MedicationPackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationPackageComponent(); - copyElement(src, tgt); - tgt.setContainer(convertCodeableConcept(src.getContainer())); - for (org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent t : src.getContent()) - tgt.addContent(convertMedicationPackageContentComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent(); - copyElement(src, tgt); - tgt.setItem(convertType(src.getItem())); - tgt.setAmount(convertSimpleQuantity(src.getAmount())); - return tgt; - } - - public org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent(); - copyElement(src, tgt); - if (src.hasItemReference()) - tgt.setItem((org.hl7.fhir.instance.model.Reference) convertType(src.getItem())); - tgt.setAmount(convertSimpleQuantity(src.getAmount())); - return tgt; - } - - public org.hl7.fhir.r4.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.instance.model.MedicationDispense src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.MedicationDispense tgt = new org.hl7.fhir.r4.model.MedicationDispense(); - copyDomainResource(src, tgt); - tgt.addIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); - tgt.setMedication(convertType(src.getMedication())); - tgt.setSubject(convertReference(src.getPatient())); -// tgt.setDispenser(convertReference(src.getDispenser())); - for (org.hl7.fhir.instance.model.Reference t : src.getAuthorizingPrescription()) - tgt.addAuthorizingPrescription(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); - tgt.setWhenPrepared(src.getWhenPrepared()); - tgt.setWhenHandedOver(src.getWhenHandedOver()); - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.instance.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - if (src.hasNote()) - tgt.addNote().setText(src.getNote()); - for (org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent t : src.getDosageInstruction()) - tgt.addDosageInstruction(convertMedicationDispenseDosageInstructionComponent(t)); - tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.r4.model.MedicationDispense src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationDispense tgt = new org.hl7.fhir.instance.model.MedicationDispense(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifierFirstRep())); - tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); - tgt.setMedication(convertType(src.getMedication())); - tgt.setPatient(convertReference(src.getSubject())); -// tgt.setDispenser(convertReference(src.getDispenser())); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthorizingPrescription()) - tgt.addAuthorizingPrescription(convertReference(t)); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); - tgt.setWhenPrepared(src.getWhenPrepared()); - tgt.setWhenHandedOver(src.getWhenHandedOver()); - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.r4.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.setNote(t.getText()); - for (org.hl7.fhir.r4.model.Dosage t : src.getDosageInstruction()) - tgt.addDosageInstruction(convertMedicationDispenseDosageInstructionComponent(t)); - tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); - return tgt; - } - - public org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.STOPPED; - default: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.STOPPED; - default: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Dosage convertMedicationDispenseDosageInstructionComponent(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Dosage tgt = new org.hl7.fhir.r4.model.Dosage(); - copyElement(src, tgt); - tgt.setText(src.getText()); -// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - if (src.hasSiteCodeableConcept()) - tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setDose(convertType(src.getDose())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent convertMedicationDispenseDosageInstructionComponent(Dosage src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent tgt = new org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent(); - copyElement(src, tgt); - tgt.setText(src.getText()); -// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - tgt.setSite(convertType(src.getSite())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setDose(convertType(src.getDose())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - - public org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); - copyElement(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getResponsibleParty()) - tgt.addResponsibleParty(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); - copyElement(src, tgt); - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getResponsibleParty()) - tgt.addResponsibleParty(convertReference(t)); - return tgt; - } - -// public org.hl7.fhir.r4.model.MedicationOrder convertMedicationOrder(org.hl7.fhir.instance.model.MedicationOrder src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.MedicationOrder tgt = new org.hl7.fhir.r4.model.MedicationOrder(); -// copyDomainResource(src, tgt); -// for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) -// tgt.addIdentifier(convertIdentifier(t)); -// tgt.setStatus(convertMedicationOrderStatus(src.getStatus())); -// tgt.setMedication(convertType(src.getMedication())); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setEncounter(convertReference(src.getEncounter())); -// if (src.hasDateWritten()) -// tgt.setDateWritten(src.getDateWritten()); -// tgt.setPrescriber(convertReference(src.getPrescriber())); -// if (src.hasReasonCodeableConcept()) -// tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); -// if (src.hasReasonReference()) -// tgt.addReasonReference(convertReference(src.getReasonReference())); -//// tgt.setDateEnded(src.getDateEnded()); -//// tgt.setReasonEnded(convertCodeableConcept(src.getReasonEnded())); -// if (src.hasNote()) -// tgt.addNote().setText(src.getNote()); -// for (org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent t : src.getDosageInstruction()) -// tgt.addDosageInstruction(convertMedicationOrderDosageInstructionComponent(t)); -// tgt.setDispenseRequest(convertMedicationOrderDispenseRequestComponent(src.getDispenseRequest())); -// tgt.setSubstitution(convertMedicationOrderSubstitutionComponent(src.getSubstitution())); -// tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.MedicationOrder convertMedicationOrder(org.hl7.fhir.r4.model.MedicationOrder src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.MedicationOrder tgt = new org.hl7.fhir.instance.model.MedicationOrder(); -// copyDomainResource(src, tgt); -// for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) -// tgt.addIdentifier(convertIdentifier(t)); -// tgt.setStatus(convertMedicationOrderStatus(src.getStatus())); -// tgt.setMedication(convertType(src.getMedication())); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setEncounter(convertReference(src.getEncounter())); -// if (src.hasDateWritten()) -// tgt.setDateWritten(src.getDateWritten()); -// tgt.setPrescriber(convertReference(src.getPrescriber())); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) -// tgt.setReason(convertCodeableConcept(t)); -// for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) -// tgt.setReason(convertReference(t)); -//// tgt.setDateEnded(src.getDateEnded()); -//// tgt.setReasonEnded(convertCodeableConcept(src.getReasonEnded())); -// for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) -// tgt.setNote(t.getText()); -// for (org.hl7.fhir.r4.model.DosageInstruction t : src.getDosageInstruction()) -// tgt.addDosageInstruction(convertMedicationOrderDosageInstructionComponent(t)); -// tgt.setDispenseRequest(convertMedicationOrderDispenseRequestComponent(src.getDispenseRequest())); -// tgt.setSubstitution(convertMedicationOrderSubstitutionComponent(src.getSubstitution())); -// tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); -// return tgt; -// } -// -// public org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus convertMedicationOrderStatus(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case ACTIVE: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.ACTIVE; -// case ONHOLD: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.ONHOLD; -// case COMPLETED: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.COMPLETED; -// case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.ENTEREDINERROR; -// case STOPPED: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.STOPPED; -// case DRAFT: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.DRAFT; -// default: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.NULL; -// } -// } -// -// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus convertMedicationOrderStatus(org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case ACTIVE: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ACTIVE; -// case ONHOLD: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ONHOLD; -// case COMPLETED: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.COMPLETED; -// case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ENTEREDINERROR; -// case STOPPED: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.STOPPED; -// case DRAFT: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.DRAFT; -// default: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.NULL; -// } -// } - - public org.hl7.fhir.r4.model.Dosage convertMedicationOrderDosageInstructionComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Dosage tgt = new org.hl7.fhir.r4.model.Dosage(); - copyElement(src, tgt); - tgt.setText(src.getText()); -// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - if (src.hasSiteCodeableConcept()) - tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setDose(convertType(src.getDose())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent convertMedicationOrderDosageInstructionComponent(org.hl7.fhir.r4.model.Dosage src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent(); - copyElement(src, tgt); - tgt.setText(src.getText()); -// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - tgt.setSite(convertType(src.getSite())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setDose(convertType(src.getDose())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - -// public org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderDispenseRequestComponent convertMedicationOrderDispenseRequestComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderDispenseRequestComponent tgt = new org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderDispenseRequestComponent(); -// copyElement(src, tgt); -//// tgt.setMedication(convertType(src.getMedication())); -// tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); -// tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); -// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); -// tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent convertMedicationOrderDispenseRequestComponent(org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderDispenseRequestComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent(); -// copyElement(src, tgt); -//// tgt.setMedication(convertType(src.getMedication())); -// tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); -// tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); -// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); -// tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); -// return tgt; -// } -// -// public org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderSubstitutionComponent convertMedicationOrderSubstitutionComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderSubstitutionComponent tgt = new org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderSubstitutionComponent(); -// copyElement(src, tgt); -//// tgt.setType(convertCodeableConcept(src.getType())); -// tgt.setReason(convertCodeableConcept(src.getReason())); -// return tgt; -// } -// -// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent convertMedicationOrderSubstitutionComponent(org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderSubstitutionComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent(); -// copyElement(src, tgt); -//// tgt.setType(convertCodeableConcept(src.getType())); -// tgt.setReason(convertCodeableConcept(src.getReason())); -// return tgt; -// } - - public org.hl7.fhir.r4.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.instance.model.MedicationStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.MedicationStatement tgt = new org.hl7.fhir.r4.model.MedicationStatement(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); - tgt.setMedication(convertType(src.getMedication())); - tgt.setSubject(convertReference(src.getPatient())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setInformationSource(convertReference(src.getInformationSource())); - for (org.hl7.fhir.instance.model.Reference t : src.getSupportingInformation()) - tgt.addDerivedFrom(convertReference(t)); - if (src.hasDateAsserted()) - tgt.setDateAsserted(src.getDateAsserted()); -// tgt.getNotTakenElement().setValueAsString(src.getWasNotTaken() ? "Y" : "N"); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotTaken()) - tgt.addReasonNotTaken(convertCodeableConcept(t)); -// tgt.setReasonForUse(convertType(src.getReasonForUse())); - if (src.hasNote()) - tgt.addNote().setText(src.getNote()); - for (org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent t : src.getDosage()) - tgt.addDosage(convertMedicationStatementDosageComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.r4.model.MedicationStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationStatement tgt = new org.hl7.fhir.instance.model.MedicationStatement(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); - tgt.setMedication(convertType(src.getMedication())); - tgt.setPatient(convertReference(src.getSubject())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setInformationSource(convertReference(src.getInformationSource())); - for (org.hl7.fhir.r4.model.Reference t : src.getDerivedFrom()) - tgt.addSupportingInformation(convertReference(t)); - if (src.hasDateAsserted()) - tgt.setDateAsserted(src.getDateAsserted()); -// tgt.setWasNotTaken("Y".equals(src.getNotTakenElement().getValueAsString())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotTaken()) - tgt.addReasonNotTaken(convertCodeableConcept(t)); -// tgt.setReasonForUse(convertType(src.getReasonForUse())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.setNote(t.getText()); - for (org.hl7.fhir.r4.model.Dosage t : src.getDosage()) - tgt.addDosage(convertMedicationStatementDosageComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; - case INTENDED: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.INTENDED; - default: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; - case INTENDED: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.INTENDED; - default: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Dosage convertMedicationStatementDosageComponent(org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Dosage tgt = new org.hl7.fhir.r4.model.Dosage(); - copyElement(src, tgt); - tgt.setText(src.getText()); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - if (src.hasSiteCodeableConcept()) - tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); -// tgt.setQuantity(convertType(src.getQuantity())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent convertMedicationStatementDosageComponent(org.hl7.fhir.r4.model.Dosage src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent tgt = new org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent(); - copyElement(src, tgt); - tgt.setText(src.getText()); - tgt.setTiming(convertTiming(src.getTiming())); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - tgt.setSite(convertType(src.getSite())); - tgt.setRoute(convertCodeableConcept(src.getRoute())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); -// tgt.setQuantity(convertType(src.getQuantity())); - tgt.setRate(convertType(src.getRate())); - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - return tgt; - } - - public org.hl7.fhir.r4.model.MessageHeader convertMessageHeader(org.hl7.fhir.instance.model.MessageHeader src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.MessageHeader tgt = new org.hl7.fhir.r4.model.MessageHeader(); - copyDomainResource(src, tgt); - tgt.setTimestamp(src.getTimestamp()); - tgt.setEvent(convertCoding(src.getEvent())); - tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); - tgt.setSource(convertMessageSourceComponent(src.getSource())); - for (org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) - tgt.addDestination(convertMessageDestinationComponent(t)); - tgt.setEnterer(convertReference(src.getEnterer())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setResponsible(convertReference(src.getResponsible())); - tgt.setReason(convertCodeableConcept(src.getReason())); - for (org.hl7.fhir.instance.model.Reference t : src.getData()) - tgt.addFocus(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.MessageHeader convertMessageHeader(org.hl7.fhir.r4.model.MessageHeader src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MessageHeader tgt = new org.hl7.fhir.instance.model.MessageHeader(); - copyDomainResource(src, tgt); - tgt.setTimestamp(src.getTimestamp()); - tgt.setEvent(convertCoding(src.getEvent())); - tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); - tgt.setSource(convertMessageSourceComponent(src.getSource())); - for (org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) - tgt.addDestination(convertMessageDestinationComponent(t)); - tgt.setEnterer(convertReference(src.getEnterer())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setResponsible(convertReference(src.getResponsible())); - tgt.setReason(convertCodeableConcept(src.getReason())); - for (org.hl7.fhir.r4.model.Reference t : src.getFocus()) - tgt.addData(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setCode(convertResponseType(src.getCode())); - tgt.setDetails(convertReference(src.getDetails())); - return tgt; - } - - public org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setCode(convertResponseType(src.getCode())); - tgt.setDetails(convertReference(src.getDetails())); - return tgt; - } - - public org.hl7.fhir.r4.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.instance.model.MessageHeader.ResponseType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OK: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.OK; - case TRANSIENTERROR: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.TRANSIENTERROR; - case FATALERROR: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.FATALERROR; - default: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.NULL; - } - } - - public org.hl7.fhir.instance.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.r4.model.MessageHeader.ResponseType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OK: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.OK; - case TRANSIENTERROR: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.TRANSIENTERROR; - case FATALERROR: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.FATALERROR; - default: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.NULL; - } - } - - public org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setSoftware(src.getSoftware()); - tgt.setVersion(src.getVersion()); - tgt.setContact(convertContactPoint(src.getContact())); - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setSoftware(src.getSoftware()); - tgt.setVersion(src.getVersion()); - tgt.setContact(convertContactPoint(src.getContact())); - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setTarget(convertReference(src.getTarget())); - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setTarget(convertReference(src.getTarget())); - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public org.hl7.fhir.r4.model.NamingSystem convertNamingSystem(org.hl7.fhir.instance.model.NamingSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.NamingSystem tgt = new org.hl7.fhir.r4.model.NamingSystem(); - copyDomainResource(src, tgt); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertNamingSystemType(src.getKind())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent t : src.getContact()) - tgt.addContact(convertNamingSystemContactComponent(t)); - tgt.setResponsible(src.getResponsible()); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setUsage(src.getUsage()); - for (org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) - tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); - tgt.setReplacedBy(convertReference(src.getReplacedBy())); - return tgt; - } - - public org.hl7.fhir.instance.model.NamingSystem convertNamingSystem(org.hl7.fhir.r4.model.NamingSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.NamingSystem tgt = new org.hl7.fhir.instance.model.NamingSystem(); - copyDomainResource(src, tgt); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertNamingSystemType(src.getKind())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertNamingSystemContactComponent(t)); - tgt.setResponsible(src.getResponsible()); - tgt.setType(convertCodeableConcept(src.getType())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setUsage(src.getUsage()); - for (org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) - tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); - tgt.setReplacedBy(convertReference(src.getReplacedBy())); - return tgt; - } - - public org.hl7.fhir.r4.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.instance.model.NamingSystem.NamingSystemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODESYSTEM: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.CODESYSTEM; - case IDENTIFIER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.IDENTIFIER; - case ROOT: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.ROOT; - default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.NULL; - } - } - - public org.hl7.fhir.instance.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODESYSTEM: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.CODESYSTEM; - case IDENTIFIER: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.IDENTIFIER; - case ROOT: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.ROOT; - default: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.NULL; - } - } - - public org.hl7.fhir.r4.model.ContactDetail convertNamingSystemContactComponent(org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent convertNamingSystemContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent tgt = new org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent(); - copyElement(src, tgt); - tgt.setType(convertNamingSystemIdentifierType(src.getType())); - tgt.setValue(src.getValue()); - tgt.setPreferred(src.getPreferred()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent(); - copyElement(src, tgt); - tgt.setType(convertNamingSystemIdentifierType(src.getType())); - tgt.setValue(src.getValue()); - tgt.setPreferred(src.getPreferred()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OID; - case UUID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.UUID; - case URI: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.URI; - case OTHER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OTHER; - default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.NULL; - } - } - - public org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OID: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.OID; - case UUID: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.UUID; - case URI: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.URI; - case OTHER: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.OTHER; - default: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.NULL; - } - } - - public org.hl7.fhir.r4.model.Observation convertObservation(org.hl7.fhir.instance.model.Observation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Observation tgt = new org.hl7.fhir.r4.model.Observation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertObservationStatus(src.getStatus())); - tgt.addCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setIssued(src.getIssued()); - for (org.hl7.fhir.instance.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - tgt.setValue(convertType(src.getValue())); - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); - tgt.setComment(src.getComments()); - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setSpecimen(convertReference(src.getSpecimen())); - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - for (org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent t : src.getRelated()) - tgt.addRelated(convertObservationRelatedComponent(t)); - for (org.hl7.fhir.instance.model.Observation.ObservationComponentComponent t : src.getComponent()) - tgt.addComponent(convertObservationComponentComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Observation convertObservation(org.hl7.fhir.r4.model.Observation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Observation tgt = new org.hl7.fhir.instance.model.Observation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertObservationStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.CodeableConcept c : src.getCategory()) - tgt.setCategory(convertCodeableConcept(c)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setEffective(convertType(src.getEffective())); - tgt.setIssued(src.getIssued()); - for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - tgt.setValue(convertType(src.getValue())); - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); - tgt.setComments(src.getComment()); - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - tgt.setSpecimen(convertReference(src.getSpecimen())); - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - for (org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent t : src.getRelated()) - tgt.addRelated(convertObservationRelatedComponent(t)); - for (org.hl7.fhir.r4.model.Observation.ObservationComponentComponent t : src.getComponent()) - tgt.addComponent(convertObservationComponentComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.instance.model.Observation.ObservationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.REGISTERED; - case PRELIMINARY: return org.hl7.fhir.r4.model.Observation.ObservationStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.r4.model.Observation.ObservationStatus.FINAL; - case AMENDED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.AMENDED; - case CANCELLED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Observation.ObservationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.Observation.ObservationStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.Observation.ObservationStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.r4.model.Observation.ObservationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.REGISTERED; - case PRELIMINARY: return org.hl7.fhir.instance.model.Observation.ObservationStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.instance.model.Observation.ObservationStatus.FINAL; - case AMENDED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.AMENDED; - case CANCELLED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Observation.ObservationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.instance.model.Observation.ObservationStatus.UNKNOWN; - default: return org.hl7.fhir.instance.model.Observation.ObservationStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - tgt.setType(convertCodeableConcept(src.getMeaning())); - tgt.setAge(convertRange(src.getAge())); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); -// for (org.hl7.fhir.r4.model.CodeableConcept c : src.getMeaning()) - tgt.setMeaning(convertCodeableConcept(src.getType())); - tgt.setAge(convertRange(src.getAge())); - tgt.setText(src.getText()); - return tgt; - } - - public org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent(); - copyElement(src, tgt); - tgt.setType(convertObservationRelationshipType(src.getType())); - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - public org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent(); - copyElement(src, tgt); - tgt.setType(convertObservationRelationshipType(src.getType())); - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - public org.hl7.fhir.r4.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.instance.model.Observation.ObservationRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HASMEMBER: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.HASMEMBER; - case DERIVEDFROM: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.DERIVEDFROM; - case SEQUELTO: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.SEQUELTO; - case REPLACES: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.REPLACES; - case QUALIFIEDBY: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.QUALIFIEDBY; - case INTERFEREDBY: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.INTERFEREDBY; - default: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.NULL; - } - } - - public org.hl7.fhir.instance.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.r4.model.Observation.ObservationRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HASMEMBER: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.HASMEMBER; - case DERIVEDFROM: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.DERIVEDFROM; - case SEQUELTO: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.SEQUELTO; - case REPLACES: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.REPLACES; - case QUALIFIEDBY: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.QUALIFIEDBY; - case INTERFEREDBY: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.INTERFEREDBY; - default: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.NULL; - } - } - - public org.hl7.fhir.r4.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.instance.model.Observation.ObservationComponentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationComponentComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(convertType(src.getValue())); - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - for (org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.r4.model.Observation.ObservationComponentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationComponentComponent(); - copyElement(src, tgt); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setValue(convertType(src.getValue())); - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - for (org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.instance.model.OperationDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.OperationDefinition tgt = new org.hl7.fhir.r4.model.OperationDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertOperationKind(src.getKind())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent t : src.getContact()) - tgt.addContact(convertOperationDefinitionContactComponent(t)); - tgt.setDescription(src.getDescription()); - tgt.setPurpose(src.getRequirements()); - if (src.hasIdempotent()) - tgt.setIdempotent(src.getIdempotent()); - tgt.setCode(src.getCode()); - tgt.setComment(src.getNotes()); - tgt.setBase(convertReference(src.getBase())); - tgt.setSystem(src.getSystem()); - for (org.hl7.fhir.instance.model.CodeType t : src.getType()) - tgt.addResource(t.getValue()); - tgt.setType(tgt.hasResource()); - tgt.setInstance(src.getInstance()); - for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) - tgt.addParameter(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.r4.model.OperationDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationDefinition tgt = new org.hl7.fhir.instance.model.OperationDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertOperationKind(src.getKind())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertOperationDefinitionContactComponent(t)); - tgt.setDescription(src.getDescription()); - tgt.setRequirements(src.getPurpose()); - tgt.setIdempotent(src.getIdempotent()); - tgt.setCode(src.getCode()); - tgt.setNotes(src.getComment()); - if (src.hasBase()) - tgt.setBase(convertReference(src.getBase())); - tgt.setSystem(src.getSystem()); - if (src.getType()) - for (org.hl7.fhir.r4.model.CodeType t : src.getResource()) - tgt.addType(t.getValue()); - tgt.setInstance(src.getInstance()); - for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) - tgt.addParameter(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.instance.model.OperationDefinition.OperationKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OPERATION: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.OPERATION; - case QUERY: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.QUERY; - default: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.NULL; - } - } - - public org.hl7.fhir.instance.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.r4.model.OperationDefinition.OperationKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OPERATION: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.OPERATION; - case QUERY: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.QUERY; - default: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.NULL; - } - } - - public org.hl7.fhir.r4.model.ContactDetail convertOperationDefinitionContactComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent convertOperationDefinitionContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setUse(convertOperationParameterUse(src.getUse())); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - tgt.setDocumentation(src.getDocumentation()); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); - for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) - tgt.addPart(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setUse(convertOperationParameterUse(src.getUse())); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - tgt.setDocumentation(src.getDocumentation()); - if (src.hasSearchType()) { - tgt.setType(src.getSearchType().toCode()); - tgt.setType("string"); - } else - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - if (src.hasBinding()) - tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); - for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) - tgt.addPart(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.IN; - case OUT: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.OUT; - default: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.NULL; - } - } - - public org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.IN; - case OUT: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.OUT; - default: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.NULL; - } - } - - public org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public org.hl7.fhir.r4.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.instance.model.OperationOutcome src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.OperationOutcome tgt = new org.hl7.fhir.r4.model.OperationOutcome(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) - tgt.addIssue(convertOperationOutcomeIssueComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.r4.model.OperationOutcome src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationOutcome tgt = new org.hl7.fhir.instance.model.OperationOutcome(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) - tgt.addIssue(convertOperationOutcomeIssueComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent(); - copyElement(src, tgt); - tgt.setSeverity(convertIssueSeverity(src.getSeverity())); - tgt.setCode(convertIssueType(src.getCode())); - tgt.setDetails(convertCodeableConcept(src.getDetails())); - tgt.setDiagnostics(src.getDiagnostics()); - for (org.hl7.fhir.instance.model.StringType t : src.getLocation()) - tgt.addLocation(t.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent(); - copyElement(src, tgt); - tgt.setSeverity(convertIssueSeverity(src.getSeverity())); - tgt.setCode(convertIssueType(src.getCode())); - tgt.setDetails(convertCodeableConcept(src.getDetails())); - tgt.setDiagnostics(src.getDiagnostics()); - for (org.hl7.fhir.r4.model.StringType t : src.getLocation()) - tgt.addLocation(t.getValue()); - return tgt; - } - - public org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FATAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.FATAL; - case ERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.ERROR; - case WARNING: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.WARNING; - case INFORMATION: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.INFORMATION; - default: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.NULL; - } - } - - public org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FATAL: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.FATAL; - case ERROR: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.ERROR; - case WARNING: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.WARNING; - case INFORMATION: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.INFORMATION; - default: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.NULL; - } - } - - public org.hl7.fhir.r4.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.instance.model.OperationOutcome.IssueType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVALID; - case STRUCTURE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.STRUCTURE; - case REQUIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.REQUIRED; - case VALUE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.VALUE; - case INVARIANT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVARIANT; - case SECURITY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SECURITY; - case LOGIN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOGIN; - case UNKNOWN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.UNKNOWN; - case EXPIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXPIRED; - case FORBIDDEN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.FORBIDDEN; - case SUPPRESSED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SUPPRESSED; - case PROCESSING: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.PROCESSING; - case NOTSUPPORTED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTSUPPORTED; - case DUPLICATE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.DUPLICATE; - case NOTFOUND: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTFOUND; - case TOOLONG: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOLONG; - case CODEINVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CODEINVALID; - case EXTENSION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXTENSION; - case TOOCOSTLY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOCOSTLY; - case BUSINESSRULE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.BUSINESSRULE; - case CONFLICT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CONFLICT; - case INCOMPLETE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INCOMPLETE; - case TRANSIENT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TRANSIENT; - case LOCKERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOCKERROR; - case NOSTORE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOSTORE; - case EXCEPTION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXCEPTION; - case TIMEOUT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TIMEOUT; - case THROTTLED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.THROTTLED; - case INFORMATIONAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INFORMATIONAL; - default: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NULL; - } - } - - public org.hl7.fhir.instance.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.r4.model.OperationOutcome.IssueType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INVALID: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INVALID; - case STRUCTURE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.STRUCTURE; - case REQUIRED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.REQUIRED; - case VALUE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.VALUE; - case INVARIANT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INVARIANT; - case SECURITY: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.SECURITY; - case LOGIN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.LOGIN; - case UNKNOWN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.UNKNOWN; - case EXPIRED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXPIRED; - case FORBIDDEN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.FORBIDDEN; - case SUPPRESSED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.SUPPRESSED; - case PROCESSING: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.PROCESSING; - case NOTSUPPORTED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOTSUPPORTED; - case DUPLICATE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.DUPLICATE; - case NOTFOUND: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOTFOUND; - case TOOLONG: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TOOLONG; - case CODEINVALID: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.CODEINVALID; - case EXTENSION: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXTENSION; - case TOOCOSTLY: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TOOCOSTLY; - case BUSINESSRULE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.BUSINESSRULE; - case CONFLICT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.CONFLICT; - case INCOMPLETE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INCOMPLETE; - case TRANSIENT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TRANSIENT; - case LOCKERROR: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.LOCKERROR; - case NOSTORE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOSTORE; - case EXCEPTION: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXCEPTION; - case TIMEOUT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TIMEOUT; - case THROTTLED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.THROTTLED; - case INFORMATIONAL: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INFORMATIONAL; - default: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NULL; - } - } - - - public org.hl7.fhir.r4.model.Organization convertOrganization(org.hl7.fhir.instance.model.Organization src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Organization tgt = new org.hl7.fhir.r4.model.Organization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - tgt.addType(convertCodeableConcept(src.getType())); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.instance.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setPartOf(convertReference(src.getPartOf())); - for (org.hl7.fhir.instance.model.Organization.OrganizationContactComponent t : src.getContact()) - tgt.addContact(convertOrganizationContactComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Organization convertOrganization(org.hl7.fhir.r4.model.Organization src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Organization tgt = new org.hl7.fhir.instance.model.Organization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - tgt.setType(convertCodeableConcept(src.getTypeFirstRep())); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.r4.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setPartOf(convertReference(src.getPartOf())); - for (org.hl7.fhir.r4.model.Organization.OrganizationContactComponent t : src.getContact()) - tgt.addContact(convertOrganizationContactComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.instance.model.Organization.OrganizationContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.r4.model.Organization.OrganizationContactComponent(); - copyElement(src, tgt); - tgt.setPurpose(convertCodeableConcept(src.getPurpose())); - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - return tgt; - } - - public org.hl7.fhir.instance.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.r4.model.Organization.OrganizationContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.instance.model.Organization.OrganizationContactComponent(); - copyElement(src, tgt); - tgt.setPurpose(convertCodeableConcept(src.getPurpose())); - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - return tgt; - } - - - public org.hl7.fhir.r4.model.Patient convertPatient(org.hl7.fhir.instance.model.Patient src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Patient tgt = new org.hl7.fhir.r4.model.Patient(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - for (org.hl7.fhir.instance.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - tgt.setDeceased(convertType(src.getDeceased())); - for (org.hl7.fhir.instance.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); - tgt.setMultipleBirth(convertType(src.getMultipleBirth())); - for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - for (org.hl7.fhir.instance.model.Patient.ContactComponent t : src.getContact()) - tgt.addContact(convertContactComponent(t)); - tgt.setAnimal(convertAnimalComponent(src.getAnimal())); - for (org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent t : src.getCommunication()) - tgt.addCommunication(convertPatientCommunicationComponent(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getCareProvider()) - tgt.addGeneralPractitioner(convertReference(t)); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - for (org.hl7.fhir.instance.model.Patient.PatientLinkComponent t : src.getLink()) - tgt.addLink(convertPatientLinkComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Patient convertPatient(org.hl7.fhir.r4.model.Patient src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Patient tgt = new org.hl7.fhir.instance.model.Patient(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - for (org.hl7.fhir.r4.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - tgt.setDeceased(convertType(src.getDeceased())); - for (org.hl7.fhir.r4.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); - tgt.setMultipleBirth(convertType(src.getMultipleBirth())); - for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - for (org.hl7.fhir.r4.model.Patient.ContactComponent t : src.getContact()) - tgt.addContact(convertContactComponent(t)); - tgt.setAnimal(convertAnimalComponent(src.getAnimal())); - for (org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent t : src.getCommunication()) - tgt.addCommunication(convertPatientCommunicationComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getGeneralPractitioner()) - tgt.addCareProvider(convertReference(t)); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - for (org.hl7.fhir.r4.model.Patient.PatientLinkComponent t : src.getLink()) - tgt.addLink(convertPatientLinkComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.instance.model.Patient.ContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Patient.ContactComponent tgt = new org.hl7.fhir.r4.model.Patient.ContactComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRelationship()) - tgt.addRelationship(convertCodeableConcept(t)); - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setOrganization(convertReference(src.getOrganization())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.r4.model.Patient.ContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Patient.ContactComponent tgt = new org.hl7.fhir.instance.model.Patient.ContactComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRelationship()) - tgt.addRelationship(convertCodeableConcept(t)); - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setAddress(convertAddress(src.getAddress())); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setOrganization(convertReference(src.getOrganization())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.r4.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.instance.model.Patient.AnimalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Patient.AnimalComponent tgt = new org.hl7.fhir.r4.model.Patient.AnimalComponent(); - copyElement(src, tgt); - tgt.setSpecies(convertCodeableConcept(src.getSpecies())); - tgt.setBreed(convertCodeableConcept(src.getBreed())); - tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); - return tgt; - } - - public org.hl7.fhir.instance.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.r4.model.Patient.AnimalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Patient.AnimalComponent tgt = new org.hl7.fhir.instance.model.Patient.AnimalComponent(); - copyElement(src, tgt); - tgt.setSpecies(convertCodeableConcept(src.getSpecies())); - tgt.setBreed(convertCodeableConcept(src.getBreed())); - tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); - return tgt; - } - - public org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent(); - copyElement(src, tgt); - tgt.setLanguage(convertCodeableConcept(src.getLanguage())); - tgt.setPreferred(src.getPreferred()); - return tgt; - } - - public org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent(); - copyElement(src, tgt); - tgt.setLanguage(convertCodeableConcept(src.getLanguage())); - tgt.setPreferred(src.getPreferred()); - return tgt; - } - - public org.hl7.fhir.r4.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.instance.model.Patient.PatientLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.r4.model.Patient.PatientLinkComponent(); - copyElement(src, tgt); - tgt.setOther(convertReference(src.getOther())); - tgt.setType(convertLinkType(src.getType())); - return tgt; - } - - public org.hl7.fhir.instance.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.r4.model.Patient.PatientLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.instance.model.Patient.PatientLinkComponent(); - copyElement(src, tgt); - tgt.setOther(convertReference(src.getOther())); - tgt.setType(convertLinkType(src.getType())); - return tgt; - } - - public org.hl7.fhir.r4.model.Patient.LinkType convertLinkType(org.hl7.fhir.instance.model.Patient.LinkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACE: return org.hl7.fhir.r4.model.Patient.LinkType.REPLACEDBY; - case REFER: return org.hl7.fhir.r4.model.Patient.LinkType.REFER; - case SEEALSO: return org.hl7.fhir.r4.model.Patient.LinkType.SEEALSO; - default: return org.hl7.fhir.r4.model.Patient.LinkType.NULL; - } - } - - public org.hl7.fhir.instance.model.Patient.LinkType convertLinkType(org.hl7.fhir.r4.model.Patient.LinkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACEDBY: return org.hl7.fhir.instance.model.Patient.LinkType.REPLACE; - case REPLACES: return org.hl7.fhir.instance.model.Patient.LinkType.REPLACE; - case REFER: return org.hl7.fhir.instance.model.Patient.LinkType.REFER; - case SEEALSO: return org.hl7.fhir.instance.model.Patient.LinkType.SEEALSO; - default: return org.hl7.fhir.instance.model.Patient.LinkType.NULL; - } - } - - - public org.hl7.fhir.r4.model.Person convertPerson(org.hl7.fhir.instance.model.Person src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Person tgt = new org.hl7.fhir.r4.model.Person(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.instance.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.instance.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setPhoto(convertAttachment(src.getPhoto())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setActive(src.getActive()); - for (org.hl7.fhir.instance.model.Person.PersonLinkComponent t : src.getLink()) - tgt.addLink(convertPersonLinkComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Person convertPerson(org.hl7.fhir.r4.model.Person src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Person tgt = new org.hl7.fhir.instance.model.Person(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.r4.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setPhoto(convertAttachment(src.getPhoto())); - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - tgt.setActive(src.getActive()); - for (org.hl7.fhir.r4.model.Person.PersonLinkComponent t : src.getLink()) - tgt.addLink(convertPersonLinkComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.instance.model.Person.PersonLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.r4.model.Person.PersonLinkComponent(); - copyElement(src, tgt); - tgt.setTarget(convertReference(src.getTarget())); - tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); - return tgt; - } - - public org.hl7.fhir.instance.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.r4.model.Person.PersonLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.instance.model.Person.PersonLinkComponent(); - copyElement(src, tgt); - tgt.setTarget(convertReference(src.getTarget())); - tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); - return tgt; - } - - public org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LEVEL1: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL1; - case LEVEL2: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL2; - case LEVEL3: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL3; - case LEVEL4: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL4; - default: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.NULL; - } - } - - public org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LEVEL1: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL1; - case LEVEL2: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL2; - case LEVEL3: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL3; - case LEVEL4: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL4; - default: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.NULL; - } - } - - public org.hl7.fhir.r4.model.Practitioner convertPractitioner(org.hl7.fhir.instance.model.Practitioner src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Practitioner tgt = new org.hl7.fhir.r4.model.Practitioner(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - if (src.hasName()) - tgt.addName(convertHumanName(src.getName())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.instance.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); -// for (org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent t : src.getPractitionerRole()) -// tgt.addRole(convertPractitionerPractitionerRoleComponent(t)); - for (org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) - tgt.addQualification(convertPractitionerQualificationComponent(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCommunication()) - tgt.addCommunication(convertCodeableConcept(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Practitioner convertPractitioner(org.hl7.fhir.r4.model.Practitioner src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Practitioner tgt = new org.hl7.fhir.instance.model.Practitioner(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setActive(src.getActive()); - for (org.hl7.fhir.r4.model.HumanName t : src.getName()) - tgt.setName(convertHumanName(t)); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.r4.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); -// for (org.hl7.fhir.r4.model.Practitioner.PractitionerRoleComponent t : src.getRole()) -// tgt.addPractitionerRole(convertPractitionerPractitionerRoleComponent(t)); - for (org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) - tgt.addQualification(convertPractitionerQualificationComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCommunication()) - tgt.addCommunication(convertCodeableConcept(t)); - return tgt; - } - -// public org.hl7.fhir.r4.model.Practitioner.PractitionerRoleComponent convertPractitionerPractitionerRoleComponent(org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.r4.model.Practitioner.PractitionerRoleComponent tgt = new org.hl7.fhir.r4.model.Practitioner.PractitionerRoleComponent(); -// copyElement(src, tgt); -// tgt.setOrganization(convertReference(src.getManagingOrganization())); -// tgt.setCode(convertCodeableConcept(src.getRole())); -// for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialty()) -// tgt.addSpecialty(convertCodeableConcept(t)); -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// for (org.hl7.fhir.instance.model.Reference t : src.getLocation()) -// tgt.addLocation(convertReference(t)); -// for (org.hl7.fhir.instance.model.Reference t : src.getHealthcareService()) -// tgt.addHealthcareService(convertReference(t)); -// return tgt; -// } - -// public org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent convertPractitionerPractitionerRoleComponent(org.hl7.fhir.r4.model.Practitioner.PractitionerRoleComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent tgt = new org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent(); -// copyElement(src, tgt); -// tgt.setManagingOrganization(convertReference(src.getOrganization())); -// tgt.setRole(convertCodeableConcept(src.getCode())); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) -// tgt.addSpecialty(convertCodeableConcept(t)); -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// for (org.hl7.fhir.r4.model.Reference t : src.getLocation()) -// tgt.addLocation(convertReference(t)); -// for (org.hl7.fhir.r4.model.Reference t : src.getHealthcareService()) -// tgt.addHealthcareService(convertReference(t)); -// return tgt; -// } - - public org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setIssuer(convertReference(src.getIssuer())); - return tgt; - } - - public org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setIssuer(convertReference(src.getIssuer())); - return tgt; - } - - public org.hl7.fhir.r4.model.Procedure convertProcedure(org.hl7.fhir.instance.model.Procedure src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Procedure tgt = new org.hl7.fhir.r4.model.Procedure(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setStatus(convertProcedureStatus(src.getStatus())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setNotDone(src.getNotPerformed()); -// for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotPerformed()) - if (src.hasReasonNotPerformed()) - tgt.setNotDoneReason(convertCodeableConcept(src.getReasonNotPerformed().get(0))); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - if (src.hasReasonCodeableConcept()) - tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); - for (org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) - tgt.addPerformer(convertProcedurePerformerComponent(t)); - tgt.setPerformed(convertType(src.getPerformed())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - for (org.hl7.fhir.instance.model.Reference t : src.getReport()) - tgt.addReport(convertReference(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getComplication()) - tgt.addComplication(convertCodeableConcept(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getFollowUp()) - tgt.addFollowUp(convertCodeableConcept(t)); - tgt.addBasedOn(convertReference(src.getRequest())); -// for (org.hl7.fhir.instance.model.Annotation t : src.getNotes()) -// tgt.addNotes(convertAnnotation(t)); - for (org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) - tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Procedure convertProcedure(org.hl7.fhir.r4.model.Procedure src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Procedure tgt = new org.hl7.fhir.instance.model.Procedure(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setStatus(convertProcedureStatus(src.getStatus())); - tgt.setCategory(convertCodeableConcept(src.getCategory())); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setNotPerformed(src.getNotDone()); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotPerformed()) - tgt.addReasonNotPerformed(convertCodeableConcept(src.getNotDoneReason())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - tgt.setReason(convertType(src.getReasonCodeFirstRep())); - for (org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) - tgt.addPerformer(convertProcedurePerformerComponent(t)); - tgt.setPerformed(convertType(src.getPerformed())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setLocation(convertReference(src.getLocation())); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - for (org.hl7.fhir.r4.model.Reference t : src.getReport()) - tgt.addReport(convertReference(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getComplication()) - tgt.addComplication(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getFollowUp()) - tgt.addFollowUp(convertCodeableConcept(t)); - tgt.setRequest(convertReference(src.getBasedOnFirstRep())); -// for (org.hl7.fhir.r4.model.Annotation t : src.getNotes()) -// tgt.addNotes(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) - tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.instance.model.Procedure.ProcedureStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.INPROGRESS; - case ABORTED: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.ABORTED; - case COMPLETED: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.r4.model.Procedure.ProcedureStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.INPROGRESS; - case ABORTED: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.ABORTED; - case COMPLETED: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent(); - copyElement(src, tgt); - tgt.setActor(convertReference(src.getActor())); - tgt.setRole(convertCodeableConcept(src.getRole())); - return tgt; - } - - public org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent(); - copyElement(src, tgt); - tgt.setActor(convertReference(src.getActor())); - tgt.setRole(convertCodeableConcept(src.getRole())); - return tgt; - } - - public org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent(); - copyElement(src, tgt); - tgt.setAction(convertCodeableConcept(src.getAction())); - tgt.setManipulated(convertReference(src.getManipulated())); - return tgt; - } - - public org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent(); - copyElement(src, tgt); - tgt.setAction(convertCodeableConcept(src.getAction())); - tgt.setManipulated(convertReference(src.getManipulated())); - return tgt; - } - - public org.hl7.fhir.r4.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.instance.model.ProcedureRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ProcedureRequest tgt = new org.hl7.fhir.r4.model.ProcedureRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - if (src.hasReasonCodeableConcept()) - tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); - tgt.setOccurrence(convertType(src.getScheduled())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setPerformer(convertReference(src.getPerformer())); - tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); -// for (org.hl7.fhir.instance.model.Annotation t : src.getNotes()) -// tgt.addNotes(convertAnnotation(t)); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - tgt.setAuthoredOn(src.getOrderedOn()); -// tgt.setOrderer(convertReference(src.getOrderer())); - tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); - return tgt; - } - - public org.hl7.fhir.instance.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.r4.model.ProcedureRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ProcedureRequest tgt = new org.hl7.fhir.instance.model.ProcedureRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - tgt.setReason(convertType(src.getReasonCodeFirstRep())); - tgt.setScheduled(convertType(src.getOccurrence())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setPerformer(convertReference(src.getPerformer())); - tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); -// for (org.hl7.fhir.r4.model.Annotation t : src.getNotes()) -// tgt.addNotes(convertAnnotation(t)); - tgt.setAsNeeded(convertType(src.getAsNeeded())); - tgt.setOrderedOn(src.getAuthoredOn()); -// tgt.setOrderer(convertReference(src.getOrderer())); - tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); - return tgt; - } - - public org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; - case DRAFT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; - case REQUESTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case RECEIVED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case ACCEPTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case INPROGRESS: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; -// case REJECTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.REJECTED; - case ABORTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { -// case PROPOSED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.PROPOSED; - case DRAFT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; -// case REQUESTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.REQUESTED; -// case RECEIVED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.RECEIVED; -// case ACCEPTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.ACCEPTED; - case ACTIVE: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; - case SUSPENDED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; -// case REJECTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.REJECTED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.ABORTED; - default: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.URGENT; - case STAT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.STAT; - case ASAP: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ASAP; - default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.NULL; - } - } - - public org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.URGENT; - case STAT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.STAT; - case ASAP: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.ASAP; - default: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.NULL; - } - } - - - public org.hl7.fhir.r4.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.instance.model.ProcessRequest.ActionList src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CANCEL: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.CANCEL; - case POLL: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.POLL; - case REPROCESS: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.REPROCESS; - case STATUS: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.STATUS; - default: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.NULL; - } - } - - public org.hl7.fhir.instance.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.r4.model.ProcessRequest.ActionList src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CANCEL: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.CANCEL; - case POLL: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.POLL; - case REPROCESS: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.REPROCESS; - case STATUS: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.STATUS; - default: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.NULL; - } - } - - public org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent(); - copyElement(src, tgt); - tgt.setSequenceLinkId(src.getSequenceLinkId()); - return tgt; - } - - public org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent(); - copyElement(src, tgt); - tgt.setSequenceLinkId(src.getSequenceLinkId()); - return tgt; - } - - public org.hl7.fhir.r4.model.Provenance convertProvenance(org.hl7.fhir.instance.model.Provenance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Provenance tgt = new org.hl7.fhir.r4.model.Provenance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Reference t : src.getTarget()) - tgt.addTarget(convertReference(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setRecorded(src.getRecorded()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) - for (org.hl7.fhir.instance.model.Coding tc : t.getCoding()) - tgt.addReason(convertCoding(tc)); - for (org.hl7.fhir.instance.model.Coding t : src.getActivity().getCoding()) - tgt.setActivity(convertCoding(t)); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.instance.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - for (org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) - tgt.addAgent(convertProvenanceAgentComponent(t)); - for (org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) - tgt.addEntity(convertProvenanceEntityComponent(t)); - for (org.hl7.fhir.instance.model.Signature t : src.getSignature()) - tgt.addSignature(convertSignature(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Provenance convertProvenance(org.hl7.fhir.r4.model.Provenance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Provenance tgt = new org.hl7.fhir.instance.model.Provenance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Reference t : src.getTarget()) - tgt.addTarget(convertReference(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setRecorded(src.getRecorded()); - for (org.hl7.fhir.r4.model.Coding t : src.getReason()) - tgt.addReason().addCoding(convertCoding(t)); - tgt.setActivity(new org.hl7.fhir.instance.model.CodeableConcept().addCoding(convertCoding(src.getActivity()))); - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.r4.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - for (org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) - tgt.addAgent(convertProvenanceAgentComponent(t)); - for (org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) - tgt.addEntity(convertProvenanceEntityComponent(t)); - for (org.hl7.fhir.r4.model.Signature t : src.getSignature()) - tgt.addSignature(convertSignature(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent(); - copyElement(src, tgt); -// tgt.setRole(convertCoding(src.getRole())); - tgt.setWho(convertReference(src.getActor())); - return tgt; - } - - public org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent(); - copyElement(src, tgt); -// tgt.setRole(convertCoding(src.getRole())); - if (src.hasWhoReference()) - tgt.setActor(convertReference(src.getWhoReference())); - return tgt; - } - - public org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent(); - copyElement(src, tgt); - tgt.setRole(convertProvenanceEntityRole(src.getRole())); - if (src.hasReference()) - tgt.setWhat(new org.hl7.fhir.r4.model.Reference().setReference(src.getReference())); - tgt.addAgent(convertProvenanceAgentComponent(src.getAgent())); - return tgt; - } - - public org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent(); - copyElement(src, tgt); - tgt.setRole(convertProvenanceEntityRole(src.getRole())); - if (src.hasWhatReference() && src.getWhatReference().hasReference()) - tgt.setReference(src.getWhatReference().getReference()); - for (org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) - tgt.setAgent(convertProvenanceAgentComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DERIVATION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.DERIVATION; - case REVISION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.REVISION; - case QUOTATION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.QUOTATION; - case SOURCE: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.SOURCE; - default: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.NULL; - } - } - - public org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DERIVATION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.DERIVATION; - case REVISION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.REVISION; - case QUOTATION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.QUOTATION; - case SOURCE: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.SOURCE; - default: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.NULL; - } - } - - public org.hl7.fhir.r4.model.Questionnaire convertQuestionnaire(org.hl7.fhir.instance.model.Questionnaire src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Questionnaire tgt = new org.hl7.fhir.r4.model.Questionnaire(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addContact(convertQuestionnaireContactComponent(t)); - org.hl7.fhir.instance.model.Questionnaire.GroupComponent root = src.getGroup(); - tgt.setTitle(root.getTitle()); - for (org.hl7.fhir.instance.model.Coding t : root.getConcept()) - tgt.addCode(convertCoding(t)); - for (org.hl7.fhir.instance.model.CodeType t : src.getSubjectType()) - tgt.addSubjectType(t.getValue()); - tgt.addItem(convertQuestionnaireGroupComponent(root)); - return tgt; - } - - public org.hl7.fhir.instance.model.Questionnaire convertQuestionnaire(org.hl7.fhir.r4.model.Questionnaire src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Questionnaire tgt = new org.hl7.fhir.instance.model.Questionnaire(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (ContactDetail t : src.getContact()) - for (org.hl7.fhir.r4.model.ContactPoint t1 : t.getTelecom()) - tgt.addTelecom(convertContactPoint(t1)); - org.hl7.fhir.instance.model.Questionnaire.GroupComponent root = tgt.getGroup(); - root.setTitle(src.getTitle()); - for (org.hl7.fhir.r4.model.Coding t : src.getCode()) { - root.addConcept(convertCoding(t)); - } - for (org.hl7.fhir.r4.model.CodeType t : src.getSubjectType()) - tgt.addSubjectType(t.getValue()); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - if (t.getType() == org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.GROUP) - root.addGroup(convertQuestionnaireGroupComponent(t)); - else - root.addQuestion(convertQuestionnaireQuestionComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ContactDetail convertQuestionnaireContactComponent(org.hl7.fhir.instance.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.addTelecom(convertContactPoint(src)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Enumerations.PublicationStatus convertQuestionnaireStatus(org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.DRAFT; - case PUBLISHED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.RETIRED; - default: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.NULL; - } - } - - private static org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus convertQuestionnaireStatus(org.hl7.fhir.r4.model.Enumerations.PublicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.PUBLISHED; - case RETIRED: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.RETIRED; - default: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireQuestionComponent(org.hl7.fhir.instance.model.Questionnaire.QuestionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.instance.model.Coding t : src.getConcept()) - tgt.addCode(convertCoding(t)); - tgt.setText(src.getText()); - tgt.setType(convertQuestionnaireQuestionType(src.getType())); - tgt.setRequired(src.getRequired()); - tgt.setRepeats(src.getRepeats()); - tgt.setOptions(convertReference(src.getOptions())); - for (org.hl7.fhir.instance.model.Coding t : src.getOption()) - tgt.addOption().setValue(convertCoding(t)); - for (org.hl7.fhir.instance.model.Questionnaire.GroupComponent t : src.getGroup()) - tgt.addItem(convertQuestionnaireGroupComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireGroupComponent(org.hl7.fhir.instance.model.Questionnaire.GroupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.instance.model.Coding t : src.getConcept()) - tgt.addCode(convertCoding(t)); - tgt.setText(src.getText()); - tgt.setType(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.GROUP); - tgt.setRequired(src.getRequired()); - tgt.setRepeats(src.getRepeats()); - for (org.hl7.fhir.instance.model.Questionnaire.GroupComponent t : src.getGroup()) - tgt.addItem(convertQuestionnaireGroupComponent(t)); - for (org.hl7.fhir.instance.model.Questionnaire.QuestionComponent t : src.getQuestion()) - tgt.addItem(convertQuestionnaireQuestionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Questionnaire.GroupComponent convertQuestionnaireGroupComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Questionnaire.GroupComponent tgt = new org.hl7.fhir.instance.model.Questionnaire.GroupComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.r4.model.Coding t : src.getCode()) - tgt.addConcept(convertCoding(t)); - tgt.setText(src.getText()); - tgt.setRequired(src.getRequired()); - tgt.setRepeats(src.getRepeats()); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - if (t.getType() == org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.GROUP) - tgt.addGroup(convertQuestionnaireGroupComponent(t)); - else - tgt.addQuestion(convertQuestionnaireQuestionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Questionnaire.QuestionComponent convertQuestionnaireQuestionComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Questionnaire.QuestionComponent tgt = new org.hl7.fhir.instance.model.Questionnaire.QuestionComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.r4.model.Coding t : src.getCode()) - tgt.addConcept(convertCoding(t)); - tgt.setText(src.getText()); - tgt.setType(convertQuestionnaireItemType(src.getType())); - tgt.setRequired(src.getRequired()); - tgt.setRepeats(src.getRepeats()); - tgt.setOptions(convertReference(src.getOptions())); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) - if (t.hasValueCoding()) - try { - tgt.addOption(convertCoding(t.getValueCoding())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addGroup(convertQuestionnaireGroupComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType convertQuestionnaireQuestionType(org.hl7.fhir.instance.model.Questionnaire.AnswerFormat src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BOOLEAN: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.BOOLEAN; - case DECIMAL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DECIMAL; - case INTEGER: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.INTEGER; - case DATE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATE; - case DATETIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATETIME; - case INSTANT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATETIME; - case TIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TIME; - case STRING: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.STRING; - case TEXT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TEXT; - case URL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.URL; - case CHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.CHOICE; - case OPENCHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; - case ATTACHMENT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; - case REFERENCE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.REFERENCE; - case QUANTITY: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.QUANTITY; - default: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.NULL; - } - } - - public org.hl7.fhir.instance.model.Questionnaire.AnswerFormat convertQuestionnaireItemType(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BOOLEAN: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.BOOLEAN; - case DECIMAL: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DECIMAL; - case INTEGER: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.INTEGER; - case DATE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DATE; - case DATETIME: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DATETIME; - case TIME: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.TIME; - case STRING: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.STRING; - case TEXT: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.TEXT; - case URL: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.URL; - case CHOICE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.CHOICE; - case OPENCHOICE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.OPENCHOICE; - case ATTACHMENT: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.ATTACHMENT; - case REFERENCE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.REFERENCE; - case QUANTITY: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.QUANTITY; - default: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.NULL; - } - } - - public org.hl7.fhir.r4.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.instance.model.QuestionnaireResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.QuestionnaireResponse tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); - tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setAuthored(src.getAuthored()); - tgt.setSource(convertReference(src.getSource())); - tgt.setContext(convertReference(src.getEncounter())); - if (src.hasGroup()) - tgt.addItem(convertQuestionnaireResponseGroupComponent(src.getGroup())); - return tgt; - } - - public org.hl7.fhir.instance.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.r4.model.QuestionnaireResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.QuestionnaireResponse tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); - tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setAuthor(convertReference(src.getAuthor())); - tgt.setAuthored(src.getAuthored()); - tgt.setSource(convertReference(src.getSource())); - tgt.setEncounter(convertReference(src.getContext())); - - if (src.getItem().size() != 1) - throw new FHIRException("multiple root items not supported"); // though we could define a placeholder group? - - tgt.setGroup(convertQuestionnaireItemToGroup(src.getItem().get(0))); - return tgt; - } - - - public org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; - case AMENDED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; - default: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; - case AMENDED: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; - default: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseGroupComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - tgt.setText(src.getText()); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent t : src.getGroup()) - tgt.addItem(convertQuestionnaireResponseGroupComponent(t)); - for (org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent t : src.getQuestion()) - tgt.addItem(convertQuestionnaireResponseQuestionComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseQuestionComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - tgt.setText(src.getText()); - for (org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent t : src.getAnswer()) - tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent convertQuestionnaireItemToGroup(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - tgt.setText(src.getText()); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - if (t.hasAnswer()) - tgt.addQuestion(convertQuestionnaireItemToQuestion(t)); - else - tgt.addGroup(convertQuestionnaireItemToGroup(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent convertQuestionnaireItemToQuestion(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent(); - copyElement(src, tgt); - tgt.setLinkId(src.getLinkId()); - tgt.setText(src.getText()); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) - tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - for (org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent t : src.getGroup()) - tgt.addItem(convertQuestionnaireResponseGroupComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addGroup(convertQuestionnaireItemToGroup(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ProcedureRequest convertReferralRequest(org.hl7.fhir.instance.model.ReferralRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ProcedureRequest tgt = new org.hl7.fhir.r4.model.ProcedureRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setStatus(convertReferralStatus(src.getStatus())); - tgt.setCode(convertCodeableConcept(src.getType())); - tgt.setPriority(convertReferralPriorityCode(src.getPriority())); - tgt.setSubject(convertReference(src.getPatient())); - tgt.setOccurrence(convertPeriod(src.getFulfillmentTime())); - tgt.getRequester().setAgent(convertReference(src.getRequester())); - tgt.addReasonCode(convertCodeableConcept(src.getReason())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInfo(convertReference(t)); - return tgt; - } - - private org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority convertReferralPriorityCode(CodeableConcept priority) { - for (org.hl7.fhir.instance.model.Coding c : priority.getCoding()) { - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "routine".equals(c.getCode())) - return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "urgent".equals(c.getCode())) - return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.URGENT; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "stat".equals(c.getCode())) - return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.STAT; - if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "asap".equals(c.getCode())) - return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ASAP; - } - return null; - } - - - public org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus convertReferralStatus(org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; - case REQUESTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.CANCELLED; - case ACCEPTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case REJECTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; - case COMPLETED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; - default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.instance.model.RelatedPerson src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.RelatedPerson tgt = new org.hl7.fhir.r4.model.RelatedPerson(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - tgt.addName(convertHumanName(src.getName())); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.instance.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.instance.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.r4.model.RelatedPerson src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.RelatedPerson tgt = new org.hl7.fhir.instance.model.RelatedPerson(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - if (!src.getName().isEmpty()) - tgt.setName(convertHumanName(src.getName().get(0))); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - tgt.setGender(convertAdministrativeGender(src.getGender())); - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.r4.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public org.hl7.fhir.r4.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.instance.model.RiskAssessment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.RiskAssessment tgt = new org.hl7.fhir.r4.model.RiskAssessment(); - copyDomainResource(src, tgt); - tgt.setSubject(convertReference(src.getSubject())); -// tgt.setDate(src.getDate()); - tgt.setCondition(convertReference(src.getCondition())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setPerformer(convertReference(src.getPerformer())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - for (org.hl7.fhir.instance.model.Reference t : src.getBasis()) - tgt.addBasis(convertReference(t)); - for (org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) - tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); - tgt.setMitigation(src.getMitigation()); - return tgt; - } - - public org.hl7.fhir.instance.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.r4.model.RiskAssessment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.RiskAssessment tgt = new org.hl7.fhir.instance.model.RiskAssessment(); - copyDomainResource(src, tgt); - tgt.setSubject(convertReference(src.getSubject())); -// tgt.setDateElement(src.getOccurrenceDateTimeType()); - tgt.setCondition(convertReference(src.getCondition())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setPerformer(convertReference(src.getPerformer())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setMethod(convertCodeableConcept(src.getMethod())); - for (org.hl7.fhir.r4.model.Reference t : src.getBasis()) - tgt.addBasis(convertReference(t)); - for (org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) - tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); - tgt.setMitigation(src.getMitigation()); - return tgt; - } - - public org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent(); - copyElement(src, tgt); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - tgt.setProbability(convertType(src.getProbability())); - tgt.setRelativeRisk(src.getRelativeRisk()); - tgt.setWhen(convertType(src.getWhen())); - tgt.setRationale(src.getRationale()); - return tgt; - } - - public org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent(); - copyElement(src, tgt); - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - tgt.setProbability(convertType(src.getProbability())); - tgt.setRelativeRisk(src.getRelativeRisk()); - tgt.setWhen(convertType(src.getWhen())); - tgt.setRationale(src.getRationale()); - return tgt; - } - - public org.hl7.fhir.r4.model.Schedule convertSchedule(org.hl7.fhir.instance.model.Schedule src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Schedule tgt = new org.hl7.fhir.r4.model.Schedule(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) - tgt.addServiceType(convertCodeableConcept(t)); - tgt.addActor(convertReference(src.getActor())); - tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); - tgt.setComment(src.getComment()); - return tgt; - } - - public org.hl7.fhir.instance.model.Schedule convertSchedule(org.hl7.fhir.r4.model.Schedule src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Schedule tgt = new org.hl7.fhir.instance.model.Schedule(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) - tgt.addType(convertCodeableConcept(t)); - tgt.setActor(convertReference(src.getActorFirstRep())); - tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); - tgt.setComment(src.getComment()); - return tgt; - } - - public org.hl7.fhir.r4.model.SearchParameter convertSearchParameter(org.hl7.fhir.instance.model.SearchParameter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.SearchParameter tgt = new org.hl7.fhir.r4.model.SearchParameter(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent t : src.getContact()) - tgt.addContact(convertSearchParameterContactComponent(t)); - tgt.setPurpose(src.getRequirements()); - tgt.setCode(src.getCode()); - tgt.addBase(src.getBase()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDescription(src.getDescription()); - tgt.setExpression(ToolingExtensions.readStringExtension(src, ToolingExtensions.EXT_EXPRESSION)); - tgt.setXpath(src.getXpath()); - tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); - for (org.hl7.fhir.instance.model.CodeType t : src.getTarget()) - tgt.addTarget(t.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.SearchParameter convertSearchParameter(org.hl7.fhir.r4.model.SearchParameter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SearchParameter tgt = new org.hl7.fhir.instance.model.SearchParameter(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertSearchParameterContactComponent(t)); - tgt.setRequirements(src.getPurpose()); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.r4.model.CodeType t : src.getBase()) - tgt.setBase(t.asStringValue()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDescription(src.getDescription()); - org.hl7.fhir.instance.utils.ToolingExtensions.setStringExtension(tgt, ToolingExtensions.EXT_EXPRESSION, src.getExpression()); - tgt.setXpath(src.getXpath()); - tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); - for (org.hl7.fhir.r4.model.CodeType t : src.getTarget()) - tgt.addTarget(t.getValue()); - return tgt; - } - - public org.hl7.fhir.r4.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.instance.model.SearchParameter.XPathUsageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NORMAL: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NORMAL; - case PHONETIC: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.PHONETIC; - case NEARBY: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NEARBY; - case DISTANCE: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.DISTANCE; - case OTHER: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.OTHER; - default: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NULL; - } - } - - public org.hl7.fhir.instance.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.r4.model.SearchParameter.XPathUsageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NORMAL: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NORMAL; - case PHONETIC: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.PHONETIC; - case NEARBY: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NEARBY; - case DISTANCE: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.DISTANCE; - case OTHER: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.OTHER; - default: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NULL; - } - } - - public org.hl7.fhir.r4.model.ContactDetail convertSearchParameterContactComponent(org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent convertSearchParameterContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent tgt = new org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Slot convertSlot(org.hl7.fhir.instance.model.Slot src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Slot tgt = new org.hl7.fhir.r4.model.Slot(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasType()) - tgt.addServiceType(convertCodeableConcept(src.getType())); - tgt.setSchedule(convertReference(src.getSchedule())); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - tgt.setOverbooked(src.getOverbooked()); - tgt.setComment(src.getComment()); - return tgt; - } - - public org.hl7.fhir.instance.model.Slot convertSlot(org.hl7.fhir.r4.model.Slot src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Slot tgt = new org.hl7.fhir.instance.model.Slot(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) - tgt.setType(convertCodeableConcept(t)); - tgt.setSchedule(convertReference(src.getSchedule())); - tgt.setStart(src.getStart()); - tgt.setEnd(src.getEnd()); - tgt.setOverbooked(src.getOverbooked()); - tgt.setComment(src.getComment()); - return tgt; - } - - public org.hl7.fhir.r4.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.instance.model.Slot.SlotStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BUSY: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSY; - case FREE: return org.hl7.fhir.r4.model.Slot.SlotStatus.FREE; - case BUSYUNAVAILABLE: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSYUNAVAILABLE; - case BUSYTENTATIVE: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSYTENTATIVE; - default: return org.hl7.fhir.r4.model.Slot.SlotStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.r4.model.Slot.SlotStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BUSY: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSY; - case FREE: return org.hl7.fhir.instance.model.Slot.SlotStatus.FREE; - case BUSYUNAVAILABLE: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSYUNAVAILABLE; - case BUSYTENTATIVE: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSYTENTATIVE; - default: return org.hl7.fhir.instance.model.Slot.SlotStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.instance.model.StructureDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setTitle(src.getDisplay()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent t : src.getContact()) - tgt.addContact(convertStructureDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setPurpose(src.getRequirements()); - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.instance.model.Coding t : src.getCode()) - tgt.addKeyword(convertCoding(t)); - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertStructureDefinitionMappingComponent(t)); - tgt.setKind(convertStructureDefinitionKind(src.getKind(), tgt.getId())); - tgt.setAbstract(src.getAbstract()); - tgt.setContextType(convertExtensionContext(src.getContextType())); - for (org.hl7.fhir.instance.model.StringType t : src.getContext()) - tgt.addContext(t.getValue()); - if (src.hasConstrainedType()) - tgt.setType(src.getConstrainedType()); - else if (src.getSnapshot().hasElement()) - tgt.setType(src.getSnapshot().getElement().get(0).getPath()); - else if (src.getDifferential().hasElement() && !src.getDifferential().getElement().get(0).getPath().contains(".")) - tgt.setType(src.getDifferential().getElement().get(0).getPath()); - else - tgt.setType(src.getDifferential().getElement().get(0).getPath().substring(0, src.getDifferential().getElement().get(0).getPath().indexOf("."))); - tgt.setBaseDefinition(src.getBase()); - tgt.setDerivation(src.hasConstrainedType() ? org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.CONSTRAINT : org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION); - tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); - tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); - if (tgt.hasSnapshot()) - tgt.getSnapshot().getElementFirstRep().getType().clear(); - if (tgt.hasDifferential()) - tgt.getDifferential().getElementFirstRep().getType().clear(); - if (tgt.getKind() == StructureDefinitionKind.PRIMITIVETYPE && !tgt.getType().equals(tgt.getId())) { - tgt.setDerivation(TypeDerivationRule.SPECIALIZATION); - tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/"+tgt.getType()); -// for (ElementDefinition ed : tgt.getSnapshot().getElement()) { -// ed.setPath(ed.getPath().replace(tgt.getType()+".", tgt.getId()+".")); -// } -// for (ElementDefinition ed : tgt.getDifferential().getElement()) { -// ed.setPath(ed.getPath().replace(tgt.getType()+".", tgt.getId()+".")); -// } - tgt.setType(tgt.getId()); - } - return tgt; - } - - public org.hl7.fhir.instance.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.r4.model.StructureDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.StructureDefinition tgt = new org.hl7.fhir.instance.model.StructureDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setDisplay(src.getTitle()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertStructureDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setRequirements(src.getPurpose()); - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.Coding t : src.getKeyword()) - tgt.addCode(convertCoding(t)); - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertStructureDefinitionMappingComponent(t)); - tgt.setKind(convertStructureDefinitionKind(src.getKind())); - tgt.setAbstract(src.getAbstract()); - tgt.setContextType(convertExtensionContext(src.getContextType())); - for (org.hl7.fhir.r4.model.StringType t : src.getContext()) - tgt.addContext(t.getValue()); - tgt.setConstrainedType(src.getType()); - tgt.setBase(src.getBaseDefinition()); - tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); - tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); - if (tgt.hasBase()) { - if (tgt.hasDifferential()) - tgt.getDifferential().getElement().get(0).addType().setCode(tail(tgt.getBase())); - if (tgt.hasSnapshot()) - tgt.getSnapshot().getElement().get(0).addType().setCode(tail(tgt.getBase())); - } - return tgt; - } - - private String tail(String base) { - return base.substring(base.lastIndexOf("/")+1); - } - - public org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind src, String dtName) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DATATYPE: - if (Utilities.existsInList(dtName, "boolean", "integer", "decimal", "base64Binary", "instant", "string", "uri", "date", "dateTime", "time", "code", "oid", "uuid", "id", "unsignedInt", "positiveInt", "markdown", "xhtml")) - return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.PRIMITIVETYPE; - else - return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; - case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.RESOURCE; - case LOGICAL: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.LOGICAL; - default: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.NULL; - } - } - - public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRIMITIVETYPE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.DATATYPE; - case COMPLEXTYPE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.DATATYPE; - case RESOURCE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.RESOURCE; - case LOGICAL: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.LOGICAL; - default: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.NULL; - } - } - - public org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.RESOURCE; - case DATATYPE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.DATATYPE; - case EXTENSION: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.EXTENSION; - default: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.NULL; - } - } - - public org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESOURCE: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.RESOURCE; - case DATATYPE: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.DATATYPE; - case EXTENSION: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.EXTENSION; - default: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.NULL; - } - } - - public org.hl7.fhir.r4.model.ContactDetail convertStructureDefinitionContactComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent convertStructureDefinitionContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setUri(src.getUri()); - tgt.setName(src.getName()); - tgt.setComment(src.getComments()); - return tgt; - } - - public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - tgt.setUri(src.getUri()); - tgt.setName(src.getName()); - tgt.setComments(src.getComment()); - return tgt; - } - - public org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent(); - copyElement(src, tgt); - List slicePaths = new ArrayList(); - for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { - if (t.hasSlicing()) - slicePaths.add(t.getPath()); - tgt.addElement(convertElementDefinition(t, slicePaths)); - } - return tgt; - } - - public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent(); - copyElement(src, tgt); - List slicePaths = new ArrayList(); - for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { - if (t.hasSlicing()) - slicePaths.add(t.getPath()); - tgt.addElement(convertElementDefinition(t, slicePaths)); - } - return tgt; - } - - public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Subscription convertSubscription(org.hl7.fhir.instance.model.Subscription src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Subscription tgt = new org.hl7.fhir.r4.model.Subscription(); - copyDomainResource(src, tgt); - tgt.setCriteria(src.getCriteria()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - tgt.setReason(src.getReason()); - tgt.setStatus(convertSubscriptionStatus(src.getStatus())); - tgt.setError(src.getError()); - tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); - tgt.setEnd(src.getEnd()); - for (org.hl7.fhir.instance.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Subscription convertSubscription(org.hl7.fhir.r4.model.Subscription src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Subscription tgt = new org.hl7.fhir.instance.model.Subscription(); - copyDomainResource(src, tgt); - tgt.setCriteria(src.getCriteria()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - tgt.setReason(src.getReason()); - tgt.setStatus(convertSubscriptionStatus(src.getStatus())); - tgt.setError(src.getError()); - tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); - tgt.setEnd(src.getEnd()); - for (org.hl7.fhir.r4.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.instance.model.Subscription.SubscriptionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUESTED: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.REQUESTED; - case ACTIVE: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.ACTIVE; - case ERROR: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.ERROR; - case OFF: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.OFF; - default: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.r4.model.Subscription.SubscriptionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUESTED: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.REQUESTED; - case ACTIVE: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.ACTIVE; - case ERROR: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.ERROR; - case OFF: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.OFF; - default: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent(); - copyElement(src, tgt); - tgt.setType(convertSubscriptionChannelType(src.getType())); - tgt.setEndpoint(src.getEndpoint()); - tgt.setPayload(src.getPayload()); - tgt.addHeader(src.getHeader()); - return tgt; - } - - public org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent(); - copyElement(src, tgt); - tgt.setType(convertSubscriptionChannelType(src.getType())); - tgt.setEndpoint(src.getEndpoint()); - tgt.setPayload(src.getPayload()); - if (src.hasHeader()) - tgt.setHeaderElement(convertString(src.getHeader().get(0))); - return tgt; - } - - public org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESTHOOK: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.RESTHOOK; - case WEBSOCKET: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.WEBSOCKET; - case EMAIL: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.EMAIL; - case SMS: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.SMS; - case MESSAGE: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.MESSAGE; - default: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.NULL; - } - } - - public org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESTHOOK: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.RESTHOOK; - case WEBSOCKET: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.WEBSOCKET; - case EMAIL: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.EMAIL; - case SMS: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.SMS; - case MESSAGE: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.MESSAGE; - default: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.NULL; - } - } - - public org.hl7.fhir.r4.model.Substance convertSubstance(org.hl7.fhir.instance.model.Substance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Substance tgt = new org.hl7.fhir.r4.model.Substance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent t : src.getInstance()) - tgt.addInstance(convertSubstanceInstanceComponent(t)); - for (org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) - tgt.addIngredient(convertSubstanceIngredientComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.Substance convertSubstance(org.hl7.fhir.r4.model.Substance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Substance tgt = new org.hl7.fhir.instance.model.Substance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent t : src.getInstance()) - tgt.addInstance(convertSubstanceInstanceComponent(t)); - for (org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) - tgt.addIngredient(convertSubstanceIngredientComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setExpiry(src.getExpiry()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - return tgt; - } - - public org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent(); - copyElement(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setExpiry(src.getExpiry()); - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - return tgt; - } - - public org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent(); - copyElement(src, tgt); - tgt.setQuantity(convertRatio(src.getQuantity())); - tgt.setSubstance(convertReference(src.getSubstance())); - return tgt; - } - - public org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent(); - copyElement(src, tgt); - tgt.setQuantity(convertRatio(src.getQuantity())); -// tgt.setSubstance(convertReference(src.getSubstance())); - return tgt; - } - - public org.hl7.fhir.r4.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.instance.model.SupplyDelivery src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.SupplyDelivery tgt = new org.hl7.fhir.r4.model.SupplyDelivery(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setType(convertCodeableConcept(src.getType())); -// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); -// tgt.setSuppliedItem(convertReference(src.getSuppliedItem())); - tgt.setSupplier(convertReference(src.getSupplier())); -// tgt.setWhenPrepared(convertPeriod(src.getWhenPrepared())); -// tgt.setTime(src.getTime()); - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.instance.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.r4.model.SupplyDelivery src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SupplyDelivery tgt = new org.hl7.fhir.instance.model.SupplyDelivery(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setType(convertCodeableConcept(src.getType())); -// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); -// tgt.setSuppliedItem(convertReference(src.getSuppliedItem())); - tgt.setSupplier(convertReference(src.getSupplier())); -// tgt.setWhenPrepared(convertPeriod(src.getWhenPrepared())); -// tgt.setTime(src.getTime()); - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.r4.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; - case ABANDONED: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; - default: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; - case ABANDONED: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; - default: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.instance.model.SupplyRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.SupplyRequest tgt = new org.hl7.fhir.r4.model.SupplyRequest(); - copyDomainResource(src, tgt); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setSource(convertReference(src.getSource())); -// if (src.hasDate()) -// tgt.setDate(src.getDate()); -// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); -// tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); -// tgt.setKind(convertCodeableConcept(src.getKind())); -// tgt.getOrderedItem().setItem(convertReference(src.getOrderedItem())); -// for (org.hl7.fhir.instance.model.Reference t : src.getSupplier()) -// tgt.addSupplier(convertReference(t)); -// tgt.setReason(convertType(src.getReason())); -// tgt.setWhen(convertSupplyRequestWhenComponent(src.getWhen())); - return tgt; - } - - public org.hl7.fhir.instance.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.r4.model.SupplyRequest src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.SupplyRequest tgt = new org.hl7.fhir.instance.model.SupplyRequest(); -// copyDomainResource(src, tgt); -// tgt.setPatient(convertReference(src.getPatient())); -// tgt.setSource(convertReference(src.getSource())); -// if (src.hasDate()) -// tgt.setDate(src.getDate()); -// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); -// tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); -// tgt.setKind(convertCodeableConcept(src.getKind())); -// tgt.setOrderedItem(convertReference(src.getOrderedItem().getItemReference())); -// for (org.hl7.fhir.r4.model.Reference t : src.getSupplier()) -// tgt.addSupplier(convertReference(t)); -// tgt.setReason(convertType(src.getReason())); -// tgt.setWhen(convertSupplyRequestWhenComponent(src.getWhen())); - return tgt; - } - - public org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUESTED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.COMPLETED; - case FAILED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.CANCELLED; - case CANCELLED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.CANCELLED; - default: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.REQUESTED; - case COMPLETED: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.CANCELLED; - default: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.TestScript convertTestScript(org.hl7.fhir.instance.model.TestScript src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript tgt = new org.hl7.fhir.r4.model.TestScript(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent t : src.getContact()) - tgt.addContact(convertTestScriptContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setPurpose(src.getRequirements()); - tgt.setCopyright(src.getCopyright()); - tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); - for (org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) - tgt.addFixture(convertTestScriptFixtureComponent(t)); - for (org.hl7.fhir.instance.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent t : src.getVariable()) - tgt.addVariable(convertTestScriptVariableComponent(t)); - tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); - for (org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent t : src.getTest()) - tgt.addTest(convertTestScriptTestComponent(t)); - tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript convertTestScript(org.hl7.fhir.r4.model.TestScript src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript tgt = new org.hl7.fhir.instance.model.TestScript(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertTestScriptContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setRequirements(src.getPurpose()); - tgt.setCopyright(src.getCopyright()); - tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); - for (org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) - tgt.addFixture(convertTestScriptFixtureComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent t : src.getVariable()) - tgt.addVariable(convertTestScriptVariableComponent(t)); - tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); - for (org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent t : src.getTest()) - tgt.addTest(convertTestScriptTestComponent(t)); - tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); - return tgt; - } - - public org.hl7.fhir.r4.model.ContactDetail convertTestScriptContactComponent(org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent convertTestScriptContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) - tgt.addLink(convertTestScriptMetadataLinkComponent(t)); - for (org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) - tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) - tgt.addLink(convertTestScriptMetadataLinkComponent(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) - tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setDescription(src.getDescription()); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent(); - copyElement(src, tgt); - tgt.setRequired(src.getRequired()); - tgt.setValidated(src.getValidated()); - tgt.setDescription(src.getDescription()); - tgt.setDestination(src.getDestination()); - for (org.hl7.fhir.instance.model.UriType t : src.getLink()) - tgt.addLink(t.getValue()); - tgt.setCapabilities(convertReference(src.getConformance())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent(); - copyElement(src, tgt); - tgt.setRequired(src.getRequired()); - tgt.setValidated(src.getValidated()); - tgt.setDescription(src.getDescription()); - tgt.setDestination(src.getDestination()); - for (org.hl7.fhir.r4.model.UriType t : src.getLink()) - tgt.addLink(t.getValue()); - tgt.setConformance(convertReference(src.getCapabilities())); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent(); - copyElement(src, tgt); - tgt.setAutocreate(src.getAutocreate()); - tgt.setAutodelete(src.getAutodelete()); - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent(); - copyElement(src, tgt); - tgt.setAutocreate(src.getAutocreate()); - tgt.setAutodelete(src.getAutodelete()); - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setHeaderField(src.getHeaderField()); - tgt.setPath(src.getPath()); - tgt.setSourceId(src.getSourceId()); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setHeaderField(src.getHeaderField()); - tgt.setPath(src.getPath()); - tgt.setSourceId(src.getSourceId()); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.SetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent convertSetupActionComponent(org.hl7.fhir.r4.model.TestScript.SetupActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent(); - copyElement(src, tgt); - tgt.setType(convertCoding(src.getType())); - tgt.setResource(src.getResource()); - tgt.setLabel(src.getLabel()); - tgt.setDescription(src.getDescription()); - tgt.setAccept(convertContentType(src.getAccept())); - tgt.setContentType(convertContentType(src.getContentType())); - tgt.setDestination(src.getDestination()); - tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); - tgt.setParams(src.getParams()); - for (org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) - tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); - tgt.setResponseId(src.getResponseId()); - tgt.setSourceId(src.getSourceId()); - tgt.setTargetId(src.getTargetId()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent(); - copyElement(src, tgt); - tgt.setType(convertCoding(src.getType())); - tgt.setResource(src.getResource()); - tgt.setLabel(src.getLabel()); - tgt.setDescription(src.getDescription()); - tgt.setAccept(convertContentType(src.getAccept())); - tgt.setContentType(convertContentType(src.getContentType())); - tgt.setDestination(src.getDestination()); - tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); - tgt.setParams(src.getParams()); - for (org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) - tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); - tgt.setResponseId(src.getResponseId()); - tgt.setSourceId(src.getSourceId()); - tgt.setTargetId(src.getTargetId()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.ContentType convertContentType(org.hl7.fhir.instance.model.TestScript.ContentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XML: return org.hl7.fhir.r4.model.TestScript.ContentType.XML; - case JSON: return org.hl7.fhir.r4.model.TestScript.ContentType.JSON; - default: return org.hl7.fhir.r4.model.TestScript.ContentType.NULL; - } - } - - public org.hl7.fhir.instance.model.TestScript.ContentType convertContentType(org.hl7.fhir.r4.model.TestScript.ContentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XML: return org.hl7.fhir.instance.model.TestScript.ContentType.XML; - case JSON: return org.hl7.fhir.instance.model.TestScript.ContentType.JSON; - default: return org.hl7.fhir.instance.model.TestScript.ContentType.NULL; - } - } - - public org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent(); - copyElement(src, tgt); - tgt.setField(src.getField()); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent(); - copyElement(src, tgt); - tgt.setField(src.getField()); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent(); - copyElement(src, tgt); - tgt.setLabel(src.getLabel()); - tgt.setDescription(src.getDescription()); - tgt.setDirection(convertAssertionDirectionType(src.getDirection())); - tgt.setCompareToSourceId(src.getCompareToSourceId()); - tgt.setCompareToSourcePath(src.getCompareToSourcePath()); - tgt.setContentType(convertContentType(src.getContentType())); - tgt.setHeaderField(src.getHeaderField()); - tgt.setMinimumId(src.getMinimumId()); - tgt.setNavigationLinks(src.getNavigationLinks()); - tgt.setOperator(convertAssertionOperatorType(src.getOperator())); - tgt.setPath(src.getPath()); - tgt.setResource(src.getResource()); - tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); - tgt.setResponseCode(src.getResponseCode()); - tgt.setSourceId(src.getSourceId()); - tgt.setValidateProfileId(src.getValidateProfileId()); - tgt.setValue(src.getValue()); - tgt.setWarningOnly(src.getWarningOnly()); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent(); - copyElement(src, tgt); - tgt.setLabel(src.getLabel()); - tgt.setDescription(src.getDescription()); - tgt.setDirection(convertAssertionDirectionType(src.getDirection())); - tgt.setCompareToSourceId(src.getCompareToSourceId()); - tgt.setCompareToSourcePath(src.getCompareToSourcePath()); - tgt.setContentType(convertContentType(src.getContentType())); - tgt.setHeaderField(src.getHeaderField()); - tgt.setMinimumId(src.getMinimumId()); - tgt.setNavigationLinks(src.getNavigationLinks()); - tgt.setOperator(convertAssertionOperatorType(src.getOperator())); - tgt.setPath(src.getPath()); - tgt.setResource(src.getResource()); - tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); - tgt.setResponseCode(src.getResponseCode()); - tgt.setSourceId(src.getSourceId()); - tgt.setValidateProfileId(src.getValidateProfileId()); - tgt.setValue(src.getValue()); - tgt.setWarningOnly(src.getWarningOnly()); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.instance.model.TestScript.AssertionDirectionType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESPONSE: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.RESPONSE; - case REQUEST: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.REQUEST; - default: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.NULL; - } - } - - public org.hl7.fhir.instance.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.r4.model.TestScript.AssertionDirectionType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESPONSE: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.RESPONSE; - case REQUEST: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.REQUEST; - default: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.NULL; - } - } - - public org.hl7.fhir.r4.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.instance.model.TestScript.AssertionOperatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EQUALS; - case NOTEQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEQUALS; - case IN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.IN; - case NOTIN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTIN; - case GREATERTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.GREATERTHAN; - case LESSTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.LESSTHAN; - case EMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EMPTY; - case NOTEMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEMPTY; - case CONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.CONTAINS; - case NOTCONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTCONTAINS; - default: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NULL; - } - } - - public org.hl7.fhir.instance.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.r4.model.TestScript.AssertionOperatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUALS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.EQUALS; - case NOTEQUALS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTEQUALS; - case IN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.IN; - case NOTIN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTIN; - case GREATERTHAN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.GREATERTHAN; - case LESSTHAN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.LESSTHAN; - case EMPTY: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.EMPTY; - case NOTEMPTY: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTEMPTY; - case CONTAINS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.CONTAINS; - case NOTCONTAINS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTCONTAINS; - default: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NULL; - } - } - - public org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OKAY: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.OKAY; - case CREATED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CREATED; - case NOCONTENT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOCONTENT; - case NOTMODIFIED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTMODIFIED; - case BAD: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.BAD; - case FORBIDDEN: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.FORBIDDEN; - case NOTFOUND: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTFOUND; - case METHODNOTALLOWED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; - case CONFLICT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CONFLICT; - case GONE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.GONE; - case PRECONDITIONFAILED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; - case UNPROCESSABLE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; - default: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NULL; - } - } - - public org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OKAY: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.OKAY; - case CREATED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.CREATED; - case NOCONTENT: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOCONTENT; - case NOTMODIFIED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOTMODIFIED; - case BAD: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.BAD; - case FORBIDDEN: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.FORBIDDEN; - case NOTFOUND: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOTFOUND; - case METHODNOTALLOWED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; - case CONFLICT: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.CONFLICT; - case GONE: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.GONE; - case PRECONDITIONFAILED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; - case UNPROCESSABLE: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; - default: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NULL; - } - } - - - public org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.TestScript.TestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent convertTestActionComponent(org.hl7.fhir.r4.model.TestScript.TestActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.TeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TeardownActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.r4.model.TestScript.TeardownActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent convertCodeSystem(org.hl7.fhir.r4.model.CodeSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getUrl()); - tgt.setVersion(src.getVersion()); - tgt.setCaseSensitive(src.getCaseSensitive()); - - for (ConceptDefinitionComponent cc : src.getConcept()) - tgt.addConcept(convertCodeSystemConcept(src, cc)); - return tgt; - } - -public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent convertCodeSystemConcept(CodeSystem cs, ConceptDefinitionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent(); - copyElement(src, tgt); - tgt.setAbstract(CodeSystemUtilities.isNotSelectable(cs, src)); - tgt.setCode(src.getCode()); - tgt.setDefinition(src.getDefinition()); - tgt.setDisplay(src.getDisplay()); - - for (ConceptDefinitionComponent cc : src.getConcept()) - tgt.addConcept(convertCodeSystemConcept(cs, cc)); - for (ConceptDefinitionDesignationComponent cc : src.getDesignation()) - tgt.addDesignation(convertCodeSystemDesignation(cc)); - return tgt; - } - -public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent convertCodeSystemDesignation(ConceptDefinitionDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); - copyElement(src, tgt); - tgt.setUse(convertCoding(src.getUse())); - tgt.setLanguage(src.getLanguage()); - tgt.setValue(src.getValue()); - - return tgt; - } - - public org.hl7.fhir.r4.model.ValueSet convertValueSet(org.hl7.fhir.instance.model.ValueSet src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet tgt = new org.hl7.fhir.r4.model.ValueSet(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.addIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent t : src.getContact()) - tgt.addContact(convertValueSetContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - tgt.setImmutable(src.getImmutable()); - tgt.setPurpose(src.getRequirements()); - tgt.setCopyright(src.getCopyright()); - tgt.setExtensible(src.getExtensible()); - if (src.hasCompose()) { - tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); - tgt.getCompose().setLockedDate(src.getLockedDate()); - } - if (src.hasCodeSystem() && advisor != null) { - org.hl7.fhir.r4.model.CodeSystem tgtcs = new org.hl7.fhir.r4.model.CodeSystem(); - copyDomainResource(src, tgtcs); - tgtcs.setUrl(src.getCodeSystem().getSystem()); - tgtcs.setIdentifier(convertIdentifier(src.getIdentifier())); - tgtcs.setVersion(src.getCodeSystem().getVersion()); - tgtcs.setName(src.getName()+" Code System"); - tgtcs.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgtcs.setExperimental(src.getExperimental()); - tgtcs.setPublisher(src.getPublisher()); - for (org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent t : src.getContact()) - tgtcs.addContact(convertValueSetContactComponent(t)); - if (src.hasDate()) - tgtcs.setDate(src.getDate()); - tgtcs.setDescription(src.getDescription()); - for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgtcs.addJurisdiction(convertCodeableConcept(t)); - else - tgtcs.addUseContext(convertCodeableConceptToUsageContext(t)); - tgtcs.setPurpose(src.getRequirements()); - tgtcs.setCopyright(src.getCopyright()); - tgtcs.setContent(CodeSystemContentMode.COMPLETE); - tgtcs.setCaseSensitive(src.getCodeSystem().getCaseSensitive()); - for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent cs : src.getCodeSystem().getConcept()) - processConcept(tgtcs.getConcept(), cs, tgtcs); - advisor.handleCodeSystem(tgtcs, tgt); - tgt.setUserData("r2-cs", tgtcs); - tgt.getCompose().addInclude().setSystem(tgtcs.getUrl()); - } - tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); - return tgt; - } - - private void processConcept(List concepts, org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent cs, CodeSystem tgtcs) throws FHIRException { - org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent ct = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent(); - concepts.add(ct); - ct.setCode(cs.getCode()); - ct.setDisplay(cs.getDisplay()); - ct.setDefinition(cs.getDefinition()); - if (cs.getAbstract()) - CodeSystemUtilities.setNotSelectable(tgtcs, ct); - for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent csd : cs.getDesignation()) { - org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent cst = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent(); - cst.setLanguage(csd.getLanguage()); - cst.setUse(convertCoding(csd.getUse())); - cst.setValue(csd.getValue()); - } - - for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent csc : cs.getConcept()) - processConcept(ct.getConcept(), csc, tgtcs); - } - - private void processConcept(List concepts, ConceptDefinitionComponent cs, CodeSystem srcCS) throws FHIRException { - org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent ct = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent(); - concepts.add(ct); - ct.setCode(cs.getCode()); - ct.setDisplay(cs.getDisplay()); - ct.setDefinition(cs.getDefinition()); - if (CodeSystemUtilities.isNotSelectable(srcCS, cs)) - ct.setAbstract(true); - for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent csd : cs.getDesignation()) { - org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent cst = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); - cst.setLanguage(csd.getLanguage()); - cst.setUse(convertCoding(csd.getUse())); - cst.setValue(csd.getValue()); - } - - for (ConceptDefinitionComponent csc : cs.getConcept()) - processConcept(ct.getConcept(), csc, srcCS); - } - - public org.hl7.fhir.instance.model.ValueSet convertValueSet(org.hl7.fhir.r4.model.ValueSet src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet tgt = new org.hl7.fhir.instance.model.ValueSet(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier i : src.getIdentifier()) - tgt.setIdentifier(convertIdentifier(i)); - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertValueSetContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setLockedDate(src.getCompose().getLockedDate()); - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - tgt.setImmutable(src.getImmutable()); - tgt.setRequirements(src.getPurpose()); - tgt.setCopyright(src.getCopyright()); - tgt.setExtensible(src.getExtensible()); - org.hl7.fhir.r4.model.CodeSystem srcCS = (CodeSystem) src.getUserData("r2-cs"); - if (srcCS == null) - srcCS = advisor.getCodeSystem(src); - if (srcCS != null) { - tgt.getCodeSystem().setSystem(srcCS.getUrl()); - tgt.getCodeSystem().setVersion(srcCS.getVersion()); - tgt.getCodeSystem().setCaseSensitive(srcCS.getCaseSensitive()); - for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent cs : srcCS.getConcept()) - processConcept(tgt.getCodeSystem().getConcept(), cs, srcCS); - - } - tgt.setCompose(convertValueSetComposeComponent(src.getCompose(), srcCS == null ? null : srcCS.getUrl())); - tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); - return tgt; - } - - private static boolean isJurisdiction(CodeableConcept t) { - return t.hasCoding() && ("http://unstats.un.org/unsd/methods/m49/m49.htm".equals(t.getCoding().get(0).getSystem()) || "urn:iso:std:iso:3166".equals(t.getCoding().get(0).getSystem()) - || "https://www.usps.com/".equals(t.getCoding().get(0).getSystem())); - } - - - public org.hl7.fhir.r4.model.ContactDetail convertValueSetContactComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent convertValueSetContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.instance.model.UriType t : src.getImport()) - tgt.addInclude().addValueSet(t.getValue()); - for (org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent t : src.getInclude()) - tgt.addInclude(convertConceptSetComponent(t)); - for (org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent t : src.getExclude()) - tgt.addExclude(convertConceptSetComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent src, String noSystem) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getInclude()) { - for (org.hl7.fhir.r4.model.UriType ti : t.getValueSet()) - tgt.addImport(ti.getValue()); - if (noSystem == null || !t.getSystem().equals(noSystem)) - tgt.addInclude(convertConceptSetComponent(t)); - } - for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getExclude()) - tgt.addExclude(convertConceptSetComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setVersion(src.getVersion()); - for (org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) - tgt.addConcept(convertConceptReferenceComponent(t)); - for (org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) - tgt.addFilter(convertConceptSetFilterComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setVersion(src.getVersion()); - for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) - tgt.addConcept(convertConceptReferenceComponent(t)); - for (org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) - tgt.addFilter(convertConceptSetFilterComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent(); - copyElement(src, tgt); - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); - copyElement(src, tgt); - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getProperty()); - tgt.setOp(convertFilterOperator(src.getOp())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getProperty()); - tgt.setOp(convertFilterOperator(src.getOp())); - tgt.setValue(src.getValue()); - return tgt; - } - - public org.hl7.fhir.r4.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.instance.model.ValueSet.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISA; - case ISNOTA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.REGEX; - case IN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NOTIN; - default: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NULL; - } - } - - public org.hl7.fhir.instance.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.r4.model.ValueSet.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.ISA; - case ISNOTA: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.REGEX; - case IN: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.NOTIN; - default: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.NULL; - } - } - - public org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setTimestamp(src.getTimestamp()); - tgt.setTotal(src.getTotal()); - tgt.setOffset(src.getOffset()); - for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) - tgt.addParameter(convertValueSetExpansionParameterComponent(t)); - for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setTimestamp(src.getTimestamp()); - tgt.setTotal(src.getTotal()); - tgt.setOffset(src.getOffset()); - for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) - tgt.addParameter(convertValueSetExpansionParameterComponent(t)); - for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setAbstract(src.getAbstract()); - tgt.setVersion(src.getVersion()); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - tgt.setAbstract(src.getAbstract()); - tgt.setVersion(src.getVersion()); - tgt.setCode(src.getCode()); - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public org.hl7.fhir.r4.model.ListResource convertList(org.hl7.fhir.instance.model.List_ src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ListResource tgt = new org.hl7.fhir.r4.model.ListResource(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setTitle(src.getTitle()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setSource(convertReference(src.getSource())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setStatus(convertListStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - tgt.setMode(convertListMode(src.getMode())); - if (src.hasNote()) - tgt.addNote(new org.hl7.fhir.r4.model.Annotation().setText(src.getNote())); - for (org.hl7.fhir.instance.model.List_.ListEntryComponent t : src.getEntry()) - tgt.addEntry(convertListEntry(t)); - return tgt; - } - - - public org.hl7.fhir.r4.model.ListResource.ListStatus convertListStatus(org.hl7.fhir.instance.model.List_.ListStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.r4.model.ListResource.ListStatus.CURRENT; - case RETIRED: return org.hl7.fhir.r4.model.ListResource.ListStatus.RETIRED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ListResource.ListStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.ListResource.ListStatus.NULL; - } - } - - public org.hl7.fhir.r4.model.ListResource.ListMode convertListMode(org.hl7.fhir.instance.model.List_.ListMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case WORKING: return org.hl7.fhir.r4.model.ListResource.ListMode.WORKING; - case SNAPSHOT: return org.hl7.fhir.r4.model.ListResource.ListMode.SNAPSHOT; - case CHANGES: return org.hl7.fhir.r4.model.ListResource.ListMode.CHANGES; - default: return org.hl7.fhir.r4.model.ListResource.ListMode.NULL; - } - } - - public org.hl7.fhir.r4.model.ListResource.ListEntryComponent convertListEntry(org.hl7.fhir.instance.model.List_.ListEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ListResource.ListEntryComponent tgt = new org.hl7.fhir.r4.model.ListResource.ListEntryComponent(); - copyBackboneElement(src, tgt); - tgt.setFlag(convertCodeableConcept(src.getFlag())); - tgt.setDeleted(src.getDeleted()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setItem(convertReference(src.getItem())); - return tgt; - } - - public org.hl7.fhir.instance.model.List_ convertList(org.hl7.fhir.r4.model.ListResource src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.List_ tgt = new org.hl7.fhir.instance.model.List_(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setTitle(src.getTitle()); - tgt.setCode(convertCodeableConcept(src.getCode())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setSource(convertReference(src.getSource())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setStatus(convertListStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - tgt.setMode(convertListMode(src.getMode())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.setNote(t.getText()); - for (org.hl7.fhir.r4.model.ListResource.ListEntryComponent t : src.getEntry()) - tgt.addEntry(convertListEntry(t)); - return tgt; - } - - - public org.hl7.fhir.instance.model.List_.ListStatus convertListStatus(org.hl7.fhir.r4.model.ListResource.ListStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.instance.model.List_.ListStatus.CURRENT; - case RETIRED: return org.hl7.fhir.instance.model.List_.ListStatus.RETIRED; - case ENTEREDINERROR: return org.hl7.fhir.instance.model.List_.ListStatus.ENTEREDINERROR; - default: return org.hl7.fhir.instance.model.List_.ListStatus.NULL; - } - } - - public org.hl7.fhir.instance.model.List_.ListMode convertListMode(org.hl7.fhir.r4.model.ListResource.ListMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case WORKING: return org.hl7.fhir.instance.model.List_.ListMode.WORKING; - case SNAPSHOT: return org.hl7.fhir.instance.model.List_.ListMode.SNAPSHOT; - case CHANGES: return org.hl7.fhir.instance.model.List_.ListMode.CHANGES; - default: return org.hl7.fhir.instance.model.List_.ListMode.NULL; - } - } - - public org.hl7.fhir.instance.model.List_.ListEntryComponent convertListEntry(org.hl7.fhir.r4.model.ListResource.ListEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.instance.model.List_.ListEntryComponent tgt = new org.hl7.fhir.instance.model.List_.ListEntryComponent(); - copyBackboneElement(src, tgt); - tgt.setFlag(convertCodeableConcept(src.getFlag())); - tgt.setDeleted(src.getDeleted()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - tgt.setItem(convertReference(src.getItem())); - return tgt; - } - - - - public org.hl7.fhir.r4.model.Resource convertResource(org.hl7.fhir.instance.model.Resource src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.instance.model.Parameters) - return convertParameters((org.hl7.fhir.instance.model.Parameters) src); - if (src instanceof org.hl7.fhir.instance.model.Account) - return convertAccount((org.hl7.fhir.instance.model.Account) src); - if (src instanceof org.hl7.fhir.instance.model.Appointment) - return convertAppointment((org.hl7.fhir.instance.model.Appointment) src); - if (src instanceof org.hl7.fhir.instance.model.AppointmentResponse) - return convertAppointmentResponse((org.hl7.fhir.instance.model.AppointmentResponse) src); - if (src instanceof org.hl7.fhir.instance.model.AuditEvent) - return convertAuditEvent((org.hl7.fhir.instance.model.AuditEvent) src); - if (src instanceof org.hl7.fhir.instance.model.Basic) - return convertBasic((org.hl7.fhir.instance.model.Basic) src); - if (src instanceof org.hl7.fhir.instance.model.Binary) - return convertBinary((org.hl7.fhir.instance.model.Binary) src); - if (src instanceof org.hl7.fhir.instance.model.Bundle) - return convertBundle((org.hl7.fhir.instance.model.Bundle) src); - if (src instanceof org.hl7.fhir.instance.model.CarePlan) - return convertCarePlan((org.hl7.fhir.instance.model.CarePlan) src); - if (src instanceof org.hl7.fhir.instance.model.ClinicalImpression) - return convertClinicalImpression((org.hl7.fhir.instance.model.ClinicalImpression) src); - if (src instanceof org.hl7.fhir.instance.model.Communication) - return convertCommunication((org.hl7.fhir.instance.model.Communication) src); - if (src instanceof org.hl7.fhir.instance.model.CommunicationRequest) - return convertCommunicationRequest((org.hl7.fhir.instance.model.CommunicationRequest) src); - if (src instanceof org.hl7.fhir.instance.model.Composition) - return convertComposition((org.hl7.fhir.instance.model.Composition) src); - if (src instanceof org.hl7.fhir.instance.model.ConceptMap) - return convertConceptMap((org.hl7.fhir.instance.model.ConceptMap) src); - if (src instanceof org.hl7.fhir.instance.model.Condition) - return convertCondition((org.hl7.fhir.instance.model.Condition) src); - if (src instanceof org.hl7.fhir.instance.model.Conformance) - return convertConformance((org.hl7.fhir.instance.model.Conformance) src); - if (src instanceof org.hl7.fhir.instance.model.Contract) - return convertContract((org.hl7.fhir.instance.model.Contract) src); - if (src instanceof org.hl7.fhir.instance.model.DataElement) - return convertDataElement((org.hl7.fhir.instance.model.DataElement) src); - if (src instanceof org.hl7.fhir.instance.model.DetectedIssue) - return convertDetectedIssue((org.hl7.fhir.instance.model.DetectedIssue) src); - if (src instanceof org.hl7.fhir.instance.model.Device) - return convertDevice((org.hl7.fhir.instance.model.Device) src); - if (src instanceof org.hl7.fhir.instance.model.DeviceComponent) - return convertDeviceComponent((org.hl7.fhir.instance.model.DeviceComponent) src); - if (src instanceof org.hl7.fhir.instance.model.DeviceMetric) - return convertDeviceMetric((org.hl7.fhir.instance.model.DeviceMetric) src); - if (src instanceof org.hl7.fhir.instance.model.DeviceUseStatement) - return convertDeviceUseStatement((org.hl7.fhir.instance.model.DeviceUseStatement) src); - if (src instanceof org.hl7.fhir.instance.model.DiagnosticReport) - return convertDiagnosticReport((org.hl7.fhir.instance.model.DiagnosticReport) src); - if (src instanceof org.hl7.fhir.instance.model.DocumentManifest) - return convertDocumentManifest((org.hl7.fhir.instance.model.DocumentManifest) src); - if (src instanceof org.hl7.fhir.instance.model.DocumentReference) - return convertDocumentReference((org.hl7.fhir.instance.model.DocumentReference) src); - if (src instanceof org.hl7.fhir.instance.model.Encounter) - return convertEncounter((org.hl7.fhir.instance.model.Encounter) src); - if (src instanceof org.hl7.fhir.instance.model.EnrollmentRequest) - return convertEnrollmentRequest((org.hl7.fhir.instance.model.EnrollmentRequest) src); - if (src instanceof org.hl7.fhir.instance.model.EnrollmentResponse) - return convertEnrollmentResponse((org.hl7.fhir.instance.model.EnrollmentResponse) src); - if (src instanceof org.hl7.fhir.instance.model.EpisodeOfCare) - return convertEpisodeOfCare((org.hl7.fhir.instance.model.EpisodeOfCare) src); - if (src instanceof org.hl7.fhir.instance.model.FamilyMemberHistory) - return convertFamilyMemberHistory((org.hl7.fhir.instance.model.FamilyMemberHistory) src); - if (src instanceof org.hl7.fhir.instance.model.Flag) - return convertFlag((org.hl7.fhir.instance.model.Flag) src); - if (src instanceof org.hl7.fhir.instance.model.Group) - return convertGroup((org.hl7.fhir.instance.model.Group) src); - if (src instanceof org.hl7.fhir.instance.model.HealthcareService) - return convertHealthcareService((org.hl7.fhir.instance.model.HealthcareService) src); - if (src instanceof org.hl7.fhir.instance.model.ImagingStudy) - return convertImagingStudy((org.hl7.fhir.instance.model.ImagingStudy) src); - if (src instanceof org.hl7.fhir.instance.model.Immunization) - return convertImmunization((org.hl7.fhir.instance.model.Immunization) src); - if (src instanceof org.hl7.fhir.instance.model.ImmunizationRecommendation) - return convertImmunizationRecommendation((org.hl7.fhir.instance.model.ImmunizationRecommendation) src); - if (src instanceof org.hl7.fhir.instance.model.ImplementationGuide) - return convertImplementationGuide((org.hl7.fhir.instance.model.ImplementationGuide) src); - if (src instanceof org.hl7.fhir.instance.model.List_) - return convertList((org.hl7.fhir.instance.model.List_) src); - if (src instanceof org.hl7.fhir.instance.model.Location) - return convertLocation((org.hl7.fhir.instance.model.Location) src); - if (src instanceof org.hl7.fhir.instance.model.Media) - return convertMedia((org.hl7.fhir.instance.model.Media) src); - if (src instanceof org.hl7.fhir.instance.model.Medication) - return convertMedication((org.hl7.fhir.instance.model.Medication) src); - if (src instanceof org.hl7.fhir.instance.model.MedicationDispense) - return convertMedicationDispense((org.hl7.fhir.instance.model.MedicationDispense) src); -// if (src instanceof org.hl7.fhir.instance.model.MedicationOrder) -// return convertMedicationOrder((org.hl7.fhir.instance.model.MedicationOrder) src); - if (src instanceof org.hl7.fhir.instance.model.MedicationStatement) - return convertMedicationStatement((org.hl7.fhir.instance.model.MedicationStatement) src); - if (src instanceof org.hl7.fhir.instance.model.MessageHeader) - return convertMessageHeader((org.hl7.fhir.instance.model.MessageHeader) src); - if (src instanceof org.hl7.fhir.instance.model.NamingSystem) - return convertNamingSystem((org.hl7.fhir.instance.model.NamingSystem) src); - if (src instanceof org.hl7.fhir.instance.model.Observation) - return convertObservation((org.hl7.fhir.instance.model.Observation) src); - if (src instanceof org.hl7.fhir.instance.model.OperationDefinition) - return convertOperationDefinition((org.hl7.fhir.instance.model.OperationDefinition) src); - if (src instanceof org.hl7.fhir.instance.model.OperationOutcome) - return convertOperationOutcome((org.hl7.fhir.instance.model.OperationOutcome) src); - if (src instanceof org.hl7.fhir.instance.model.Organization) - return convertOrganization((org.hl7.fhir.instance.model.Organization) src); - if (src instanceof org.hl7.fhir.instance.model.Patient) - return convertPatient((org.hl7.fhir.instance.model.Patient) src); - if (src instanceof org.hl7.fhir.instance.model.Person) - return convertPerson((org.hl7.fhir.instance.model.Person) src); - if (src instanceof org.hl7.fhir.instance.model.Practitioner) - return convertPractitioner((org.hl7.fhir.instance.model.Practitioner) src); - if (src instanceof org.hl7.fhir.instance.model.Procedure) - return convertProcedure((org.hl7.fhir.instance.model.Procedure) src); - if (src instanceof org.hl7.fhir.instance.model.ProcedureRequest) - return convertProcedureRequest((org.hl7.fhir.instance.model.ProcedureRequest) src); - if (src instanceof org.hl7.fhir.instance.model.Provenance) - return convertProvenance((org.hl7.fhir.instance.model.Provenance) src); - if (src instanceof org.hl7.fhir.instance.model.Questionnaire) - return convertQuestionnaire((org.hl7.fhir.instance.model.Questionnaire) src); - if (src instanceof org.hl7.fhir.instance.model.QuestionnaireResponse) - return convertQuestionnaireResponse((org.hl7.fhir.instance.model.QuestionnaireResponse) src); - if (src instanceof org.hl7.fhir.instance.model.ReferralRequest) - return convertReferralRequest((org.hl7.fhir.instance.model.ReferralRequest) src); - if (src instanceof org.hl7.fhir.instance.model.RelatedPerson) - return convertRelatedPerson((org.hl7.fhir.instance.model.RelatedPerson) src); - if (src instanceof org.hl7.fhir.instance.model.RiskAssessment) - return convertRiskAssessment((org.hl7.fhir.instance.model.RiskAssessment) src); - if (src instanceof org.hl7.fhir.instance.model.Schedule) - return convertSchedule((org.hl7.fhir.instance.model.Schedule) src); - if (src instanceof org.hl7.fhir.instance.model.SearchParameter) - return convertSearchParameter((org.hl7.fhir.instance.model.SearchParameter) src); - if (src instanceof org.hl7.fhir.instance.model.Slot) - return convertSlot((org.hl7.fhir.instance.model.Slot) src); - if (src instanceof org.hl7.fhir.instance.model.StructureDefinition) - return convertStructureDefinition((org.hl7.fhir.instance.model.StructureDefinition) src); - if (src instanceof org.hl7.fhir.instance.model.Subscription) - return convertSubscription((org.hl7.fhir.instance.model.Subscription) src); - if (src instanceof org.hl7.fhir.instance.model.Substance) - return convertSubstance((org.hl7.fhir.instance.model.Substance) src); - if (src instanceof org.hl7.fhir.instance.model.SupplyDelivery) - return convertSupplyDelivery((org.hl7.fhir.instance.model.SupplyDelivery) src); - if (src instanceof org.hl7.fhir.instance.model.SupplyRequest) - return convertSupplyRequest((org.hl7.fhir.instance.model.SupplyRequest) src); - if (src instanceof org.hl7.fhir.instance.model.TestScript) - return convertTestScript((org.hl7.fhir.instance.model.TestScript) src); - if (src instanceof org.hl7.fhir.instance.model.ValueSet) - return convertValueSet((org.hl7.fhir.instance.model.ValueSet) src); - throw new Error("Unknown resource "+src.fhirType()); - } - - public org.hl7.fhir.instance.model.Resource convertResource(org.hl7.fhir.r4.model.Resource src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.r4.model.Parameters) - return convertParameters((org.hl7.fhir.r4.model.Parameters) src); - if (src instanceof org.hl7.fhir.r4.model.Appointment) - return convertAppointment((org.hl7.fhir.r4.model.Appointment) src); - if (src instanceof org.hl7.fhir.r4.model.AppointmentResponse) - return convertAppointmentResponse((org.hl7.fhir.r4.model.AppointmentResponse) src); - if (src instanceof org.hl7.fhir.r4.model.AuditEvent) - return convertAuditEvent((org.hl7.fhir.r4.model.AuditEvent) src); - if (src instanceof org.hl7.fhir.r4.model.Basic) - return convertBasic((org.hl7.fhir.r4.model.Basic) src); - if (src instanceof org.hl7.fhir.r4.model.Binary) - return convertBinary((org.hl7.fhir.r4.model.Binary) src); - if (src instanceof org.hl7.fhir.r4.model.Bundle) - return convertBundle((org.hl7.fhir.r4.model.Bundle) src); - if (src instanceof org.hl7.fhir.r4.model.CarePlan) - return convertCarePlan((org.hl7.fhir.r4.model.CarePlan) src); - if (src instanceof org.hl7.fhir.r4.model.ClinicalImpression) - return convertClinicalImpression((org.hl7.fhir.r4.model.ClinicalImpression) src); - if (src instanceof org.hl7.fhir.r4.model.Communication) - return convertCommunication((org.hl7.fhir.r4.model.Communication) src); - if (src instanceof org.hl7.fhir.r4.model.CommunicationRequest) - return convertCommunicationRequest((org.hl7.fhir.r4.model.CommunicationRequest) src); - if (src instanceof org.hl7.fhir.r4.model.Composition) - return convertComposition((org.hl7.fhir.r4.model.Composition) src); - if (src instanceof org.hl7.fhir.r4.model.ConceptMap) - return convertConceptMap((org.hl7.fhir.r4.model.ConceptMap) src); - if (src instanceof org.hl7.fhir.r4.model.Condition) - return convertCondition((org.hl7.fhir.r4.model.Condition) src); - if (src instanceof org.hl7.fhir.r4.model.CapabilityStatement) - return convertConformance((org.hl7.fhir.r4.model.CapabilityStatement) src); - if (src instanceof org.hl7.fhir.r4.model.Contract) - return convertContract((org.hl7.fhir.r4.model.Contract) src); - if (src instanceof org.hl7.fhir.r4.model.DetectedIssue) - return convertDetectedIssue((org.hl7.fhir.r4.model.DetectedIssue) src); - if (src instanceof org.hl7.fhir.r4.model.Device) - return convertDevice((org.hl7.fhir.r4.model.Device) src); - if (src instanceof org.hl7.fhir.r4.model.DeviceComponent) - return convertDeviceComponent((org.hl7.fhir.r4.model.DeviceComponent) src); - if (src instanceof org.hl7.fhir.r4.model.DeviceMetric) - return convertDeviceMetric((org.hl7.fhir.r4.model.DeviceMetric) src); - if (src instanceof org.hl7.fhir.r4.model.DeviceUseStatement) - return convertDeviceUseStatement((org.hl7.fhir.r4.model.DeviceUseStatement) src); - if (src instanceof org.hl7.fhir.r4.model.DiagnosticReport) - return convertDiagnosticReport((org.hl7.fhir.r4.model.DiagnosticReport) src); - if (src instanceof org.hl7.fhir.r4.model.DocumentManifest) - return convertDocumentManifest((org.hl7.fhir.r4.model.DocumentManifest) src); - if (src instanceof org.hl7.fhir.r4.model.DocumentReference) - return convertDocumentReference((org.hl7.fhir.r4.model.DocumentReference) src); - if (src instanceof org.hl7.fhir.r4.model.Encounter) - return convertEncounter((org.hl7.fhir.r4.model.Encounter) src); - if (src instanceof org.hl7.fhir.r4.model.EnrollmentRequest) - return convertEnrollmentRequest((org.hl7.fhir.r4.model.EnrollmentRequest) src); - if (src instanceof org.hl7.fhir.r4.model.EnrollmentResponse) - return convertEnrollmentResponse((org.hl7.fhir.r4.model.EnrollmentResponse) src); - if (src instanceof org.hl7.fhir.r4.model.EpisodeOfCare) - return convertEpisodeOfCare((org.hl7.fhir.r4.model.EpisodeOfCare) src); - if (src instanceof org.hl7.fhir.r4.model.FamilyMemberHistory) - return convertFamilyMemberHistory((org.hl7.fhir.r4.model.FamilyMemberHistory) src); - if (src instanceof org.hl7.fhir.r4.model.Flag) - return convertFlag((org.hl7.fhir.r4.model.Flag) src); - if (src instanceof org.hl7.fhir.r4.model.Group) - return convertGroup((org.hl7.fhir.r4.model.Group) src); - if (src instanceof org.hl7.fhir.r4.model.HealthcareService) - return convertHealthcareService((org.hl7.fhir.r4.model.HealthcareService) src); - if (src instanceof org.hl7.fhir.r4.model.ImagingStudy) - return convertImagingStudy((org.hl7.fhir.r4.model.ImagingStudy) src); - if (src instanceof org.hl7.fhir.r4.model.Immunization) - return convertImmunization((org.hl7.fhir.r4.model.Immunization) src); - if (src instanceof org.hl7.fhir.r4.model.ImmunizationRecommendation) - return convertImmunizationRecommendation((org.hl7.fhir.r4.model.ImmunizationRecommendation) src); - if (src instanceof org.hl7.fhir.r4.model.ImplementationGuide) - return convertImplementationGuide((org.hl7.fhir.r4.model.ImplementationGuide) src); - if (src instanceof org.hl7.fhir.r4.model.ListResource) - return convertList((org.hl7.fhir.r4.model.ListResource) src); - if (src instanceof org.hl7.fhir.r4.model.Location) - return convertLocation((org.hl7.fhir.r4.model.Location) src); - if (src instanceof org.hl7.fhir.r4.model.Media) - return convertMedia((org.hl7.fhir.r4.model.Media) src); - if (src instanceof org.hl7.fhir.r4.model.Medication) - return convertMedication((org.hl7.fhir.r4.model.Medication) src); - if (src instanceof org.hl7.fhir.r4.model.MedicationDispense) - return convertMedicationDispense((org.hl7.fhir.r4.model.MedicationDispense) src); -// if (src instanceof org.hl7.fhir.r4.model.MedicationOrder) -// return convertMedicationOrder((org.hl7.fhir.r4.model.MedicationOrder) src); - if (src instanceof org.hl7.fhir.r4.model.MedicationStatement) - return convertMedicationStatement((org.hl7.fhir.r4.model.MedicationStatement) src); - if (src instanceof org.hl7.fhir.r4.model.MessageHeader) - return convertMessageHeader((org.hl7.fhir.r4.model.MessageHeader) src); - if (src instanceof org.hl7.fhir.r4.model.NamingSystem) - return convertNamingSystem((org.hl7.fhir.r4.model.NamingSystem) src); - if (src instanceof org.hl7.fhir.r4.model.Observation) - return convertObservation((org.hl7.fhir.r4.model.Observation) src); - if (src instanceof org.hl7.fhir.r4.model.OperationDefinition) - return convertOperationDefinition((org.hl7.fhir.r4.model.OperationDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.OperationOutcome) - return convertOperationOutcome((org.hl7.fhir.r4.model.OperationOutcome) src); - if (src instanceof org.hl7.fhir.r4.model.Organization) - return convertOrganization((org.hl7.fhir.r4.model.Organization) src); - if (src instanceof org.hl7.fhir.r4.model.Patient) - return convertPatient((org.hl7.fhir.r4.model.Patient) src); - if (src instanceof org.hl7.fhir.r4.model.Person) - return convertPerson((org.hl7.fhir.r4.model.Person) src); - if (src instanceof org.hl7.fhir.r4.model.Practitioner) - return convertPractitioner((org.hl7.fhir.r4.model.Practitioner) src); - if (src instanceof org.hl7.fhir.r4.model.Procedure) - return convertProcedure((org.hl7.fhir.r4.model.Procedure) src); - if (src instanceof org.hl7.fhir.r4.model.ProcedureRequest) - return convertProcedureRequest((org.hl7.fhir.r4.model.ProcedureRequest) src); - if (src instanceof org.hl7.fhir.r4.model.Provenance) - return convertProvenance((org.hl7.fhir.r4.model.Provenance) src); - if (src instanceof org.hl7.fhir.r4.model.Questionnaire) - return convertQuestionnaire((org.hl7.fhir.r4.model.Questionnaire) src); - if (src instanceof org.hl7.fhir.r4.model.QuestionnaireResponse) - return convertQuestionnaireResponse((org.hl7.fhir.r4.model.QuestionnaireResponse) src); - if (src instanceof org.hl7.fhir.r4.model.RelatedPerson) - return convertRelatedPerson((org.hl7.fhir.r4.model.RelatedPerson) src); - if (src instanceof org.hl7.fhir.r4.model.RiskAssessment) - return convertRiskAssessment((org.hl7.fhir.r4.model.RiskAssessment) src); - if (src instanceof org.hl7.fhir.r4.model.Schedule) - return convertSchedule((org.hl7.fhir.r4.model.Schedule) src); - if (src instanceof org.hl7.fhir.r4.model.SearchParameter) - return convertSearchParameter((org.hl7.fhir.r4.model.SearchParameter) src); - if (src instanceof org.hl7.fhir.r4.model.Slot) - return convertSlot((org.hl7.fhir.r4.model.Slot) src); - if (src instanceof org.hl7.fhir.r4.model.StructureDefinition) - return convertStructureDefinition((org.hl7.fhir.r4.model.StructureDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.Subscription) - return convertSubscription((org.hl7.fhir.r4.model.Subscription) src); - if (src instanceof org.hl7.fhir.r4.model.Substance) - return convertSubstance((org.hl7.fhir.r4.model.Substance) src); - if (src instanceof org.hl7.fhir.r4.model.SupplyDelivery) - return convertSupplyDelivery((org.hl7.fhir.r4.model.SupplyDelivery) src); - if (src instanceof org.hl7.fhir.r4.model.SupplyRequest) - return convertSupplyRequest((org.hl7.fhir.r4.model.SupplyRequest) src); - if (src instanceof org.hl7.fhir.r4.model.TestScript) - return convertTestScript((org.hl7.fhir.r4.model.TestScript) src); - if (src instanceof org.hl7.fhir.r4.model.ValueSet) - return convertValueSet((org.hl7.fhir.r4.model.ValueSet) src); - throw new Error("Unknown resource "+src.fhirType()); - } - -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + +import java.util.ArrayList; +import java.util.List; + +import org.apache.commons.codec.binary.Base64; +import org.hl7.fhir.instance.model.CodeableConcept; +import org.hl7.fhir.instance.model.Reference; +import org.hl7.fhir.instance.utils.ToolingExtensions; +import org.hl7.fhir.r4.conformance.ProfileUtilities; +import org.hl7.fhir.r4.model.Annotation; +import org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction; +import org.hl7.fhir.r4.model.CodeSystem; +import org.hl7.fhir.r4.model.Coding; +import org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode; +import org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent; +import org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent; +import org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority; +import org.hl7.fhir.r4.model.ConceptMap; +import org.hl7.fhir.r4.model.ContactDetail; +import org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent; +import org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent; +import org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus; +import org.hl7.fhir.r4.model.Dosage; +import org.hl7.fhir.r4.model.ElementDefinition; +import org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent; +import org.hl7.fhir.r4.model.Enumeration; +import org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent; +import org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind; +import org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule; +import org.hl7.fhir.r4.model.Timing.EventTiming; +import org.hl7.fhir.r4.model.UriType; +import org.hl7.fhir.r4.terminologies.CodeSystemUtilities; +import org.hl7.fhir.exceptions.FHIRException; +import org.hl7.fhir.utilities.Utilities; + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + */ + +// Generated on Thu, Apr 7, 2016 02:14+1000 for FHIR v1.4.0 + + +public class VersionConvertor_10_40 { + + public VersionConvertorAdvisor40 advisor; + + public VersionConvertor_10_40(VersionConvertorAdvisor40 advisor) { + super(); + this.advisor = advisor; + } + + public void copyElement(org.hl7.fhir.instance.model.Element src, org.hl7.fhir.r4.model.Element tgt) throws FHIRException { + tgt.setId(src.getId()); + for (org.hl7.fhir.instance.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + public void copyElement(org.hl7.fhir.r4.model.Element src, org.hl7.fhir.instance.model.Element tgt) throws FHIRException { + tgt.setId(src.getId()); + for (org.hl7.fhir.r4.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + public void copyElement(org.hl7.fhir.r4.model.DomainResource src, org.hl7.fhir.instance.model.Element tgt) throws FHIRException { + tgt.setId(src.getId()); + for (org.hl7.fhir.r4.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + public void copyBackboneElement(org.hl7.fhir.instance.model.BackboneElement src, org.hl7.fhir.r4.model.BackboneElement tgt) throws FHIRException { + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Extension e : src.getModifierExtension()) { + tgt.addModifierExtension(convertExtension(e)); + } + } + + public void copyBackboneElement(org.hl7.fhir.r4.model.BackboneElement src, org.hl7.fhir.instance.model.BackboneElement tgt) throws FHIRException { + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Extension e : src.getModifierExtension()) { + tgt.addModifierExtension(convertExtension(e)); + } + } + + public org.hl7.fhir.r4.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.instance.model.Base64BinaryType src) throws FHIRException { + org.hl7.fhir.r4.model.Base64BinaryType tgt = new org.hl7.fhir.r4.model.Base64BinaryType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.r4.model.Base64BinaryType src) throws FHIRException { + org.hl7.fhir.instance.model.Base64BinaryType tgt = new org.hl7.fhir.instance.model.Base64BinaryType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.BooleanType convertBoolean(org.hl7.fhir.instance.model.BooleanType src) throws FHIRException { + org.hl7.fhir.r4.model.BooleanType tgt = new org.hl7.fhir.r4.model.BooleanType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.BooleanType convertBoolean(org.hl7.fhir.r4.model.BooleanType src) throws FHIRException { + org.hl7.fhir.instance.model.BooleanType tgt = new org.hl7.fhir.instance.model.BooleanType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.CodeType convertCode(org.hl7.fhir.instance.model.CodeType src) throws FHIRException { + org.hl7.fhir.r4.model.CodeType tgt = new org.hl7.fhir.r4.model.CodeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.CodeType convertCode(org.hl7.fhir.r4.model.CodeType src) throws FHIRException { + org.hl7.fhir.instance.model.CodeType tgt = new org.hl7.fhir.instance.model.CodeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.UriType convertCodeToUri(org.hl7.fhir.instance.model.CodeType src) throws FHIRException { + org.hl7.fhir.r4.model.UriType tgt = new org.hl7.fhir.r4.model.UriType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.CodeType convertUriToCode(org.hl7.fhir.r4.model.UriType src) throws FHIRException { + org.hl7.fhir.instance.model.CodeType tgt = new org.hl7.fhir.instance.model.CodeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.DateType convertDate(org.hl7.fhir.instance.model.DateType src) throws FHIRException { + org.hl7.fhir.r4.model.DateType tgt = new org.hl7.fhir.r4.model.DateType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.DateType convertDate(org.hl7.fhir.instance.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.r4.model.DateType tgt = new org.hl7.fhir.r4.model.DateType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.DateType convertDate(org.hl7.fhir.r4.model.DateType src) throws FHIRException { + org.hl7.fhir.instance.model.DateType tgt = new org.hl7.fhir.instance.model.DateType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.DateType convertDate(org.hl7.fhir.r4.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.instance.model.DateType tgt = new org.hl7.fhir.instance.model.DateType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.DateTimeType convertDateTime(org.hl7.fhir.instance.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.r4.model.DateTimeType tgt = new org.hl7.fhir.r4.model.DateTimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.DateTimeType convertDateTime(org.hl7.fhir.r4.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.instance.model.DateTimeType tgt = new org.hl7.fhir.instance.model.DateTimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.DecimalType convertDecimal(org.hl7.fhir.instance.model.DecimalType src) throws FHIRException { + org.hl7.fhir.r4.model.DecimalType tgt = new org.hl7.fhir.r4.model.DecimalType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.DecimalType convertDecimal(org.hl7.fhir.r4.model.DecimalType src) throws FHIRException { + org.hl7.fhir.instance.model.DecimalType tgt = new org.hl7.fhir.instance.model.DecimalType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.IdType convertId(org.hl7.fhir.instance.model.IdType src) throws FHIRException { + org.hl7.fhir.r4.model.IdType tgt = new org.hl7.fhir.r4.model.IdType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.IdType convertId(org.hl7.fhir.r4.model.IdType src) throws FHIRException { + org.hl7.fhir.instance.model.IdType tgt = new org.hl7.fhir.instance.model.IdType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.InstantType convertInstant(org.hl7.fhir.instance.model.InstantType src) throws FHIRException { + org.hl7.fhir.r4.model.InstantType tgt = new org.hl7.fhir.r4.model.InstantType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.InstantType convertInstant(org.hl7.fhir.r4.model.InstantType src) throws FHIRException { + org.hl7.fhir.instance.model.InstantType tgt = new org.hl7.fhir.instance.model.InstantType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.IntegerType convertInteger(org.hl7.fhir.instance.model.IntegerType src) throws FHIRException { + org.hl7.fhir.r4.model.IntegerType tgt = new org.hl7.fhir.r4.model.IntegerType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.IntegerType convertInteger(org.hl7.fhir.r4.model.IntegerType src) throws FHIRException { + org.hl7.fhir.instance.model.IntegerType tgt = new org.hl7.fhir.instance.model.IntegerType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.MarkdownType convertMarkdown(org.hl7.fhir.instance.model.MarkdownType src) throws FHIRException { + org.hl7.fhir.r4.model.MarkdownType tgt = new org.hl7.fhir.r4.model.MarkdownType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.MarkdownType convertMarkdown(org.hl7.fhir.r4.model.MarkdownType src) throws FHIRException { + org.hl7.fhir.instance.model.MarkdownType tgt = new org.hl7.fhir.instance.model.MarkdownType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.OidType convertOid(org.hl7.fhir.instance.model.OidType src) throws FHIRException { + org.hl7.fhir.r4.model.OidType tgt = new org.hl7.fhir.r4.model.OidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.OidType convertOid(org.hl7.fhir.r4.model.OidType src) throws FHIRException { + org.hl7.fhir.instance.model.OidType tgt = new org.hl7.fhir.instance.model.OidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.PositiveIntType convertPositiveInt(org.hl7.fhir.instance.model.PositiveIntType src) throws FHIRException { + org.hl7.fhir.r4.model.PositiveIntType tgt = new org.hl7.fhir.r4.model.PositiveIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.PositiveIntType convertPositiveInt(org.hl7.fhir.r4.model.PositiveIntType src) throws FHIRException { + org.hl7.fhir.instance.model.PositiveIntType tgt = new org.hl7.fhir.instance.model.PositiveIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.StringType convertString(org.hl7.fhir.instance.model.StringType src) throws FHIRException { + org.hl7.fhir.r4.model.StringType tgt = new org.hl7.fhir.r4.model.StringType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.StringType convertString(org.hl7.fhir.r4.model.StringType src) throws FHIRException { + org.hl7.fhir.instance.model.StringType tgt = new org.hl7.fhir.instance.model.StringType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.TimeType convertTime(org.hl7.fhir.instance.model.TimeType src) throws FHIRException { + org.hl7.fhir.r4.model.TimeType tgt = new org.hl7.fhir.r4.model.TimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.TimeType convertTime(org.hl7.fhir.r4.model.TimeType src) throws FHIRException { + org.hl7.fhir.instance.model.TimeType tgt = new org.hl7.fhir.instance.model.TimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.instance.model.UnsignedIntType src) throws FHIRException { + org.hl7.fhir.r4.model.UnsignedIntType tgt = new org.hl7.fhir.r4.model.UnsignedIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.r4.model.UnsignedIntType src) throws FHIRException { + org.hl7.fhir.instance.model.UnsignedIntType tgt = new org.hl7.fhir.instance.model.UnsignedIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.UriType convertUri(org.hl7.fhir.instance.model.UriType src) throws FHIRException { + org.hl7.fhir.r4.model.UriType tgt = new org.hl7.fhir.r4.model.UriType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.UriType convertUri(org.hl7.fhir.r4.model.UriType src) throws FHIRException { + org.hl7.fhir.instance.model.UriType tgt = new org.hl7.fhir.instance.model.UriType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.UuidType convertUuid(org.hl7.fhir.instance.model.UuidType src) throws FHIRException { + org.hl7.fhir.r4.model.UuidType tgt = new org.hl7.fhir.r4.model.UuidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.instance.model.UuidType convertUuid(org.hl7.fhir.r4.model.UuidType src) throws FHIRException { + org.hl7.fhir.instance.model.UuidType tgt = new org.hl7.fhir.instance.model.UuidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public org.hl7.fhir.r4.model.Extension convertExtension(org.hl7.fhir.instance.model.Extension src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Extension tgt = new org.hl7.fhir.r4.model.Extension(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public org.hl7.fhir.instance.model.Extension convertExtension(org.hl7.fhir.r4.model.Extension src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Extension tgt = new org.hl7.fhir.instance.model.Extension(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public org.hl7.fhir.r4.model.Narrative convertNarrative(org.hl7.fhir.instance.model.Narrative src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Narrative tgt = new org.hl7.fhir.r4.model.Narrative(); + copyElement(src, tgt); + tgt.setStatus(convertNarrativeStatus(src.getStatus())); + tgt.setDiv(src.getDiv()); + return tgt; + } + + public org.hl7.fhir.instance.model.Narrative convertNarrative(org.hl7.fhir.r4.model.Narrative src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Narrative tgt = new org.hl7.fhir.instance.model.Narrative(); + copyElement(src, tgt); + tgt.setStatus(convertNarrativeStatus(src.getStatus())); + tgt.setDiv(src.getDiv()); + return tgt; + } + + public org.hl7.fhir.r4.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.instance.model.Narrative.NarrativeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GENERATED: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.GENERATED; + case EXTENSIONS: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EXTENSIONS; + case ADDITIONAL: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.ADDITIONAL; + case EMPTY: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EMPTY; + default: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.r4.model.Narrative.NarrativeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GENERATED: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.GENERATED; + case EXTENSIONS: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.EXTENSIONS; + case ADDITIONAL: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.ADDITIONAL; + case EMPTY: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.EMPTY; + default: return org.hl7.fhir.instance.model.Narrative.NarrativeStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Annotation convertAnnotation(org.hl7.fhir.instance.model.Annotation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Annotation tgt = new org.hl7.fhir.r4.model.Annotation(); + copyElement(src, tgt); + tgt.setAuthor(convertType(src.getAuthor())); + tgt.setTime(src.getTime()); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.instance.model.Annotation convertAnnotation(org.hl7.fhir.r4.model.Annotation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Annotation tgt = new org.hl7.fhir.instance.model.Annotation(); + copyElement(src, tgt); + tgt.setAuthor(convertType(src.getAuthor())); + tgt.setTime(src.getTime()); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.r4.model.Attachment convertAttachment(org.hl7.fhir.instance.model.Attachment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Attachment tgt = new org.hl7.fhir.r4.model.Attachment(); + copyElement(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setLanguage(src.getLanguage()); + tgt.setData(src.getData()); + tgt.setUrl(src.getUrl()); + tgt.setSize(src.getSize()); + tgt.setHash(src.getHash()); + tgt.setTitle(src.getTitle()); + tgt.setCreation(src.getCreation()); + return tgt; + } + + public org.hl7.fhir.instance.model.Attachment convertAttachment(org.hl7.fhir.r4.model.Attachment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Attachment tgt = new org.hl7.fhir.instance.model.Attachment(); + copyElement(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setLanguage(src.getLanguage()); + tgt.setData(src.getData()); + tgt.setUrl(src.getUrl()); + tgt.setSize(src.getSize()); + tgt.setHash(src.getHash()); + tgt.setTitle(src.getTitle()); + tgt.setCreation(src.getCreation()); + return tgt; + } + + public org.hl7.fhir.r4.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.instance.model.CodeableConcept src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CodeableConcept tgt = new org.hl7.fhir.r4.model.CodeableConcept(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Coding t : src.getCoding()) + tgt.addCoding(convertCoding(t)); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.instance.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.r4.model.CodeableConcept src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CodeableConcept tgt = new org.hl7.fhir.instance.model.CodeableConcept(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Coding t : src.getCoding()) + tgt.addCoding(convertCoding(t)); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.r4.model.Coding convertCoding(org.hl7.fhir.instance.model.Coding src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Coding tgt = new org.hl7.fhir.r4.model.Coding(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setVersion(src.getVersion()); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + tgt.setUserSelected(src.getUserSelected()); + return tgt; + } + + public org.hl7.fhir.instance.model.Coding convertCoding(org.hl7.fhir.r4.model.Coding src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Coding tgt = new org.hl7.fhir.instance.model.Coding(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setVersion(src.getVersion()); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + tgt.setUserSelected(src.getUserSelected()); + return tgt; + } + + + + public org.hl7.fhir.r4.model.Identifier convertIdentifier(org.hl7.fhir.instance.model.Identifier src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Identifier tgt = new org.hl7.fhir.r4.model.Identifier(); + copyElement(src, tgt); + tgt.setUse(convertIdentifierUse(src.getUse())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setSystem(src.getSystem()); + tgt.setValue(src.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setAssigner(convertReference(src.getAssigner())); + return tgt; + } + + public org.hl7.fhir.instance.model.Identifier convertIdentifier(org.hl7.fhir.r4.model.Identifier src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Identifier tgt = new org.hl7.fhir.instance.model.Identifier(); + copyElement(src, tgt); + if (src.hasUse()) + tgt.setUse(convertIdentifierUse(src.getUse())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasAssigner()) + tgt.setAssigner(convertReference(src.getAssigner())); + return tgt; + } + + public org.hl7.fhir.r4.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.instance.model.Identifier.IdentifierUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.USUAL; + case OFFICIAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.OFFICIAL; + case TEMP: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.TEMP; + case SECONDARY: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.SECONDARY; + default: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.NULL; + } + } + + public org.hl7.fhir.instance.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.r4.model.Identifier.IdentifierUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.USUAL; + case OFFICIAL: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.OFFICIAL; + case TEMP: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.TEMP; + case SECONDARY: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.SECONDARY; + default: return org.hl7.fhir.instance.model.Identifier.IdentifierUse.NULL; + } + } + + public org.hl7.fhir.r4.model.Period convertPeriod(org.hl7.fhir.instance.model.Period src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Period tgt = new org.hl7.fhir.r4.model.Period(); + copyElement(src, tgt); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + return tgt; + } + + public org.hl7.fhir.instance.model.Period convertPeriod(org.hl7.fhir.r4.model.Period src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Period tgt = new org.hl7.fhir.instance.model.Period(); + copyElement(src, tgt); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + return tgt; + } + + public org.hl7.fhir.r4.model.Quantity convertQuantity(org.hl7.fhir.instance.model.Quantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Quantity tgt = new org.hl7.fhir.r4.model.Quantity(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Quantity convertQuantity(org.hl7.fhir.r4.model.Quantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Quantity tgt = new org.hl7.fhir.instance.model.Quantity(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.r4.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.instance.model.Quantity.QuantityComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LESS_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_THAN; + case LESS_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_OR_EQUAL; + case GREATER_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; + case GREATER_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_THAN; + default: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.NULL; + } + } + + public org.hl7.fhir.instance.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.r4.model.Quantity.QuantityComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LESS_THAN: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.LESS_THAN; + case LESS_OR_EQUAL: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.LESS_OR_EQUAL; + case GREATER_OR_EQUAL: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; + case GREATER_THAN: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.GREATER_THAN; + default: return org.hl7.fhir.instance.model.Quantity.QuantityComparator.NULL; + } + } + + public org.hl7.fhir.r4.model.Range convertRange(org.hl7.fhir.instance.model.Range src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Range tgt = new org.hl7.fhir.r4.model.Range(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + return tgt; + } + + public org.hl7.fhir.instance.model.Range convertRange(org.hl7.fhir.r4.model.Range src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Range tgt = new org.hl7.fhir.instance.model.Range(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + return tgt; + } + + public org.hl7.fhir.r4.model.Ratio convertRatio(org.hl7.fhir.instance.model.Ratio src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Ratio tgt = new org.hl7.fhir.r4.model.Ratio(); + copyElement(src, tgt); + tgt.setNumerator(convertQuantity(src.getNumerator())); + tgt.setDenominator(convertQuantity(src.getDenominator())); + return tgt; + } + + public org.hl7.fhir.instance.model.Ratio convertRatio(org.hl7.fhir.r4.model.Ratio src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Ratio tgt = new org.hl7.fhir.instance.model.Ratio(); + copyElement(src, tgt); + tgt.setNumerator(convertQuantity(src.getNumerator())); + tgt.setDenominator(convertQuantity(src.getDenominator())); + return tgt; + } + + public org.hl7.fhir.r4.model.Reference convertReference(org.hl7.fhir.instance.model.Reference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Reference tgt = new org.hl7.fhir.r4.model.Reference(); + copyElement(src, tgt); + tgt.setReference(src.getReference()); + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public org.hl7.fhir.instance.model.Reference convertReference(org.hl7.fhir.r4.model.Reference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Reference tgt = new org.hl7.fhir.instance.model.Reference(); + copyElement(src, tgt); + tgt.setReference(src.getReference()); + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public org.hl7.fhir.r4.model.SampledData convertSampledData(org.hl7.fhir.instance.model.SampledData src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.SampledData tgt = new org.hl7.fhir.r4.model.SampledData(); + copyElement(src, tgt); + tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); + tgt.setPeriod(src.getPeriod()); + tgt.setFactor(src.getFactor()); + tgt.setLowerLimit(src.getLowerLimit()); + tgt.setUpperLimit(src.getUpperLimit()); + tgt.setDimensions(src.getDimensions()); + tgt.setData(src.getData()); + return tgt; + } + + public org.hl7.fhir.instance.model.SampledData convertSampledData(org.hl7.fhir.r4.model.SampledData src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SampledData tgt = new org.hl7.fhir.instance.model.SampledData(); + copyElement(src, tgt); + tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); + tgt.setPeriod(src.getPeriod()); + tgt.setFactor(src.getFactor()); + tgt.setLowerLimit(src.getLowerLimit()); + tgt.setUpperLimit(src.getUpperLimit()); + tgt.setDimensions(src.getDimensions()); + tgt.setData(src.getData()); + return tgt; + } + + public org.hl7.fhir.r4.model.Signature convertSignature(org.hl7.fhir.instance.model.Signature src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Signature tgt = new org.hl7.fhir.r4.model.Signature(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + tgt.setWhen(src.getWhen()); + tgt.setWho(convertType(src.getWho())); + tgt.setContentType(src.getContentType()); + tgt.setBlob(src.getBlob()); + return tgt; + } + + public org.hl7.fhir.instance.model.Signature convertSignature(org.hl7.fhir.r4.model.Signature src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Signature tgt = new org.hl7.fhir.instance.model.Signature(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + tgt.setWhen(src.getWhen()); + tgt.setWho(convertType(src.getWho())); + tgt.setContentType(src.getContentType()); + tgt.setBlob(src.getBlob()); + return tgt; + } + + public org.hl7.fhir.r4.model.Address convertAddress(org.hl7.fhir.instance.model.Address src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Address tgt = new org.hl7.fhir.r4.model.Address(); + copyElement(src, tgt); + tgt.setUse(convertAddressUse(src.getUse())); + tgt.setType(convertAddressType(src.getType())); + tgt.setText(src.getText()); + for (org.hl7.fhir.instance.model.StringType t : src.getLine()) + tgt.addLine(t.getValue()); + tgt.setCity(src.getCity()); + tgt.setDistrict(src.getDistrict()); + tgt.setState(src.getState()); + tgt.setPostalCode(src.getPostalCode()); + tgt.setCountry(src.getCountry()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.Address convertAddress(org.hl7.fhir.r4.model.Address src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Address tgt = new org.hl7.fhir.instance.model.Address(); + copyElement(src, tgt); + tgt.setUse(convertAddressUse(src.getUse())); + tgt.setType(convertAddressType(src.getType())); + tgt.setText(src.getText()); + for (org.hl7.fhir.r4.model.StringType t : src.getLine()) + tgt.addLine(t.getValue()); + tgt.setCity(src.getCity()); + tgt.setDistrict(src.getDistrict()); + tgt.setState(src.getState()); + tgt.setPostalCode(src.getPostalCode()); + tgt.setCountry(src.getCountry()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.r4.model.Address.AddressUse convertAddressUse(org.hl7.fhir.instance.model.Address.AddressUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.r4.model.Address.AddressUse.HOME; + case WORK: return org.hl7.fhir.r4.model.Address.AddressUse.WORK; + case TEMP: return org.hl7.fhir.r4.model.Address.AddressUse.TEMP; + case OLD: return org.hl7.fhir.r4.model.Address.AddressUse.OLD; + default: return org.hl7.fhir.r4.model.Address.AddressUse.NULL; + } + } + + public org.hl7.fhir.instance.model.Address.AddressUse convertAddressUse(org.hl7.fhir.r4.model.Address.AddressUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.instance.model.Address.AddressUse.HOME; + case WORK: return org.hl7.fhir.instance.model.Address.AddressUse.WORK; + case TEMP: return org.hl7.fhir.instance.model.Address.AddressUse.TEMP; + case OLD: return org.hl7.fhir.instance.model.Address.AddressUse.OLD; + default: return org.hl7.fhir.instance.model.Address.AddressUse.NULL; + } + } + + public org.hl7.fhir.r4.model.Address.AddressType convertAddressType(org.hl7.fhir.instance.model.Address.AddressType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case POSTAL: return org.hl7.fhir.r4.model.Address.AddressType.POSTAL; + case PHYSICAL: return org.hl7.fhir.r4.model.Address.AddressType.PHYSICAL; + case BOTH: return org.hl7.fhir.r4.model.Address.AddressType.BOTH; + default: return org.hl7.fhir.r4.model.Address.AddressType.NULL; + } + } + + public org.hl7.fhir.instance.model.Address.AddressType convertAddressType(org.hl7.fhir.r4.model.Address.AddressType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case POSTAL: return org.hl7.fhir.instance.model.Address.AddressType.POSTAL; + case PHYSICAL: return org.hl7.fhir.instance.model.Address.AddressType.PHYSICAL; + case BOTH: return org.hl7.fhir.instance.model.Address.AddressType.BOTH; + default: return org.hl7.fhir.instance.model.Address.AddressType.NULL; + } + } + + public org.hl7.fhir.r4.model.ContactPoint convertContactPoint(org.hl7.fhir.instance.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactPoint tgt = new org.hl7.fhir.r4.model.ContactPoint(); + copyElement(src, tgt); + tgt.setSystem(convertContactPointSystem(src.getSystem())); + tgt.setValue(src.getValue()); + tgt.setUse(convertContactPointUse(src.getUse())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.ContactPoint convertContactPoint(org.hl7.fhir.r4.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ContactPoint tgt = new org.hl7.fhir.instance.model.ContactPoint(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(convertContactPointSystem(src.getSystem())); + tgt.setValue(src.getValue()); + tgt.setUse(convertContactPointUse(src.getUse())); + tgt.setRank(src.getRank()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHONE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PHONE; + case FAX: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.FAX; + case EMAIL: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.EMAIL; + case PAGER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PAGER; + case OTHER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.OTHER; + default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.NULL; + } + } + + public org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHONE: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.PHONE; + case FAX: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.FAX; + case EMAIL: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.EMAIL; + case PAGER: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.PAGER; + case OTHER: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.OTHER; + case URL: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.OTHER; + default: return org.hl7.fhir.instance.model.ContactPoint.ContactPointSystem.NULL; + } + } + + public org.hl7.fhir.r4.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.instance.model.ContactPoint.ContactPointUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.HOME; + case WORK: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.WORK; + case TEMP: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.TEMP; + case OLD: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.OLD; + case MOBILE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.MOBILE; + default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.NULL; + } + } + + public org.hl7.fhir.instance.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.r4.model.ContactPoint.ContactPointUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.HOME; + case WORK: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.WORK; + case TEMP: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.TEMP; + case OLD: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.OLD; + case MOBILE: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.MOBILE; + default: return org.hl7.fhir.instance.model.ContactPoint.ContactPointUse.NULL; + } + } + + public org.hl7.fhir.r4.model.ElementDefinition convertElementDefinition(org.hl7.fhir.instance.model.ElementDefinition src, List slicePaths) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition tgt = new org.hl7.fhir.r4.model.ElementDefinition(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + for (org.hl7.fhir.instance.model.Enumeration t : src.getRepresentation()) + tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); + if (src.hasName()) { + if (slicePaths.contains(src.getPath())) + tgt.setSliceName(src.getName()); + tgt.setId(src.getName()); + } + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + for (org.hl7.fhir.instance.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + if (src.hasSlicing()) + tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); + if (src.hasShort()) + tgt.setShort(src.getShort()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasComments()) + tgt.setComment(src.getComments()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + for (org.hl7.fhir.instance.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasBase()) + tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); + if (src.hasNameReference()) + tgt.setContentReference("#"+src.getNameReference()); + for (org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent t : src.getType()) + tgt.addType(convertElementDefinitionTypeComponent(t)); + if (src.hasDefaultValue()) + tgt.setDefaultValue(convertType(src.getDefaultValue())); + if (src.hasMeaningWhenMissing()) + tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); + if (src.hasFixed()) + tgt.setFixed(convertType(src.getFixed())); + if (src.hasPattern()) + tgt.setPattern(convertType(src.getPattern())); + if (src.hasExample()) + tgt.addExample().setLabel("General").setValue(convertType(src.getExample())); + if (src.hasMinValue()) + tgt.setMinValue(convertType(src.getMinValue())); + if (src.hasMaxValue()) + tgt.setMaxValue(convertType(src.getMaxValue())); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + for (org.hl7.fhir.instance.model.IdType t : src.getCondition()) + tgt.addCondition(t.getValue()); + for (org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) + tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); + if (src.hasMustSupport()) + tgt.setMustSupport(src.getMustSupport()); + if (src.hasIsModifier()) + tgt.setIsModifier(src.getIsModifier()); + if (src.hasIsSummary()) + tgt.setIsSummary(src.getIsSummary()); + if (src.hasBinding()) + tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); + for (org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertElementDefinitionMappingComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition convertElementDefinition(org.hl7.fhir.r4.model.ElementDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition tgt = new org.hl7.fhir.instance.model.ElementDefinition(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + for (org.hl7.fhir.r4.model.Enumeration t : src.getRepresentation()) + tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); + if (src.hasSliceName()) + tgt.setName(src.getSliceName()); + else + tgt.setName(src.getId()); + tgt.setLabel(src.getLabel()); + for (org.hl7.fhir.r4.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + if (src.hasSlicing()) + tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); + tgt.setShort(src.getShort()); + tgt.setDefinition(src.getDefinition()); + tgt.setComments(src.getComment()); + tgt.setRequirements(src.getRequirements()); + for (org.hl7.fhir.r4.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + if (src.hasBase()) + tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); + if (src.hasContentReference()) + tgt.setNameReference(src.getContentReference().substring(1)); + for (org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent t : src.getType()) + tgt.addType(convertElementDefinitionTypeComponent(t)); + tgt.setDefaultValue(convertType(src.getDefaultValue())); + tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); + tgt.setFixed(convertType(src.getFixed())); + tgt.setPattern(convertType(src.getPattern())); + if (src.hasExample()) + tgt.setExample(convertType(src.getExampleFirstRep().getValue())); + tgt.setMinValue(convertType(src.getMinValue())); + tgt.setMaxValue(convertType(src.getMaxValue())); + tgt.setMaxLength(src.getMaxLength()); + for (org.hl7.fhir.r4.model.IdType t : src.getCondition()) + tgt.addCondition(t.getValue()); + for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) + tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); + tgt.setMustSupport(src.getMustSupport()); + tgt.setIsModifier(src.getIsModifier()); + tgt.setIsSummary(src.getIsSummary()); + if (src.hasBinding()) + tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); + for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertElementDefinitionMappingComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XMLATTR: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XMLATTR; + default: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.NULL; + } + } + + public org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XMLATTR: return org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation.XMLATTR; + default: return org.hl7.fhir.instance.model.ElementDefinition.PropertyRepresentation.NULL; + } + } + + public org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.StringType t : src.getDiscriminator()) + tgt.addDiscriminator(ProfileUtilities.interpretR2Discriminator(t.getValue())); + tgt.setDescription(src.getDescription()); + tgt.setOrdered(src.getOrdered()); + tgt.setRules(convertSlicingRules(src.getRules())); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionSlicingComponent(); + copyElement(src, tgt); + for (ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) + tgt.addDiscriminator(ProfileUtilities.buildR2Discriminator(t)); + tgt.setDescription(src.getDescription()); + tgt.setOrdered(src.getOrdered()); + tgt.setRules(convertSlicingRules(src.getRules())); + return tgt; + } + + public org.hl7.fhir.r4.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.instance.model.ElementDefinition.SlicingRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLOSED: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.CLOSED; + case OPEN: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPEN; + case OPENATEND: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPENATEND; + default: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.NULL; + } + } + + public org.hl7.fhir.instance.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.r4.model.ElementDefinition.SlicingRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLOSED: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.CLOSED; + case OPEN: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.OPEN; + case OPENATEND: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.OPENATEND; + default: return org.hl7.fhir.instance.model.ElementDefinition.SlicingRules.NULL; + } + } + + public org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBaseComponent(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + return tgt; + } + + public org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent convertElementDefinitionTypeComponent(org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent(); + copyElement(src, tgt); + tgt.setCodeElement(convertCodeToUri(src.getCodeElement())); + for (org.hl7.fhir.instance.model.UriType t : src.getProfile()) + if (src.hasCode() && "Reference".equals(src.getCode())) + tgt.setTargetProfile(t.getValueAsString()); + else + tgt.setProfile(t.getValue()); + for (org.hl7.fhir.instance.model.Enumeration t : src.getAggregation()) + tgt.addAggregation(convertAggregationMode(t.getValue())); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent convertElementDefinitionTypeComponent(org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.TypeRefComponent(); + copyElement(src, tgt); + tgt.setCodeElement(convertUriToCode(src.getCodeElement())); + if (src.hasCode() && "Reference".equals(src.getCode())) { + if (src.hasTargetProfile()) + tgt.addProfile(src.getTargetProfile()); + } else if (src.hasProfile()) + tgt.addProfile(src.getProfile()); + for (org.hl7.fhir.r4.model.Enumeration t : src.getAggregation()) + tgt.addAggregation(convertAggregationMode(t.getValue())); + return tgt; + } + + public org.hl7.fhir.r4.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.instance.model.ElementDefinition.AggregationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONTAINED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.CONTAINED; + case REFERENCED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.REFERENCED; + case BUNDLED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.BUNDLED; + default: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.NULL; + } + } + + public org.hl7.fhir.instance.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.r4.model.ElementDefinition.AggregationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONTAINED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.CONTAINED; + case REFERENCED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.REFERENCED; + case BUNDLED: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.BUNDLED; + default: return org.hl7.fhir.instance.model.ElementDefinition.AggregationMode.NULL; + } + } + + public org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent(); + copyElement(src, tgt); + tgt.setKey(src.getKey()); + tgt.setRequirements(src.getRequirements()); + tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); + tgt.setHuman(src.getHuman()); + tgt.setExpression(ToolingExtensions.readStringExtension(src, ToolingExtensions.EXT_EXPRESSION)); + tgt.setXpath(src.getXpath()); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionConstraintComponent(); + copyElement(src, tgt); + tgt.setKey(src.getKey()); + tgt.setRequirements(src.getRequirements()); + tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); + tgt.setHuman(src.getHuman()); + if (src.hasExpression()) + ToolingExtensions.addStringExtension(tgt, ToolingExtensions.EXT_EXPRESSION, src.getExpression()); + tgt.setXpath(src.getXpath()); + return tgt; + } + + public org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ERROR: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.ERROR; + case WARNING: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.WARNING; + default: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.NULL; + } + } + + public org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ERROR: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.ERROR; + case WARNING: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.WARNING; + default: return org.hl7.fhir.instance.model.ElementDefinition.ConstraintSeverity.NULL; + } + } + + public org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setDescription(src.getDescription()); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setDescription(src.getDescription()); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public org.hl7.fhir.r4.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.instance.model.Enumerations.BindingStrength src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.REQUIRED; + case EXTENSIBLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXTENSIBLE; + case PREFERRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.PREFERRED; + case EXAMPLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXAMPLE; + default: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.r4.model.Enumerations.BindingStrength src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.REQUIRED; + case EXTENSIBLE: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.EXTENSIBLE; + case PREFERRED: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.PREFERRED; + case EXAMPLE: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.EXAMPLE; + default: return org.hl7.fhir.instance.model.Enumerations.BindingStrength.NULL; + } + } + + public org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setLanguage(src.getLanguage()); + tgt.setMap(src.getMap()); + return tgt; + } + + public org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.instance.model.ElementDefinition.ElementDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setLanguage(src.getLanguage()); + tgt.setMap(src.getMap()); + return tgt; + } + + public org.hl7.fhir.r4.model.HumanName convertHumanName(org.hl7.fhir.instance.model.HumanName src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.HumanName tgt = new org.hl7.fhir.r4.model.HumanName(); + copyElement(src, tgt); + tgt.setUse(convertNameUse(src.getUse())); + tgt.setText(src.getText()); + for (org.hl7.fhir.instance.model.StringType t : src.getFamily()) + tgt.setFamily(t.getValue()); + for (org.hl7.fhir.instance.model.StringType t : src.getGiven()) + tgt.addGiven(t.getValue()); + for (org.hl7.fhir.instance.model.StringType t : src.getPrefix()) + tgt.addPrefix(t.getValue()); + for (org.hl7.fhir.instance.model.StringType t : src.getSuffix()) + tgt.addSuffix(t.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.HumanName convertHumanName(org.hl7.fhir.r4.model.HumanName src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.HumanName tgt = new org.hl7.fhir.instance.model.HumanName(); + copyElement(src, tgt); + tgt.setUse(convertNameUse(src.getUse())); + tgt.setText(src.getText()); + if (src.hasFamily()) + tgt.addFamily(src.getFamily()); + for (org.hl7.fhir.r4.model.StringType t : src.getGiven()) + tgt.addGiven(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getPrefix()) + tgt.addPrefix(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getSuffix()) + tgt.addSuffix(t.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.r4.model.HumanName.NameUse convertNameUse(org.hl7.fhir.instance.model.HumanName.NameUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.r4.model.HumanName.NameUse.USUAL; + case OFFICIAL: return org.hl7.fhir.r4.model.HumanName.NameUse.OFFICIAL; + case TEMP: return org.hl7.fhir.r4.model.HumanName.NameUse.TEMP; + case NICKNAME: return org.hl7.fhir.r4.model.HumanName.NameUse.NICKNAME; + case ANONYMOUS: return org.hl7.fhir.r4.model.HumanName.NameUse.ANONYMOUS; + case OLD: return org.hl7.fhir.r4.model.HumanName.NameUse.OLD; + case MAIDEN: return org.hl7.fhir.r4.model.HumanName.NameUse.MAIDEN; + default: return org.hl7.fhir.r4.model.HumanName.NameUse.NULL; + } + } + + public org.hl7.fhir.instance.model.HumanName.NameUse convertNameUse(org.hl7.fhir.r4.model.HumanName.NameUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.instance.model.HumanName.NameUse.USUAL; + case OFFICIAL: return org.hl7.fhir.instance.model.HumanName.NameUse.OFFICIAL; + case TEMP: return org.hl7.fhir.instance.model.HumanName.NameUse.TEMP; + case NICKNAME: return org.hl7.fhir.instance.model.HumanName.NameUse.NICKNAME; + case ANONYMOUS: return org.hl7.fhir.instance.model.HumanName.NameUse.ANONYMOUS; + case OLD: return org.hl7.fhir.instance.model.HumanName.NameUse.OLD; + case MAIDEN: return org.hl7.fhir.instance.model.HumanName.NameUse.MAIDEN; + default: return org.hl7.fhir.instance.model.HumanName.NameUse.NULL; + } + } + + public org.hl7.fhir.r4.model.Meta convertMeta(org.hl7.fhir.instance.model.Meta src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Meta tgt = new org.hl7.fhir.r4.model.Meta(); + copyElement(src, tgt); + tgt.setVersionId(src.getVersionId()); + tgt.setLastUpdated(src.getLastUpdated()); + for (org.hl7.fhir.instance.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.instance.model.Coding t : src.getSecurity()) + tgt.addSecurity(convertCoding(t)); + for (org.hl7.fhir.instance.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Meta convertMeta(org.hl7.fhir.r4.model.Meta src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Meta tgt = new org.hl7.fhir.instance.model.Meta(); + copyElement(src, tgt); + tgt.setVersionId(src.getVersionId()); + tgt.setLastUpdated(src.getLastUpdated()); + for (org.hl7.fhir.r4.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.r4.model.Coding t : src.getSecurity()) + tgt.addSecurity(convertCoding(t)); + for (org.hl7.fhir.r4.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Timing convertTiming(org.hl7.fhir.instance.model.Timing src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Timing tgt = new org.hl7.fhir.r4.model.Timing(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.DateTimeType t : src.getEvent()) + tgt.addEvent(t.getValue()); + tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public org.hl7.fhir.instance.model.Timing convertTiming(org.hl7.fhir.r4.model.Timing src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Timing tgt = new org.hl7.fhir.instance.model.Timing(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.DateTimeType t : src.getEvent()) + tgt.addEvent(t.getValue()); + tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public org.hl7.fhir.r4.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.instance.model.Timing.TimingRepeatComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.r4.model.Timing.TimingRepeatComponent(); + copyElement(src, tgt); + tgt.setBounds(convertType(src.getBounds())); + tgt.setCount(src.getCount()); + tgt.setDuration(src.getDuration()); + tgt.setDurationMax(src.getDurationMax()); + tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnits())); + tgt.setFrequency(src.getFrequency()); + tgt.setFrequencyMax(src.getFrequencyMax()); + tgt.setPeriod(src.getPeriod()); + tgt.setPeriodMax(src.getPeriodMax()); + tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnits())); + tgt.addWhen(convertEventTiming(src.getWhen())); + return tgt; + } + + public org.hl7.fhir.instance.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.r4.model.Timing.TimingRepeatComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.instance.model.Timing.TimingRepeatComponent(); + copyElement(src, tgt); + tgt.setBounds(convertType(src.getBounds())); + tgt.setCount(src.getCount()); + tgt.setDuration(src.getDuration()); + tgt.setDurationMax(src.getDurationMax()); + tgt.setDurationUnits(convertUnitsOfTime(src.getDurationUnit())); + tgt.setFrequency(src.getFrequency()); + tgt.setFrequencyMax(src.getFrequencyMax()); + tgt.setPeriod(src.getPeriod()); + tgt.setPeriodMax(src.getPeriodMax()); + tgt.setPeriodUnits(convertUnitsOfTime(src.getPeriodUnit())); + for (Enumeration t : src.getWhen()) + tgt.setWhen(convertEventTiming(t.getValue())); + return tgt; + } + + public org.hl7.fhir.r4.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.instance.model.Timing.UnitsOfTime src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case S: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.S; + case MIN: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MIN; + case H: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.H; + case D: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.D; + case WK: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.WK; + case MO: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MO; + case A: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.A; + default: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.NULL; + } + } + + public org.hl7.fhir.instance.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.r4.model.Timing.UnitsOfTime src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case S: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.S; + case MIN: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.MIN; + case H: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.H; + case D: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.D; + case WK: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.WK; + case MO: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.MO; + case A: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.A; + default: return org.hl7.fhir.instance.model.Timing.UnitsOfTime.NULL; + } + } + + public org.hl7.fhir.r4.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.instance.model.Timing.EventTiming src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HS: return org.hl7.fhir.r4.model.Timing.EventTiming.HS; + case WAKE: return org.hl7.fhir.r4.model.Timing.EventTiming.WAKE; + case C: return org.hl7.fhir.r4.model.Timing.EventTiming.C; + case CM: return org.hl7.fhir.r4.model.Timing.EventTiming.CM; + case CD: return org.hl7.fhir.r4.model.Timing.EventTiming.CD; + case CV: return org.hl7.fhir.r4.model.Timing.EventTiming.CV; + case AC: return org.hl7.fhir.r4.model.Timing.EventTiming.AC; + case ACM: return org.hl7.fhir.r4.model.Timing.EventTiming.ACM; + case ACD: return org.hl7.fhir.r4.model.Timing.EventTiming.ACD; + case ACV: return org.hl7.fhir.r4.model.Timing.EventTiming.ACV; + case PC: return org.hl7.fhir.r4.model.Timing.EventTiming.PC; + case PCM: return org.hl7.fhir.r4.model.Timing.EventTiming.PCM; + case PCD: return org.hl7.fhir.r4.model.Timing.EventTiming.PCD; + case PCV: return org.hl7.fhir.r4.model.Timing.EventTiming.PCV; + default: return org.hl7.fhir.r4.model.Timing.EventTiming.NULL; + } + } + + public org.hl7.fhir.instance.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.r4.model.Timing.EventTiming src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HS: return org.hl7.fhir.instance.model.Timing.EventTiming.HS; + case WAKE: return org.hl7.fhir.instance.model.Timing.EventTiming.WAKE; + case C: return org.hl7.fhir.instance.model.Timing.EventTiming.C; + case CM: return org.hl7.fhir.instance.model.Timing.EventTiming.CM; + case CD: return org.hl7.fhir.instance.model.Timing.EventTiming.CD; + case CV: return org.hl7.fhir.instance.model.Timing.EventTiming.CV; + case AC: return org.hl7.fhir.instance.model.Timing.EventTiming.AC; + case ACM: return org.hl7.fhir.instance.model.Timing.EventTiming.ACM; + case ACD: return org.hl7.fhir.instance.model.Timing.EventTiming.ACD; + case ACV: return org.hl7.fhir.instance.model.Timing.EventTiming.ACV; + case PC: return org.hl7.fhir.instance.model.Timing.EventTiming.PC; + case PCM: return org.hl7.fhir.instance.model.Timing.EventTiming.PCM; + case PCD: return org.hl7.fhir.instance.model.Timing.EventTiming.PCD; + case PCV: return org.hl7.fhir.instance.model.Timing.EventTiming.PCV; + default: return org.hl7.fhir.instance.model.Timing.EventTiming.NULL; + } + } + + public org.hl7.fhir.r4.model.Age convertAge(org.hl7.fhir.instance.model.Age src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Age tgt = new org.hl7.fhir.r4.model.Age(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Age convertAge(org.hl7.fhir.r4.model.Age src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Age tgt = new org.hl7.fhir.instance.model.Age(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.r4.model.Count convertCount(org.hl7.fhir.instance.model.Count src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Count tgt = new org.hl7.fhir.r4.model.Count(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Count convertCount(org.hl7.fhir.r4.model.Count src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Count tgt = new org.hl7.fhir.instance.model.Count(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.r4.model.Distance convertDistance(org.hl7.fhir.instance.model.Distance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Distance tgt = new org.hl7.fhir.r4.model.Distance(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Distance convertDistance(org.hl7.fhir.r4.model.Distance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Distance tgt = new org.hl7.fhir.instance.model.Distance(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.r4.model.Duration convertDuration(org.hl7.fhir.instance.model.Duration src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Duration tgt = new org.hl7.fhir.r4.model.Duration(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Duration convertDuration(org.hl7.fhir.r4.model.Duration src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Duration tgt = new org.hl7.fhir.instance.model.Duration(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.r4.model.Money convertMoney(org.hl7.fhir.instance.model.Money src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Money tgt = new org.hl7.fhir.r4.model.Money(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.Money convertMoney(org.hl7.fhir.r4.model.Money src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Money tgt = new org.hl7.fhir.instance.model.Money(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.r4.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.instance.model.SimpleQuantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.SimpleQuantity tgt = new org.hl7.fhir.r4.model.SimpleQuantity(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.r4.model.SimpleQuantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SimpleQuantity tgt = new org.hl7.fhir.instance.model.SimpleQuantity(); + copyElement(src, tgt); + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + tgt.setUnit(src.getUnit()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.r4.model.Type convertType(org.hl7.fhir.instance.model.Type src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.instance.model.Base64BinaryType) + return convertBase64Binary((org.hl7.fhir.instance.model.Base64BinaryType) src); + if (src instanceof org.hl7.fhir.instance.model.BooleanType) + return convertBoolean((org.hl7.fhir.instance.model.BooleanType) src); + if (src instanceof org.hl7.fhir.instance.model.CodeType) + return convertCode((org.hl7.fhir.instance.model.CodeType) src); + if (src instanceof org.hl7.fhir.instance.model.DateType) + return convertDate((org.hl7.fhir.instance.model.DateType) src); + if (src instanceof org.hl7.fhir.instance.model.DateTimeType) + return convertDateTime((org.hl7.fhir.instance.model.DateTimeType) src); + if (src instanceof org.hl7.fhir.instance.model.DecimalType) + return convertDecimal((org.hl7.fhir.instance.model.DecimalType) src); + if (src instanceof org.hl7.fhir.instance.model.IdType) + return convertId((org.hl7.fhir.instance.model.IdType) src); + if (src instanceof org.hl7.fhir.instance.model.InstantType) + return convertInstant((org.hl7.fhir.instance.model.InstantType) src); + if (src instanceof org.hl7.fhir.instance.model.IntegerType) + return convertInteger((org.hl7.fhir.instance.model.IntegerType) src); + if (src instanceof org.hl7.fhir.instance.model.MarkdownType) + return convertMarkdown((org.hl7.fhir.instance.model.MarkdownType) src); + if (src instanceof org.hl7.fhir.instance.model.OidType) + return convertOid((org.hl7.fhir.instance.model.OidType) src); + if (src instanceof org.hl7.fhir.instance.model.PositiveIntType) + return convertPositiveInt((org.hl7.fhir.instance.model.PositiveIntType) src); + if (src instanceof org.hl7.fhir.instance.model.StringType) + return convertString((org.hl7.fhir.instance.model.StringType) src); + if (src instanceof org.hl7.fhir.instance.model.TimeType) + return convertTime((org.hl7.fhir.instance.model.TimeType) src); + if (src instanceof org.hl7.fhir.instance.model.UnsignedIntType) + return convertUnsignedInt((org.hl7.fhir.instance.model.UnsignedIntType) src); + if (src instanceof org.hl7.fhir.instance.model.UriType) + return convertUri((org.hl7.fhir.instance.model.UriType) src); + if (src instanceof org.hl7.fhir.instance.model.UuidType) + return convertUuid((org.hl7.fhir.instance.model.UuidType) src); + if (src instanceof org.hl7.fhir.instance.model.Extension) + return convertExtension((org.hl7.fhir.instance.model.Extension) src); + if (src instanceof org.hl7.fhir.instance.model.Narrative) + return convertNarrative((org.hl7.fhir.instance.model.Narrative) src); + if (src instanceof org.hl7.fhir.instance.model.Annotation) + return convertAnnotation((org.hl7.fhir.instance.model.Annotation) src); + if (src instanceof org.hl7.fhir.instance.model.Attachment) + return convertAttachment((org.hl7.fhir.instance.model.Attachment) src); + if (src instanceof org.hl7.fhir.instance.model.CodeableConcept) + return convertCodeableConcept((org.hl7.fhir.instance.model.CodeableConcept) src); + if (src instanceof org.hl7.fhir.instance.model.Coding) + return convertCoding((org.hl7.fhir.instance.model.Coding) src); + if (src instanceof org.hl7.fhir.instance.model.Identifier) + return convertIdentifier((org.hl7.fhir.instance.model.Identifier) src); + if (src instanceof org.hl7.fhir.instance.model.Period) + return convertPeriod((org.hl7.fhir.instance.model.Period) src); + if (src instanceof org.hl7.fhir.instance.model.Quantity) + return convertQuantity((org.hl7.fhir.instance.model.Quantity) src); + if (src instanceof org.hl7.fhir.instance.model.Range) + return convertRange((org.hl7.fhir.instance.model.Range) src); + if (src instanceof org.hl7.fhir.instance.model.Ratio) + return convertRatio((org.hl7.fhir.instance.model.Ratio) src); + if (src instanceof org.hl7.fhir.instance.model.Reference) + return convertReference((org.hl7.fhir.instance.model.Reference) src); + if (src instanceof org.hl7.fhir.instance.model.SampledData) + return convertSampledData((org.hl7.fhir.instance.model.SampledData) src); + if (src instanceof org.hl7.fhir.instance.model.Signature) + return convertSignature((org.hl7.fhir.instance.model.Signature) src); + if (src instanceof org.hl7.fhir.instance.model.Address) + return convertAddress((org.hl7.fhir.instance.model.Address) src); + if (src instanceof org.hl7.fhir.instance.model.ContactPoint) + return convertContactPoint((org.hl7.fhir.instance.model.ContactPoint) src); + if (src instanceof org.hl7.fhir.instance.model.ElementDefinition) + return convertElementDefinition((org.hl7.fhir.instance.model.ElementDefinition) src, new ArrayList()); + if (src instanceof org.hl7.fhir.instance.model.HumanName) + return convertHumanName((org.hl7.fhir.instance.model.HumanName) src); + if (src instanceof org.hl7.fhir.instance.model.Meta) + return convertMeta((org.hl7.fhir.instance.model.Meta) src); + if (src instanceof org.hl7.fhir.instance.model.Timing) + return convertTiming((org.hl7.fhir.instance.model.Timing) src); + if (src instanceof org.hl7.fhir.instance.model.Age) + return convertAge((org.hl7.fhir.instance.model.Age) src); + if (src instanceof org.hl7.fhir.instance.model.Count) + return convertCount((org.hl7.fhir.instance.model.Count) src); + if (src instanceof org.hl7.fhir.instance.model.Distance) + return convertDistance((org.hl7.fhir.instance.model.Distance) src); + if (src instanceof org.hl7.fhir.instance.model.Duration) + return convertDuration((org.hl7.fhir.instance.model.Duration) src); + if (src instanceof org.hl7.fhir.instance.model.Money) + return convertMoney((org.hl7.fhir.instance.model.Money) src); + if (src instanceof org.hl7.fhir.instance.model.SimpleQuantity) + return convertSimpleQuantity((org.hl7.fhir.instance.model.SimpleQuantity) src); + throw new Error("Unknown type "+src.fhirType()); + } + + public org.hl7.fhir.instance.model.Type convertType(org.hl7.fhir.r4.model.Type src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.r4.model.Base64BinaryType) + return convertBase64Binary((org.hl7.fhir.r4.model.Base64BinaryType) src); + if (src instanceof org.hl7.fhir.r4.model.BooleanType) + return convertBoolean((org.hl7.fhir.r4.model.BooleanType) src); + if (src instanceof org.hl7.fhir.r4.model.CodeType) + return convertCode((org.hl7.fhir.r4.model.CodeType) src); + if (src instanceof org.hl7.fhir.r4.model.DateType) + return convertDate((org.hl7.fhir.r4.model.DateType) src); + if (src instanceof org.hl7.fhir.r4.model.DateTimeType) + return convertDateTime((org.hl7.fhir.r4.model.DateTimeType) src); + if (src instanceof org.hl7.fhir.r4.model.DecimalType) + return convertDecimal((org.hl7.fhir.r4.model.DecimalType) src); + if (src instanceof org.hl7.fhir.r4.model.IdType) + return convertId((org.hl7.fhir.r4.model.IdType) src); + if (src instanceof org.hl7.fhir.r4.model.InstantType) + return convertInstant((org.hl7.fhir.r4.model.InstantType) src); + if (src instanceof org.hl7.fhir.r4.model.IntegerType) + return convertInteger((org.hl7.fhir.r4.model.IntegerType) src); + if (src instanceof org.hl7.fhir.r4.model.MarkdownType) + return convertMarkdown((org.hl7.fhir.r4.model.MarkdownType) src); + if (src instanceof org.hl7.fhir.r4.model.OidType) + return convertOid((org.hl7.fhir.r4.model.OidType) src); + if (src instanceof org.hl7.fhir.r4.model.PositiveIntType) + return convertPositiveInt((org.hl7.fhir.r4.model.PositiveIntType) src); + if (src instanceof org.hl7.fhir.r4.model.StringType) + return convertString((org.hl7.fhir.r4.model.StringType) src); + if (src instanceof org.hl7.fhir.r4.model.TimeType) + return convertTime((org.hl7.fhir.r4.model.TimeType) src); + if (src instanceof org.hl7.fhir.r4.model.UnsignedIntType) + return convertUnsignedInt((org.hl7.fhir.r4.model.UnsignedIntType) src); + if (src instanceof org.hl7.fhir.r4.model.UriType) + return convertUri((org.hl7.fhir.r4.model.UriType) src); + if (src instanceof org.hl7.fhir.r4.model.UuidType) + return convertUuid((org.hl7.fhir.r4.model.UuidType) src); + if (src instanceof org.hl7.fhir.r4.model.Extension) + return convertExtension((org.hl7.fhir.r4.model.Extension) src); + if (src instanceof org.hl7.fhir.r4.model.Narrative) + return convertNarrative((org.hl7.fhir.r4.model.Narrative) src); + if (src instanceof org.hl7.fhir.r4.model.Annotation) + return convertAnnotation((org.hl7.fhir.r4.model.Annotation) src); + if (src instanceof org.hl7.fhir.r4.model.Attachment) + return convertAttachment((org.hl7.fhir.r4.model.Attachment) src); + if (src instanceof org.hl7.fhir.r4.model.CodeableConcept) + return convertCodeableConcept((org.hl7.fhir.r4.model.CodeableConcept) src); + if (src instanceof org.hl7.fhir.r4.model.Coding) + return convertCoding((org.hl7.fhir.r4.model.Coding) src); + if (src instanceof org.hl7.fhir.r4.model.Identifier) + return convertIdentifier((org.hl7.fhir.r4.model.Identifier) src); + if (src instanceof org.hl7.fhir.r4.model.Period) + return convertPeriod((org.hl7.fhir.r4.model.Period) src); + if (src instanceof org.hl7.fhir.r4.model.Quantity) + return convertQuantity((org.hl7.fhir.r4.model.Quantity) src); + if (src instanceof org.hl7.fhir.r4.model.Range) + return convertRange((org.hl7.fhir.r4.model.Range) src); + if (src instanceof org.hl7.fhir.r4.model.Ratio) + return convertRatio((org.hl7.fhir.r4.model.Ratio) src); + if (src instanceof org.hl7.fhir.r4.model.Reference) + return convertReference((org.hl7.fhir.r4.model.Reference) src); + if (src instanceof org.hl7.fhir.r4.model.SampledData) + return convertSampledData((org.hl7.fhir.r4.model.SampledData) src); + if (src instanceof org.hl7.fhir.r4.model.Signature) + return convertSignature((org.hl7.fhir.r4.model.Signature) src); + if (src instanceof org.hl7.fhir.r4.model.Address) + return convertAddress((org.hl7.fhir.r4.model.Address) src); + if (src instanceof org.hl7.fhir.r4.model.ContactPoint) + return convertContactPoint((org.hl7.fhir.r4.model.ContactPoint) src); + if (src instanceof org.hl7.fhir.r4.model.ElementDefinition) + return convertElementDefinition((org.hl7.fhir.r4.model.ElementDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.HumanName) + return convertHumanName((org.hl7.fhir.r4.model.HumanName) src); + if (src instanceof org.hl7.fhir.r4.model.Meta) + return convertMeta((org.hl7.fhir.r4.model.Meta) src); + if (src instanceof org.hl7.fhir.r4.model.Timing) + return convertTiming((org.hl7.fhir.r4.model.Timing) src); + if (src instanceof org.hl7.fhir.r4.model.Age) + return convertAge((org.hl7.fhir.r4.model.Age) src); + if (src instanceof org.hl7.fhir.r4.model.Count) + return convertCount((org.hl7.fhir.r4.model.Count) src); + if (src instanceof org.hl7.fhir.r4.model.Distance) + return convertDistance((org.hl7.fhir.r4.model.Distance) src); + if (src instanceof org.hl7.fhir.r4.model.Duration) + return convertDuration((org.hl7.fhir.r4.model.Duration) src); + if (src instanceof org.hl7.fhir.r4.model.Money) + return convertMoney((org.hl7.fhir.r4.model.Money) src); + if (src instanceof org.hl7.fhir.r4.model.SimpleQuantity) + return convertSimpleQuantity((org.hl7.fhir.r4.model.SimpleQuantity) src); + throw new Error("Unknown type "+src.fhirType()); + } + + public void copyDomainResource(org.hl7.fhir.instance.model.DomainResource src, org.hl7.fhir.r4.model.DomainResource tgt) throws FHIRException { + copyResource(src, tgt); + tgt.setText(convertNarrative(src.getText())); + for (org.hl7.fhir.instance.model.Resource t : src.getContained()) + tgt.addContained(convertResource(t)); + for (org.hl7.fhir.instance.model.Extension t : src.getExtension()) + tgt.addExtension(convertExtension(t)); + for (org.hl7.fhir.instance.model.Extension t : src.getModifierExtension()) + tgt.addModifierExtension(convertExtension(t)); + } + public void copyDomainResource(org.hl7.fhir.r4.model.DomainResource src, org.hl7.fhir.instance.model.DomainResource tgt) throws FHIRException { + copyResource(src, tgt); + tgt.setText(convertNarrative(src.getText())); + for (org.hl7.fhir.r4.model.Resource t : src.getContained()) + tgt.addContained(convertResource(t)); + for (org.hl7.fhir.r4.model.Extension t : src.getExtension()) + tgt.addExtension(convertExtension(t)); + for (org.hl7.fhir.r4.model.Extension t : src.getModifierExtension()) + tgt.addModifierExtension(convertExtension(t)); + } + + public org.hl7.fhir.r4.model.Parameters convertParameters(org.hl7.fhir.instance.model.Parameters src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Parameters tgt = new org.hl7.fhir.r4.model.Parameters(); + copyResource(src, tgt); + for (org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent t : src.getParameter()) + tgt.addParameter(convertParametersParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Parameters convertParameters(org.hl7.fhir.r4.model.Parameters src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Parameters tgt = new org.hl7.fhir.instance.model.Parameters(); + copyResource(src, tgt); + for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getParameter()) + tgt.addParameter(convertParametersParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + tgt.setResource(convertResource(src.getResource())); + for (org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent t : src.getPart()) + tgt.addPart(convertParametersParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.instance.model.Parameters.ParametersParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + tgt.setResource(convertResource(src.getResource())); + for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getPart()) + tgt.addPart(convertParametersParameterComponent(t)); + return tgt; + } + + public void copyResource(org.hl7.fhir.instance.model.Resource src, org.hl7.fhir.r4.model.Resource tgt) throws FHIRException { + tgt.setId(src.getId()); + tgt.setMeta(convertMeta(src.getMeta())); + tgt.setImplicitRules(src.getImplicitRules()); + tgt.setLanguage(src.getLanguage()); + } + public void copyResource(org.hl7.fhir.r4.model.Resource src, org.hl7.fhir.instance.model.Resource tgt) throws FHIRException { + tgt.setId(src.getId()); + if (src.hasMeta()) + tgt.setMeta(convertMeta(src.getMeta())); + if (src.hasImplicitRules()) + tgt.setImplicitRules(src.getImplicitRules()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + } + + public org.hl7.fhir.r4.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.instance.model.Enumerations.AdministrativeGender src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MALE: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.MALE; + case FEMALE: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.FEMALE; + case OTHER: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.OTHER; + case UNKNOWN: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.UNKNOWN; + default: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.r4.model.Enumerations.AdministrativeGender src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MALE: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.MALE; + case FEMALE: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.FEMALE; + case OTHER: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.OTHER; + case UNKNOWN: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.UNKNOWN; + default: return org.hl7.fhir.instance.model.Enumerations.AdministrativeGender.NULL; + } + } + + public org.hl7.fhir.r4.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.instance.model.Enumerations.SearchParamType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NUMBER: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NUMBER; + case DATE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.DATE; + case STRING: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.STRING; + case TOKEN: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.TOKEN; + case REFERENCE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.REFERENCE; + case COMPOSITE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.COMPOSITE; + case QUANTITY: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.QUANTITY; + case URI: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.URI; + default: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.r4.model.Enumerations.SearchParamType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NUMBER: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.NUMBER; + case DATE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.DATE; + case STRING: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.STRING; + case TOKEN: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.TOKEN; + case REFERENCE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.REFERENCE; + case COMPOSITE: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.COMPOSITE; + case QUANTITY: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.QUANTITY; + case URI: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.URI; + default: return org.hl7.fhir.instance.model.Enumerations.SearchParamType.NULL; + } + } + + public org.hl7.fhir.r4.model.Account convertAccount(org.hl7.fhir.instance.model.Account src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Account tgt = new org.hl7.fhir.r4.model.Account(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setStatus(convertAccountStatus(src.getStatus())); + tgt.setActive(convertPeriod(src.getActivePeriod())); + tgt.setBalance(convertMoney(src.getBalance())); +// tgt.setCoveragePeriod(convertPeriod(src.getCoveragePeriod())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setOwner(convertReference(src.getOwner())); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.instance.model.Account convertAccount(org.hl7.fhir.r4.model.Account src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Account tgt = new org.hl7.fhir.instance.model.Account(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setName(src.getName()); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setStatus(convertAccountStatus(src.getStatus())); + tgt.setActivePeriod(convertPeriod(src.getActive())); + tgt.setBalance(convertMoney(src.getBalance())); +// tgt.setCoveragePeriod(convertPeriod(src.getCoveragePeriod())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setOwner(convertReference(src.getOwner())); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.r4.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.instance.model.Account.AccountStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Account.AccountStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.r4.model.Account.AccountStatus.INACTIVE; + default: return org.hl7.fhir.r4.model.Account.AccountStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.r4.model.Account.AccountStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.Account.AccountStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.instance.model.Account.AccountStatus.INACTIVE; + default: return org.hl7.fhir.instance.model.Account.AccountStatus.NULL; + } + } + + + public org.hl7.fhir.r4.model.Appointment convertAppointment(org.hl7.fhir.instance.model.Appointment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Appointment tgt = new org.hl7.fhir.r4.model.Appointment(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertAppointmentStatus(src.getStatus())); + if (src.hasType()) + tgt.addServiceType(convertCodeableConcept(src.getType())); +// tgt.setReason(convertCodeableConcept(src.getReason())); + tgt.setPriority(src.getPriority()); + tgt.setDescription(src.getDescription()); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + tgt.setMinutesDuration(src.getMinutesDuration()); + for (org.hl7.fhir.instance.model.Reference t : src.getSlot()) + tgt.addSlot(convertReference(t)); + tgt.setComment(src.getComment()); + for (org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertAppointmentParticipantComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Appointment convertAppointment(org.hl7.fhir.r4.model.Appointment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Appointment tgt = new org.hl7.fhir.instance.model.Appointment(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertAppointmentStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) + tgt.setType(convertCodeableConcept(t)); +// tgt.setReason(convertCodeableConcept(src.getReason())); + tgt.setPriority(src.getPriority()); + tgt.setDescription(src.getDescription()); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + tgt.setMinutesDuration(src.getMinutesDuration()); + for (org.hl7.fhir.r4.model.Reference t : src.getSlot()) + tgt.addSlot(convertReference(t)); + tgt.setComment(src.getComment()); + for (org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertAppointmentParticipantComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.instance.model.Appointment.AppointmentStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.PROPOSED; + case PENDING: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.PENDING; + case BOOKED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.BOOKED; + case ARRIVED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.ARRIVED; + case FULFILLED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.FULFILLED; + case CANCELLED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.CANCELLED; + case NOSHOW: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.NOSHOW; + default: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.r4.model.Appointment.AppointmentStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.PROPOSED; + case PENDING: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.PENDING; + case BOOKED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.BOOKED; + case ARRIVED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.ARRIVED; + case FULFILLED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.FULFILLED; + case CANCELLED: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.CANCELLED; + case NOSHOW: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.NOSHOW; + default: return org.hl7.fhir.instance.model.Appointment.AppointmentStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setActor(convertReference(src.getActor())); + tgt.setRequired(convertParticipantRequired(src.getRequired())); + tgt.setStatus(convertParticipationStatus(src.getStatus())); + return tgt; + } + + public org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.instance.model.Appointment.AppointmentParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setActor(convertReference(src.getActor())); + tgt.setRequired(convertParticipantRequired(src.getRequired())); + tgt.setStatus(convertParticipationStatus(src.getStatus())); + return tgt; + } + + public org.hl7.fhir.r4.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.instance.model.Appointment.ParticipantRequired src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.REQUIRED; + case OPTIONAL: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.OPTIONAL; + case INFORMATIONONLY: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.INFORMATIONONLY; + default: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.NULL; + } + } + + public org.hl7.fhir.instance.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.r4.model.Appointment.ParticipantRequired src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.REQUIRED; + case OPTIONAL: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.OPTIONAL; + case INFORMATIONONLY: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.INFORMATIONONLY; + default: return org.hl7.fhir.instance.model.Appointment.ParticipantRequired.NULL; + } + } + + public org.hl7.fhir.r4.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.instance.model.Appointment.ParticipationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.TENTATIVE; + case NEEDSACTION: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.NEEDSACTION; + default: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.r4.model.Appointment.ParticipationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.TENTATIVE; + case NEEDSACTION: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.NEEDSACTION; + default: return org.hl7.fhir.instance.model.Appointment.ParticipationStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.instance.model.AppointmentResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.AppointmentResponse tgt = new org.hl7.fhir.r4.model.AppointmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setAppointment(convertReference(src.getAppointment())); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getParticipantType()) + tgt.addParticipantType(convertCodeableConcept(t)); + tgt.setActor(convertReference(src.getActor())); + tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); + tgt.setComment(src.getComment()); + return tgt; + } + + private org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus src) { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.TENTATIVE; + case INPROCESS: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.ACCEPTED; + case COMPLETED: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.ACCEPTED; + case NEEDSACTION: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; + default: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.NULL; + } + } + + private org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus src) { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.TENTATIVE; + case NEEDSACTION: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; + default: return org.hl7.fhir.instance.model.AppointmentResponse.ParticipantStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.r4.model.AppointmentResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AppointmentResponse tgt = new org.hl7.fhir.instance.model.AppointmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setAppointment(convertReference(src.getAppointment())); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getParticipantType()) + tgt.addParticipantType(convertCodeableConcept(t)); + tgt.setActor(convertReference(src.getActor())); + tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); + tgt.setComment(src.getComment()); + return tgt; + } + + public org.hl7.fhir.r4.model.AuditEvent convertAuditEvent(org.hl7.fhir.instance.model.AuditEvent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.AuditEvent tgt = new org.hl7.fhir.r4.model.AuditEvent(); + copyDomainResource(src, tgt); + if (src.hasEvent()) { + tgt.setType(convertCoding(src.getEvent().getType())); + for (org.hl7.fhir.instance.model.Coding t : src.getEvent().getSubtype()) + tgt.addSubtype(convertCoding(t)); + tgt.setAction(convertAuditEventAction(src.getEvent().getAction())); + tgt.setRecorded(src.getEvent().getDateTime()); + tgt.setOutcome(convertAuditEventOutcome(src.getEvent().getOutcome())); + tgt.setOutcomeDesc(src.getEvent().getOutcomeDesc()); + for (org.hl7.fhir.instance.model.Coding t : src.getEvent().getPurposeOfEvent()) + tgt.addPurposeOfEvent().addCoding(convertCoding(t)); + } + for (org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent t : src.getParticipant()) + tgt.addAgent(convertAuditEventAgentComponent(t)); + tgt.setSource(convertAuditEventSourceComponent(src.getSource())); + for (org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent t : src.getObject()) + tgt.addEntity(convertAuditEventEntityComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent convertAuditEvent(org.hl7.fhir.r4.model.AuditEvent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent tgt = new org.hl7.fhir.instance.model.AuditEvent(); + copyDomainResource(src, tgt); + tgt.getEvent().setType(convertCoding(src.getType())); + for (org.hl7.fhir.r4.model.Coding t : src.getSubtype()) + tgt.getEvent().addSubtype(convertCoding(t)); + tgt.getEvent().setAction(convertAuditEventAction(src.getAction())); + tgt.getEvent().setDateTime(src.getRecorded()); + tgt.getEvent().setOutcome(convertAuditEventOutcome(src.getOutcome())); + tgt.getEvent().setOutcomeDesc(src.getOutcomeDesc()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPurposeOfEvent()) + for (org.hl7.fhir.r4.model.Coding cc : t.getCoding()) + tgt.getEvent().addPurposeOfEvent(convertCoding(cc)); + for (org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) + tgt.addParticipant(convertAuditEventAgentComponent(t)); + tgt.setSource(convertAuditEventSourceComponent(src.getSource())); + for (org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent t : src.getEntity()) + tgt.addObject(convertAuditEventEntityComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.instance.model.AuditEvent.AuditEventAction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case C: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.C; + case R: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.R; + case U: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.U; + case D: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.D; + case E: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.E; + default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.NULL; + } + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.r4.model.AuditEvent.AuditEventAction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case C: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.C; + case R: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.R; + case U: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.U; + case D: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.D; + case E: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.E; + default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventAction.NULL; + } + } + + public org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _0: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._0; + case _4: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._4; + case _8: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._8; + case _12: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._12; + default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome.NULL; + } + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _0: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._0; + case _4: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._4; + case _8: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._8; + case _12: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome._12; + default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventOutcome.NULL; + } + } + + public org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent convertAuditEventAgentComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + tgt.setReference(convertReference(src.getReference())); + tgt.setUserId(convertIdentifier(src.getUserId())); + tgt.setAltId(src.getAltId()); + tgt.setName(src.getName()); + tgt.setRequestor(src.getRequestor()); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.instance.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + tgt.setMedia(convertCoding(src.getMedia())); + tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); + for (org.hl7.fhir.instance.model.Coding t : src.getPurposeOfUse()) + tgt.addPurposeOfUse().addCoding(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent convertAuditEventAgentComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + tgt.setReference(convertReference(src.getReference())); + tgt.setUserId(convertIdentifier(src.getUserId())); + tgt.setAltId(src.getAltId()); + tgt.setName(src.getName()); + tgt.setRequestor(src.getRequestor()); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.r4.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + tgt.setMedia(convertCoding(src.getMedia())); + tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPurposeOfUse()) + for (org.hl7.fhir.r4.model.Coding cc : t.getCoding()) + tgt.addPurposeOfUse(convertCoding(cc)); + return tgt; + } + + public org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent(); + copyElement(src, tgt); + tgt.setAddress(src.getAddress()); + tgt.setType(convertAuditEventParticipantNetworkType(src.getType())); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkComponent(); + copyElement(src, tgt); + tgt.setAddress(src.getAddress()); + tgt.setType(convertAuditEventParticipantNetworkType(src.getType())); + return tgt; + } + + public org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType convertAuditEventParticipantNetworkType(org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _1: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._1; + case _2: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._2; + case _3: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._3; + case _4: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._4; + case _5: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._5; + default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType.NULL; + } + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType convertAuditEventParticipantNetworkType(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _1: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._1; + case _2: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._2; + case _3: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._3; + case _4: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._4; + case _5: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType._5; + default: return org.hl7.fhir.instance.model.AuditEvent.AuditEventParticipantNetworkType.NULL; + } + } + + public org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent(); + copyElement(src, tgt); + tgt.setSite(src.getSite()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.instance.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventSourceComponent(); + copyElement(src, tgt); + tgt.setSite(src.getSite()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.r4.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent convertAuditEventEntityComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setReference(convertReference(src.getReference())); + tgt.setType(convertCoding(src.getType())); + tgt.setRole(convertCoding(src.getRole())); + tgt.setLifecycle(convertCoding(src.getLifecycle())); + for (org.hl7.fhir.instance.model.Coding t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCoding(t)); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setQuery(src.getQuery()); + for (org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent t : src.getDetail()) + tgt.addDetail(convertAuditEventEntityDetailComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent convertAuditEventEntityComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setReference(convertReference(src.getReference())); + tgt.setType(convertCoding(src.getType())); + tgt.setRole(convertCoding(src.getRole())); + tgt.setLifecycle(convertCoding(src.getLifecycle())); + for (org.hl7.fhir.r4.model.Coding t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCoding(t)); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setQuery(src.getQuery()); + for (org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent t : src.getDetail()) + tgt.addDetail(convertAuditEventEntityDetailComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent tgt = new org.hl7.fhir.instance.model.AuditEvent.AuditEventObjectDetailComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.r4.model.Basic convertBasic(org.hl7.fhir.instance.model.Basic src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Basic tgt = new org.hl7.fhir.r4.model.Basic(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setCreated(src.getCreated()); + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public org.hl7.fhir.instance.model.Basic convertBasic(org.hl7.fhir.r4.model.Basic src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Basic tgt = new org.hl7.fhir.instance.model.Basic(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setCreated(src.getCreated()); + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public org.hl7.fhir.r4.model.Binary convertBinary(org.hl7.fhir.instance.model.Binary src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Binary tgt = new org.hl7.fhir.r4.model.Binary(); + copyResource(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setContent(src.getContent()); + return tgt; + } + + public org.hl7.fhir.instance.model.Binary convertBinary(org.hl7.fhir.r4.model.Binary src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Binary tgt = new org.hl7.fhir.instance.model.Binary(); + copyResource(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setContent(src.getContent()); + return tgt; + } + + public org.hl7.fhir.r4.model.Bundle convertBundle(org.hl7.fhir.instance.model.Bundle src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle tgt = new org.hl7.fhir.r4.model.Bundle(); + copyResource(src, tgt); + tgt.setType(convertBundleType(src.getType())); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + for (org.hl7.fhir.instance.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + for (org.hl7.fhir.instance.model.Bundle.BundleEntryComponent t : src.getEntry()) + tgt.addEntry(convertBundleEntryComponent(t)); + tgt.setSignature(convertSignature(src.getSignature())); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle convertBundle(org.hl7.fhir.r4.model.Bundle src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Bundle tgt = new org.hl7.fhir.instance.model.Bundle(); + copyResource(src, tgt); + tgt.setType(convertBundleType(src.getType())); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + for (org.hl7.fhir.r4.model.Bundle.BundleEntryComponent t : src.getEntry()) + tgt.addEntry(convertBundleEntryComponent(t)); + if (src.hasSignature()) + tgt.setSignature(convertSignature(src.getSignature())); + return tgt; + } + + public org.hl7.fhir.r4.model.Bundle.BundleType convertBundleType(org.hl7.fhir.instance.model.Bundle.BundleType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENT: return org.hl7.fhir.r4.model.Bundle.BundleType.DOCUMENT; + case MESSAGE: return org.hl7.fhir.r4.model.Bundle.BundleType.MESSAGE; + case TRANSACTION: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTION; + case TRANSACTIONRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTIONRESPONSE; + case BATCH: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCH; + case BATCHRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCHRESPONSE; + case HISTORY: return org.hl7.fhir.r4.model.Bundle.BundleType.HISTORY; + case SEARCHSET: return org.hl7.fhir.r4.model.Bundle.BundleType.SEARCHSET; + case COLLECTION: return org.hl7.fhir.r4.model.Bundle.BundleType.COLLECTION; + default: return org.hl7.fhir.r4.model.Bundle.BundleType.NULL; + } + } + + public org.hl7.fhir.instance.model.Bundle.BundleType convertBundleType(org.hl7.fhir.r4.model.Bundle.BundleType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENT: return org.hl7.fhir.instance.model.Bundle.BundleType.DOCUMENT; + case MESSAGE: return org.hl7.fhir.instance.model.Bundle.BundleType.MESSAGE; + case TRANSACTION: return org.hl7.fhir.instance.model.Bundle.BundleType.TRANSACTION; + case TRANSACTIONRESPONSE: return org.hl7.fhir.instance.model.Bundle.BundleType.TRANSACTIONRESPONSE; + case BATCH: return org.hl7.fhir.instance.model.Bundle.BundleType.BATCH; + case BATCHRESPONSE: return org.hl7.fhir.instance.model.Bundle.BundleType.BATCHRESPONSE; + case HISTORY: return org.hl7.fhir.instance.model.Bundle.BundleType.HISTORY; + case SEARCHSET: return org.hl7.fhir.instance.model.Bundle.BundleType.SEARCHSET; + case COLLECTION: return org.hl7.fhir.instance.model.Bundle.BundleType.COLLECTION; + default: return org.hl7.fhir.instance.model.Bundle.BundleType.NULL; + } + } + + public org.hl7.fhir.r4.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.instance.model.Bundle.BundleLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleLinkComponent(); + copyElement(src, tgt); + tgt.setRelation(src.getRelation()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.r4.model.Bundle.BundleLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleLinkComponent(); + copyElement(src, tgt); + tgt.setRelation(src.getRelation()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.r4.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + tgt.setFullUrl(src.getFullUrl()); + tgt.setResource(convertResource(src.getResource())); + tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); + tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); + tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (advisor.ignoreEntry(src)) + return null; + + org.hl7.fhir.instance.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + tgt.setFullUrl(src.getFullUrl()); + org.hl7.fhir.instance.model.Resource res = advisor.convertR2(src.getResource()); + if (res == null) + res = convertResource(src.getResource()); + tgt.setResource(res); + if (src.hasSearch()) + tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); + if (src.hasRequest()) + tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); + return tgt; + } + + public org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent(); + copyElement(src, tgt); + tgt.setMode(convertSearchEntryMode(src.getMode())); + tgt.setScore(src.getScore()); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntrySearchComponent(); + copyElement(src, tgt); + tgt.setMode(convertSearchEntryMode(src.getMode())); + tgt.setScore(src.getScore()); + return tgt; + } + + public org.hl7.fhir.r4.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.instance.model.Bundle.SearchEntryMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MATCH: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.MATCH; + case INCLUDE: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.INCLUDE; + case OUTCOME: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.OUTCOME; + default: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.r4.model.Bundle.SearchEntryMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MATCH: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.MATCH; + case INCLUDE: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.INCLUDE; + case OUTCOME: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.OUTCOME; + default: return org.hl7.fhir.instance.model.Bundle.SearchEntryMode.NULL; + } + } + + public org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent(); + copyElement(src, tgt); + tgt.setMethod(convertHTTPVerb(src.getMethod())); + tgt.setUrl(src.getUrl()); + tgt.setIfNoneMatch(src.getIfNoneMatch()); + tgt.setIfModifiedSince(src.getIfModifiedSince()); + tgt.setIfMatch(src.getIfMatch()); + tgt.setIfNoneExist(src.getIfNoneExist()); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryRequestComponent(); + copyElement(src, tgt); + tgt.setMethod(convertHTTPVerb(src.getMethod())); + tgt.setUrl(src.getUrl()); + tgt.setIfNoneMatch(src.getIfNoneMatch()); + tgt.setIfModifiedSince(src.getIfModifiedSince()); + tgt.setIfMatch(src.getIfMatch()); + tgt.setIfNoneExist(src.getIfNoneExist()); + return tgt; + } + + public org.hl7.fhir.r4.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.instance.model.Bundle.HTTPVerb src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GET: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.GET; + case POST: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.POST; + case PUT: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.PUT; + case DELETE: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.DELETE; + default: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.NULL; + } + } + + public org.hl7.fhir.instance.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.r4.model.Bundle.HTTPVerb src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GET: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.GET; + case POST: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.POST; + case PUT: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.PUT; + case DELETE: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.DELETE; + default: return org.hl7.fhir.instance.model.Bundle.HTTPVerb.NULL; + } + } + + public org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent(); + copyElement(src, tgt); + tgt.setStatus(src.getStatus()); + tgt.setLocation(src.getLocation()); + tgt.setEtag(src.getEtag()); + tgt.setLastModified(src.getLastModified()); + return tgt; + } + + public org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.instance.model.Bundle.BundleEntryResponseComponent(); + copyElement(src, tgt); + tgt.setStatus(src.getStatus()); + tgt.setLocation(src.getLocation()); + tgt.setEtag(src.getEtag()); + tgt.setLastModified(src.getLastModified()); + return tgt; + } + + public org.hl7.fhir.r4.model.CarePlan convertCarePlan(org.hl7.fhir.instance.model.CarePlan src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CarePlan tgt = new org.hl7.fhir.r4.model.CarePlan(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setStatus(convertCarePlanStatus(src.getStatus())); + tgt.setContext(convertReference(src.getContext())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); +// tgt.setModified(src.getModified()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.Reference t : src.getAddresses()) + tgt.addAddresses(convertReference(t)); +// for (org.hl7.fhir.instance.model.Reference t : src.getSupport()) +// tgt.addSupport(convertReference(t)); +// for (org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent t : src.getRelatedPlan()) +// tgt.addRelatedPlan(convertCarePlanRelatedPlanComponent(t)); +// for (org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent t : src.getParticipant()) +// tgt.addParticipant(convertCarePlanParticipantComponent(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + for (org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) + tgt.addActivity(convertCarePlanActivityComponent(t)); +// tgt.setNote(convertAnnotation(src.getNote())); + return tgt; + } + + public org.hl7.fhir.instance.model.CarePlan convertCarePlan(org.hl7.fhir.r4.model.CarePlan src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CarePlan tgt = new org.hl7.fhir.instance.model.CarePlan(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setStatus(convertCarePlanStatus(src.getStatus())); + tgt.setContext(convertReference(src.getContext())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); +// tgt.setModified(src.getModified()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.Reference t : src.getAddresses()) + tgt.addAddresses(convertReference(t)); +// for (org.hl7.fhir.r4.model.Reference t : src.getSupport()) +// tgt.addSupport(convertReference(t)); +// for (org.hl7.fhir.r4.model.CarePlan.CarePlanRelatedPlanComponent t : src.getRelatedPlan()) +// tgt.addRelatedPlan(convertCarePlanRelatedPlanComponent(t)); +// for (org.hl7.fhir.r4.model.CarePlan.CarePlanParticipantComponent t : src.getParticipant()) +// tgt.addParticipant(convertCarePlanParticipantComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + for (org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) + tgt.addActivity(convertCarePlanActivityComponent(t)); +// tgt.setNote(convertAnnotation(src.getNote())); + return tgt; + } + + public org.hl7.fhir.r4.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.instance.model.CarePlan.CarePlanStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.DRAFT; + case DRAFT: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.CANCELLED; + default: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.r4.model.CarePlan.CarePlanStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { +// case PROPOSED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.PROPOSED; + case DRAFT: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.CANCELLED; + default: return org.hl7.fhir.instance.model.CarePlan.CarePlanStatus.NULL; + } + } + +// public org.hl7.fhir.r4.model.CarePlan.CarePlanRelatedPlanComponent convertCarePlanRelatedPlanComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.CarePlan.CarePlanRelatedPlanComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanRelatedPlanComponent(); +// copyElement(src, tgt); +// tgt.setCode(convertCarePlanRelationship(src.getCode())); +// tgt.setPlan(convertReference(src.getPlan())); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent convertCarePlanRelatedPlanComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanRelatedPlanComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanRelatedPlanComponent(); +// copyElement(src, tgt); +// tgt.setCode(convertCarePlanRelationship(src.getCode())); +// tgt.setPlan(convertReference(src.getPlan())); +// return tgt; +// } + +// public org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship convertCarePlanRelationship(org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case INCLUDES: return org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship.INCLUDES; +// case REPLACES: return org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship.REPLACES; +// case FULFILLS: return org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship.FULFILLS; +// default: return org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship.NULL; +// } +// } + +// public org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship convertCarePlanRelationship(org.hl7.fhir.r4.model.CarePlan.CarePlanRelationship src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case INCLUDES: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.INCLUDES; +// case REPLACES: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.REPLACES; +// case FULFILLS: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.FULFILLS; +// default: return org.hl7.fhir.instance.model.CarePlan.CarePlanRelationship.NULL; +// } +// } + +// public org.hl7.fhir.r4.model.CarePlan.CarePlanParticipantComponent convertCarePlanParticipantComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.CarePlan.CarePlanParticipantComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanParticipantComponent(); +// copyElement(src, tgt); +// tgt.setRole(convertCodeableConcept(src.getRole())); +// tgt.setMember(convertReference(src.getMember())); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent convertCarePlanParticipantComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanParticipantComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanParticipantComponent(); +// copyElement(src, tgt); +// tgt.setRole(convertCodeableConcept(src.getRole())); +// tgt.setMember(convertReference(src.getMember())); +// return tgt; +// } +// + public org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent(); + copyElement(src, tgt); +// for (org.hl7.fhir.instance.model.Reference t : src.getActionResulting()) +// tgt.addActionResulting(convertReference(t)); + for (org.hl7.fhir.instance.model.Annotation t : src.getProgress()) + tgt.addProgress(convertAnnotation(t)); + tgt.setReference(convertReference(src.getReference())); + tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); + return tgt; + } + + public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanActivityComponent(); + copyElement(src, tgt); +// for (org.hl7.fhir.r4.model.Reference t : src.getActionResulting()) +// tgt.addActionResulting(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getProgress()) + tgt.addProgress(convertAnnotation(t)); + tgt.setReference(convertReference(src.getReference())); + tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); + return tgt; + } + + public org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent(); + copyElement(src, tgt); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); +// tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); + tgt.setProhibited(src.getProhibited()); + tgt.setScheduled(convertType(src.getScheduled())); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.instance.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + tgt.setProduct(convertType(src.getProduct())); + tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.instance.model.CarePlan.CarePlanActivityDetailComponent(); + copyElement(src, tgt); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); +// tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); + tgt.setProhibited(src.getProhibited()); + tgt.setScheduled(convertType(src.getScheduled())); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + tgt.setProduct(convertType(src.getProduct())); + tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSTARTED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; + case SCHEDULED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.SCHEDULED; + case INPROGRESS: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.CANCELLED; + default: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSTARTED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; + case SCHEDULED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.SCHEDULED; + case INPROGRESS: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.CANCELLED; + default: return org.hl7.fhir.instance.model.CarePlan.CarePlanActivityStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.instance.model.ClinicalImpression src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ClinicalImpression tgt = new org.hl7.fhir.r4.model.ClinicalImpression(); + copyDomainResource(src, tgt); + tgt.setSubject(convertReference(src.getPatient())); + tgt.setAssessor(convertReference(src.getAssessor())); + tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + tgt.setPrevious(convertReference(src.getPrevious())); + for (org.hl7.fhir.instance.model.Reference t : src.getProblem()) + tgt.addProblem(convertReference(t)); +// for (org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent t : src.getInvestigations()) +// tgt.addInvestigations(convertClinicalImpressionInvestigationsComponent(t)); + tgt.addProtocol(src.getProtocol()); + tgt.setSummary(src.getSummary()); + for (org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) + tgt.addFinding(convertClinicalImpressionFindingComponent(t)); + if (src.hasPrognosis()) + tgt.addPrognosisCodeableConcept ().setText(src.getPrognosis()); +// for (org.hl7.fhir.instance.model.Reference t : src.getPlan()) +// tgt.addPlan(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getAction()) + tgt.addAction(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.r4.model.ClinicalImpression src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ClinicalImpression tgt = new org.hl7.fhir.instance.model.ClinicalImpression(); + copyDomainResource(src, tgt); + tgt.setPatient(convertReference(src.getSubject())); + tgt.setAssessor(convertReference(src.getAssessor())); + tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + tgt.setPrevious(convertReference(src.getPrevious())); + for (org.hl7.fhir.r4.model.Reference t : src.getProblem()) + tgt.addProblem(convertReference(t)); +// for (org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent t : src.getInvestigations()) +// tgt.addInvestigations(convertClinicalImpressionInvestigationsComponent(t)); + for (UriType t : src.getProtocol()) + tgt.setProtocol(t.asStringValue()); + tgt.setSummary(src.getSummary()); + for (org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) + tgt.addFinding(convertClinicalImpressionFindingComponent(t)); + tgt.setPrognosis(src.getPrognosisCodeableConceptFirstRep().getText()); +// for (org.hl7.fhir.r4.model.Reference t : src.getPlan()) +// tgt.addPlan(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getAction()) + tgt.addAction(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.DRAFT; + case COMPLETED: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionStatus.NULL; + } + } + +// public org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent convertClinicalImpressionInvestigationsComponent(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent tgt = new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent(); +// copyElement(src, tgt); +// tgt.setCode(convertCodeableConcept(src.getCode())); +// for (org.hl7.fhir.instance.model.Reference t : src.getItem()) +// tgt.addItem(convertReference(t)); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent convertClinicalImpressionInvestigationsComponent(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent tgt = new org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionInvestigationsComponent(); +// copyElement(src, tgt); +// tgt.setCode(convertCodeableConcept(src.getCode())); +// for (org.hl7.fhir.r4.model.Reference t : src.getItem()) +// tgt.addItem(convertReference(t)); +// return tgt; +// } + + public org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent(); + copyElement(src, tgt); + tgt.setItem(convertCodeableConcept(src.getItem())); +// tgt.setCause(src.getCause()); + return tgt; + } + + public org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.instance.model.ClinicalImpression.ClinicalImpressionFindingComponent(); + copyElement(src, tgt); + if (src.hasItemCodeableConcept()) + try { + tgt.setItem(convertCodeableConcept(src.getItemCodeableConcept())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + } +// tgt.setCause(src.getCause()); + return tgt; + } + + public org.hl7.fhir.r4.model.Communication convertCommunication(org.hl7.fhir.instance.model.Communication src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Communication tgt = new org.hl7.fhir.r4.model.Communication(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.addCategory(convertCodeableConcept(src.getCategory())); + tgt.setSender(convertReference(src.getSender())); + for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationPayloadComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + tgt.setStatus(convertCommunicationStatus(src.getStatus())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setSent(src.getSent()); + tgt.setReceived(src.getReceived()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + tgt.addReasonCode(convertCodeableConcept(t)); + tgt.setSubject(convertReference(src.getSubject())); + return tgt; + } + + public org.hl7.fhir.instance.model.Communication convertCommunication(org.hl7.fhir.r4.model.Communication src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Communication tgt = new org.hl7.fhir.instance.model.Communication(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); + tgt.setSender(convertReference(src.getSender())); + for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationPayloadComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + tgt.setStatus(convertCommunicationStatus(src.getStatus())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setSent(src.getSent()); + tgt.setReceived(src.getReceived()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReason(convertCodeableConcept(t)); + tgt.setSubject(convertReference(src.getSubject())); + return tgt; + } + + public org.hl7.fhir.r4.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.instance.model.Communication.CommunicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.SUSPENDED; + case REJECTED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.ENTEREDINERROR; + case FAILED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.ABORTED; + default: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.r4.model.Communication.CommunicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.SUSPENDED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.REJECTED; + case ABORTED: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.FAILED; + default: return org.hl7.fhir.instance.model.Communication.CommunicationStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.instance.model.Communication.CommunicationPayloadComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.r4.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.instance.model.CommunicationRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CommunicationRequest tgt = new org.hl7.fhir.r4.model.CommunicationRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.addCategory(convertCodeableConcept(src.getCategory())); + tgt.setSender(convertReference(src.getSender())); + for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + tgt.getRequester().setAgent(convertReference(src.getRequester())); + tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setOccurrence(convertType(src.getScheduled())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + tgt.addReasonCode(convertCodeableConcept(t)); + tgt.setAuthoredOn(src.getRequestedOn()); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setPriority(convertPriorityCode(src.getPriority())); + return tgt; + } + + private org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority convertPriorityCode(org.hl7.fhir.instance.model.CodeableConcept priority) { + for (org.hl7.fhir.instance.model.Coding c : priority.getCoding()) { + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "routine".equals(c.getCode())) + return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.ROUTINE; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "urgent".equals(c.getCode())) + return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.URGENT; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "stat".equals(c.getCode())) + return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.STAT; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "asap".equals(c.getCode())) + return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.ASAP; + } + return null; + } + + public org.hl7.fhir.instance.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.r4.model.CommunicationRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CommunicationRequest tgt = new org.hl7.fhir.instance.model.CommunicationRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCategory(convertCodeableConcept(src.getCategoryFirstRep())); + tgt.setSender(convertReference(src.getSender())); + for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + tgt.setRequester(convertReference(src.getRequester().getAgent())); + tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setScheduled(convertType(src.getOccurrence())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReason(convertCodeableConcept(t)); + tgt.setRequestedOn(src.getAuthoredOn()); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setPriority(convertPriorityCode(src.getPriority())); + return tgt; + } + + private org.hl7.fhir.instance.model.CodeableConcept convertPriorityCode(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority priority) { + org.hl7.fhir.instance.model.CodeableConcept cc = new org.hl7.fhir.instance.model.CodeableConcept(); + switch (priority) { + case ROUTINE: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("routine"); break; + case URGENT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("urgent"); break; + case STAT: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("stat"); break; + case ASAP: cc.addCoding().setSystem("http://hl7.org/fhir/diagnostic-order-priority").setCode("asap"); break; + default: return null; + } + return cc; + } + + public org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.DRAFT; + case PLANNED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case REQUESTED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case RECEIVED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case ACCEPTED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case INPROGRESS: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; + case REJECTED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ENTEREDINERROR; +// case FAILED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.FAILED; + default: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.PROPOSED; +// case PLANNED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.PLANNED; +// case REQUESTED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.REQUESTED; +// case RECEIVED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.RECEIVED; +// case ACCEPTED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.ACCEPTED; + case ACTIVE: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.REJECTED; +// case FAILED: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.FAILED; + default: return org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.instance.model.CommunicationRequest.CommunicationRequestPayloadComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.r4.model.Composition convertComposition(org.hl7.fhir.instance.model.Composition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Composition tgt = new org.hl7.fhir.r4.model.Composition(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setClass_(convertCodeableConcept(src.getClass_())); + tgt.setTitle(src.getTitle()); + tgt.setStatus(convertCompositionStatus(src.getStatus())); + try { + tgt.setConfidentiality(org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.fromCode(src.getConfidentiality())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + for (org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent t : src.getAttester()) + tgt.addAttester(convertCompositionAttesterComponent(t)); + tgt.setCustodian(convertReference(src.getCustodian())); + for (org.hl7.fhir.instance.model.Composition.CompositionEventComponent t : src.getEvent()) + tgt.addEvent(convertCompositionEventComponent(t)); + tgt.setEncounter(convertReference(src.getEncounter())); + for (org.hl7.fhir.instance.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Composition convertComposition(org.hl7.fhir.r4.model.Composition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Composition tgt = new org.hl7.fhir.instance.model.Composition(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setClass_(convertCodeableConcept(src.getClass_())); + tgt.setTitle(src.getTitle()); + tgt.setStatus(convertCompositionStatus(src.getStatus())); + tgt.setConfidentiality(src.getConfidentiality().toCode()); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + for (org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent t : src.getAttester()) + tgt.addAttester(convertCompositionAttesterComponent(t)); + tgt.setCustodian(convertReference(src.getCustodian())); + for (org.hl7.fhir.r4.model.Composition.CompositionEventComponent t : src.getEvent()) + tgt.addEvent(convertCompositionEventComponent(t)); + tgt.setEncounter(convertReference(src.getEncounter())); + for (org.hl7.fhir.r4.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.instance.model.Composition.CompositionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRELIMINARY: return org.hl7.fhir.r4.model.Composition.CompositionStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.r4.model.Composition.CompositionStatus.FINAL; + case AMENDED: return org.hl7.fhir.r4.model.Composition.CompositionStatus.AMENDED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Composition.CompositionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Composition.CompositionStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.r4.model.Composition.CompositionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRELIMINARY: return org.hl7.fhir.instance.model.Composition.CompositionStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.instance.model.Composition.CompositionStatus.FINAL; + case AMENDED: return org.hl7.fhir.instance.model.Composition.CompositionStatus.AMENDED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Composition.CompositionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.Composition.CompositionStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Enumeration t : src.getMode()) + tgt.addMode(convertCompositionAttestationMode(t.getValue())); + tgt.setTime(src.getTime()); + tgt.setParty(convertReference(src.getParty())); + return tgt; + } + + public org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.instance.model.Composition.CompositionAttesterComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Enumeration t : src.getMode()) + tgt.addMode(convertCompositionAttestationMode(t.getValue())); + tgt.setTime(src.getTime()); + tgt.setParty(convertReference(src.getParty())); + return tgt; + } + + public org.hl7.fhir.r4.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.instance.model.Composition.CompositionAttestationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSONAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.PERSONAL; + case PROFESSIONAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.PROFESSIONAL; + case LEGAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.LEGAL; + case OFFICIAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.OFFICIAL; + default: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.r4.model.Composition.CompositionAttestationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSONAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.PERSONAL; + case PROFESSIONAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.PROFESSIONAL; + case LEGAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.LEGAL; + case OFFICIAL: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.OFFICIAL; + default: return org.hl7.fhir.instance.model.Composition.CompositionAttestationMode.NULL; + } + } + + public org.hl7.fhir.r4.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.instance.model.Composition.CompositionEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.r4.model.Composition.CompositionEventComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.instance.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.r4.model.Composition.CompositionEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.instance.model.Composition.CompositionEventComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.instance.model.Composition.SectionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Composition.SectionComponent tgt = new org.hl7.fhir.r4.model.Composition.SectionComponent(); + copyElement(src, tgt); + tgt.setTitle(src.getTitle()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setText(convertNarrative(src.getText())); + try { + tgt.setMode(org.hl7.fhir.r4.model.Composition.SectionMode.fromCode(src.getMode())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + for (org.hl7.fhir.instance.model.Reference t : src.getEntry()) + tgt.addEntry(convertReference(t)); + tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); + for (org.hl7.fhir.instance.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.r4.model.Composition.SectionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Composition.SectionComponent tgt = new org.hl7.fhir.instance.model.Composition.SectionComponent(); + copyElement(src, tgt); + tgt.setTitle(src.getTitle()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setText(convertNarrative(src.getText())); + tgt.setMode(src.getMode().toCode()); + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + for (org.hl7.fhir.r4.model.Reference t : src.getEntry()) + tgt.addEntry(convertReference(t)); + tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); + for (org.hl7.fhir.r4.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + private class SourceElementComponentWrapper { + public SourceElementComponentWrapper(SourceElementComponent comp, String source, String target) { + super(); + this.source = source; + this.target = target; + this.comp = comp; + } + private String source; + private String target; + private org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent comp; + + } + + public org.hl7.fhir.r4.model.ConceptMap convertConceptMap(org.hl7.fhir.instance.model.ConceptMap src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ConceptMap tgt = new org.hl7.fhir.r4.model.ConceptMap(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent t : src.getContact()) + tgt.addContact(convertConceptMapContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setPurpose(src.getRequirements()); + tgt.setCopyright(src.getCopyright()); + tgt.setSource(convertType(src.getSource())); + tgt.setTarget(convertType(src.getTarget())); + for (org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent t : src.getElement()) { + List ws = convertSourceElementComponent(t); + for (SourceElementComponentWrapper w : ws) + getGroup(tgt, w.source, w.target).addElement(w.comp); + } + return tgt; + } + + public org.hl7.fhir.r4.model.UsageContext convertCodeableConceptToUsageContext(org.hl7.fhir.instance.model.CodeableConcept t) throws FHIRException { + org.hl7.fhir.r4.model.UsageContext result = new org.hl7.fhir.r4.model.UsageContext(); + // todo: set type.. + result.setValue(convertCodeableConcept(t)); + return result; + } + + + private ConceptMapGroupComponent getGroup(ConceptMap map, String srcs, String tgts) { + for (ConceptMapGroupComponent grp : map.getGroup()) { + if (grp.getSource().equals(srcs) && grp.getTarget().equals(tgts)) + return grp; + } + ConceptMapGroupComponent grp = map.addGroup(); + grp.setSource(srcs); + grp.setTarget(tgts); + return grp; + } + + + public org.hl7.fhir.instance.model.ConceptMap convertConceptMap(org.hl7.fhir.r4.model.ConceptMap src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ConceptMap tgt = new org.hl7.fhir.instance.model.ConceptMap(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertConceptMapContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setRequirements(src.getPurpose()); + tgt.setCopyright(src.getCopyright()); + tgt.setSource(convertType(src.getSource())); + tgt.setTarget(convertType(src.getTarget())); + for (org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g : src.getGroup()) + for (org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent t : g.getElement()) + tgt.addElement(convertSourceElementComponent(t, g)); + return tgt; + } + + public org.hl7.fhir.r4.model.Enumerations.PublicationStatus convertConformanceResourceStatus(org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.RETIRED; + default: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus convertConformanceResourceStatus(org.hl7.fhir.r4.model.Enumerations.PublicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.RETIRED; + default: return org.hl7.fhir.instance.model.Enumerations.ConformanceResourceStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.ContactDetail convertConceptMapContactComponent(org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent convertConceptMapContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.ConceptMapContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public List convertSourceElementComponent(org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent src) throws FHIRException { + List res = new ArrayList(); + if (src == null || src.isEmpty()) + return res; + for (org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent t : src.getTarget()) { + org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.addTarget(convertTargetElementComponent(t)); + res.add(new SourceElementComponentWrapper(tgt, src.getCodeSystem(), t.getCodeSystem())); + } + return res; + } + + public org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent src, org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.SourceElementComponent(); + copyElement(src, tgt); + tgt.setCodeSystem(g.getSource()); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent t : src.getTarget()) + tgt.addTarget(convertTargetElementComponent(t, g)); + return tgt; + } + + public org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); + tgt.setComment(src.getComments()); + for (org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) + tgt.addDependsOn(convertOtherElementComponent(t)); + for (org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent t : src.getProduct()) + tgt.addProduct(convertOtherElementComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent src, org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.TargetElementComponent(); + copyElement(src, tgt); + tgt.setCodeSystem(g.getTarget()); + tgt.setCode(src.getCode()); + tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); + tgt.setComments(src.getComment()); + for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) + tgt.addDependsOn(convertOtherElementComponent(t)); + for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getProduct()) + tgt.addProduct(convertOtherElementComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUIVALENT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; + case EQUAL: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUAL; + case WIDER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.WIDER; + case SUBSUMES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SUBSUMES; + case NARROWER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NARROWER; + case SPECIALIZES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; + case INEXACT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.INEXACT; + case UNMATCHED: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.UNMATCHED; + case DISJOINT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.DISJOINT; + default: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUIVALENT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; + case EQUAL: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.EQUAL; + case WIDER: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.WIDER; + case SUBSUMES: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.SUBSUMES; + case NARROWER: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.NARROWER; + case SPECIALIZES: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; + case INEXACT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.INEXACT; + case UNMATCHED: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.UNMATCHED; + case DISJOINT: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.DISJOINT; + default: return org.hl7.fhir.instance.model.Enumerations.ConceptMapEquivalence.NULL; + } + } + + public org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getElement()); + tgt.setSystem(src.getCodeSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.instance.model.ConceptMap.OtherElementComponent(); + copyElement(src, tgt); + tgt.setElement(src.getProperty()); + tgt.setCodeSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public org.hl7.fhir.r4.model.Condition convertCondition(org.hl7.fhir.instance.model.Condition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Condition tgt = new org.hl7.fhir.r4.model.Condition(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getPatient())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setAsserter(convertReference(src.getAsserter())); + if (src.hasDateRecorded()) + tgt.setAssertedDate(src.getDateRecorded()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.addCategory(convertCodeableConcept(src.getCategory())); + try { + tgt.setClinicalStatus(org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.fromCode(src.getClinicalStatus())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); + tgt.setSeverity(convertCodeableConcept(src.getSeverity())); + tgt.setOnset(convertType(src.getOnset())); + tgt.setAbatement(convertType(src.getAbatement())); + tgt.addStage(convertConditionStageComponent(src.getStage())); + for (org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) + tgt.addEvidence(convertConditionEvidenceComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); +// tgt.setNotes(src.getNotes()); + return tgt; + } + + public org.hl7.fhir.instance.model.Condition convertCondition(org.hl7.fhir.r4.model.Condition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Condition tgt = new org.hl7.fhir.instance.model.Condition(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setAsserter(convertReference(src.getAsserter())); + if (src.hasAssertedDate()) + tgt.setDateRecorded(src.getAssertedDate()); + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.setCategory(convertCodeableConcept(t)); + tgt.setClinicalStatus(src.getClinicalStatus().toCode()); + tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); + tgt.setSeverity(convertCodeableConcept(src.getSeverity())); + tgt.setOnset(convertType(src.getOnset())); + tgt.setAbatement(convertType(src.getAbatement())); + tgt.setStage(convertConditionStageComponent(src.getStageFirstRep())); + for (org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) + tgt.addEvidence(convertConditionEvidenceComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); +// tgt.setNotes(src.getNotes()); + return tgt; + } + + public org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROVISIONAL: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.PROVISIONAL; + case DIFFERENTIAL: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; + case CONFIRMED: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.CONFIRMED; + case REFUTED: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.REFUTED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROVISIONAL: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.PROVISIONAL; + case DIFFERENTIAL: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; + case CONFIRMED: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.CONFIRMED; + case REFUTED: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.REFUTED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.UNKNOWN; + default: return org.hl7.fhir.instance.model.Condition.ConditionVerificationStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.instance.model.Condition.ConditionStageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.r4.model.Condition.ConditionStageComponent(); + copyElement(src, tgt); + tgt.setSummary(convertCodeableConcept(src.getSummary())); + for (org.hl7.fhir.instance.model.Reference t : src.getAssessment()) + tgt.addAssessment(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.r4.model.Condition.ConditionStageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.instance.model.Condition.ConditionStageComponent(); + copyElement(src, tgt); + tgt.setSummary(convertCodeableConcept(src.getSummary())); + for (org.hl7.fhir.r4.model.Reference t : src.getAssessment()) + tgt.addAssessment(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent(); + copyElement(src, tgt); + tgt.addCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.instance.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.instance.model.Condition.ConditionEvidenceComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept cc : src.getCode()) + tgt.setCode(convertCodeableConcept(cc)); + for (org.hl7.fhir.r4.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement convertConformance(org.hl7.fhir.instance.model.Conformance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement tgt = new org.hl7.fhir.r4.model.CapabilityStatement(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent t : src.getContact()) + tgt.addContact(convertConformanceContactComponent(t)); + tgt.setDescription(src.getDescription()); + tgt.setPurpose(src.getRequirements()); + tgt.setCopyright(src.getCopyright()); + tgt.setKind(convertConformanceStatementKind(src.getKind())); + tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); + tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); + tgt.setFhirVersion(src.getFhirVersion()); + tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); + for (org.hl7.fhir.instance.model.CodeType t : src.getFormat()) + tgt.addFormat(t.getValue()); + for (org.hl7.fhir.instance.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent t : src.getRest()) + tgt.addRest(convertConformanceRestComponent(t)); + for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent t : src.getMessaging()) + tgt.addMessaging(convertConformanceMessagingComponent(t)); + for (org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent t : src.getDocument()) + tgt.addDocument(convertConformanceDocumentComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance convertConformance(org.hl7.fhir.r4.model.CapabilityStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance tgt = new org.hl7.fhir.instance.model.Conformance(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertConformanceContactComponent(t)); + tgt.setDescription(src.getDescription()); + tgt.setRequirements(src.getPurpose()); + tgt.setCopyright(src.getCopyright()); + tgt.setKind(convertConformanceStatementKind(src.getKind())); + tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); + if (src.hasImplementation()) + tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); + tgt.setFhirVersion(src.getFhirVersion()); + tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); + for (org.hl7.fhir.r4.model.CodeType t : src.getFormat()) + tgt.addFormat(t.getValue()); + for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) + tgt.addRest(convertConformanceRestComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) + tgt.addMessaging(convertConformanceMessagingComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) + tgt.addDocument(convertConformanceDocumentComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind convertConformanceStatementKind(org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; + case CAPABILITY: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; + case REQUIREMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; + default: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind convertConformanceStatementKind(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.INSTANCE; + case CAPABILITY: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.CAPABILITY; + case REQUIREMENTS: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.REQUIREMENTS; + default: return org.hl7.fhir.instance.model.Conformance.ConformanceStatementKind.NULL; + } + } + + public org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.instance.model.Conformance.UnknownContentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NO: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NO; + case EXTENSIONS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; + case ELEMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.ELEMENTS; + case BOTH: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.BOTH; + default: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NO: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.NO; + case EXTENSIONS: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.EXTENSIONS; + case ELEMENTS: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.ELEMENTS; + case BOTH: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.BOTH; + default: return org.hl7.fhir.instance.model.Conformance.UnknownContentCode.NULL; + } + } + + public org.hl7.fhir.r4.model.ContactDetail convertConformanceContactComponent(org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent convertConformanceContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setVersion(src.getVersion()); + tgt.setReleaseDate(src.getReleaseDate()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceSoftwareComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setVersion(src.getVersion()); + tgt.setReleaseDate(src.getReleaseDate()); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceImplementationComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent convertConformanceRestComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent(); + copyElement(src, tgt); + tgt.setMode(convertRestfulConformanceMode(src.getMode())); + tgt.setDocumentation(src.getDocumentation()); + tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent t : src.getResource()) + tgt.addResource(convertConformanceRestResourceComponent(t)); + for (org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertSystemInteractionComponent(t)); + if (src.getTransactionMode() == org.hl7.fhir.instance.model.Conformance.TransactionMode.BATCH || src.getTransactionMode() == org.hl7.fhir.instance.model.Conformance.TransactionMode.BOTH) + tgt.addInteraction().setCode(SystemRestfulInteraction.BATCH); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent t : src.getOperation()) + tgt.addOperation(convertConformanceRestOperationComponent(t)); + for (org.hl7.fhir.instance.model.UriType t : src.getCompartment()) + tgt.addCompartment(t.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent convertConformanceRestComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestComponent(); + copyElement(src, tgt); + tgt.setMode(convertRestfulConformanceMode(src.getMode())); + tgt.setDocumentation(src.getDocumentation()); + tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) + tgt.addResource(convertConformanceRestResourceComponent(t)); + boolean batch = false; + boolean transaction = false; + for (org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) { + if (t.getCode().equals(SystemRestfulInteraction.BATCH)) + batch = true; + else + tgt.addInteraction(convertSystemInteractionComponent(t)); + if (t.getCode().equals(SystemRestfulInteraction.TRANSACTION)) + transaction = true; + } + if (batch) + tgt.setTransactionMode(transaction ? org.hl7.fhir.instance.model.Conformance.TransactionMode.BOTH : org.hl7.fhir.instance.model.Conformance.TransactionMode.BATCH); + else + tgt.setTransactionMode(transaction ? org.hl7.fhir.instance.model.Conformance.TransactionMode.TRANSACTION : org.hl7.fhir.instance.model.Conformance.TransactionMode.NOTSUPPORTED); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) + tgt.addOperation(convertConformanceRestOperationComponent(t)); + for (org.hl7.fhir.r4.model.UriType t : src.getCompartment()) + tgt.addCompartment(t.getValue()); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode convertRestfulConformanceMode(org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLIENT: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; + case SERVER: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.SERVER; + default: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode convertRestfulConformanceMode(org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLIENT: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.CLIENT; + case SERVER: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.SERVER; + default: return org.hl7.fhir.instance.model.Conformance.RestfulConformanceMode.NULL; + } + } + + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); + copyElement(src, tgt); + tgt.setCors(src.getCors()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getService()) + tgt.addService(convertCodeableConcept(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent t : src.getCertificate()) + tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityComponent(); + copyElement(src, tgt); + tgt.setCors(src.getCors()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getService()) + tgt.addService(convertCodeableConcept(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) + tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setBlob(src.getBlob()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestSecurityCertificateComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setBlob(src.getBlob()); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + for (org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertResourceInteractionComponent(t)); + tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); + tgt.setReadHistory(src.getReadHistory()); + tgt.setUpdateCreate(src.getUpdateCreate()); + tgt.setConditionalCreate(src.getConditionalCreate()); + tgt.setConditionalUpdate(src.getConditionalUpdate()); + tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); + for (org.hl7.fhir.instance.model.StringType t : src.getSearchInclude()) + tgt.addSearchInclude(t.getValue()); + for (org.hl7.fhir.instance.model.StringType t : src.getSearchRevInclude()) + tgt.addSearchRevInclude(t.getValue()); + for (org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + for (org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertResourceInteractionComponent(t)); + tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); + tgt.setReadHistory(src.getReadHistory()); + tgt.setUpdateCreate(src.getUpdateCreate()); + tgt.setConditionalCreate(src.getConditionalCreate()); + tgt.setConditionalUpdate(src.getConditionalUpdate()); + tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); + for (org.hl7.fhir.r4.model.StringType t : src.getSearchInclude()) + tgt.addSearchInclude(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getSearchRevInclude()) + tgt.addSearchRevInclude(t.getValue()); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOVERSION: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; + case VERSIONED: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; + case VERSIONEDUPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; + default: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOVERSION: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.NOVERSION; + case VERSIONED: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.VERSIONED; + case VERSIONEDUPDATE: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.VERSIONEDUPDATE; + default: return org.hl7.fhir.instance.model.Conformance.ResourceVersionPolicy.NULL; + } + } + + public org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; + case SINGLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; + case MULTIPLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; + default: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.NOTSUPPORTED; + case SINGLE: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.SINGLE; + case MULTIPLE: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.MULTIPLE; + default: return org.hl7.fhir.instance.model.Conformance.ConditionalDeleteStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertTypeRestfulInteraction(src.getCode())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent tgt = new org.hl7.fhir.instance.model.Conformance.ResourceInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertTypeRestfulInteraction(src.getCode())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case READ: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.READ; + case VREAD: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.VREAD; + case UPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; + case DELETE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.DELETE; + case HISTORYINSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; + case HISTORYTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; + case CREATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.CREATE; + case SEARCHTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; + default: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case READ: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.READ; + case VREAD: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.VREAD; + case UPDATE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.UPDATE; + case DELETE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.DELETE; + case HISTORYINSTANCE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.HISTORYINSTANCE; + case HISTORYTYPE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.HISTORYTYPE; + case CREATE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.CREATE; + case SEARCHTYPE: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.SEARCHTYPE; + default: return org.hl7.fhir.instance.model.Conformance.TypeRestfulInteraction.NULL; + } + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(src.getDefinition()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestResourceSearchParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(src.getDefinition()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertSystemRestfulInteraction(src.getCode())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent tgt = new org.hl7.fhir.instance.model.Conformance.SystemInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertSystemRestfulInteraction(src.getCode())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TRANSACTION: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; + case SEARCHSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; + case HISTORYSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; + default: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TRANSACTION: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.TRANSACTION; + case SEARCHSYSTEM: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.SEARCHSYSTEM; + case HISTORYSYSTEM: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.HISTORYSYSTEM; + default: return org.hl7.fhir.instance.model.Conformance.SystemRestfulInteraction.NULL; + } + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceRestOperationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent t : src.getEndpoint()) + tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); + tgt.setReliableCache(src.getReliableCache()); + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent t : src.getEvent()) + tgt.addEvent(convertConformanceMessagingEventComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) + tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); + tgt.setReliableCache(src.getReliableCache()); + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) + tgt.addEvent(convertConformanceMessagingEventComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); + copyElement(src, tgt); + tgt.setProtocol(convertCoding(src.getProtocol())); + tgt.setAddress(src.getAddress()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEndpointComponent(); + copyElement(src, tgt); + tgt.setProtocol(convertCoding(src.getProtocol())); + tgt.setAddress(src.getAddress()); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); + copyElement(src, tgt); + tgt.setCode(convertCoding(src.getCode())); + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + tgt.setMode(convertConformanceEventMode(src.getMode())); + tgt.setFocus(src.getFocus()); + tgt.setRequest(convertReference(src.getRequest())); + tgt.setResponse(convertReference(src.getResponse())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceMessagingEventComponent(); + copyElement(src, tgt); + tgt.setCode(convertCoding(src.getCode())); + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + tgt.setMode(convertConformanceEventMode(src.getMode())); + tgt.setFocus(src.getFocus()); + tgt.setRequest(convertReference(src.getRequest())); + tgt.setResponse(convertReference(src.getResponse())); + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.instance.model.Conformance.MessageSignificanceCategory.NULL; + } + } + + public org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode convertConformanceEventMode(org.hl7.fhir.instance.model.Conformance.ConformanceEventMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SENDER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.SENDER; + case RECEIVER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.RECEIVER; + default: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceEventMode convertConformanceEventMode(org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SENDER: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.SENDER; + case RECEIVER: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.RECEIVER; + default: return org.hl7.fhir.instance.model.Conformance.ConformanceEventMode.NULL; + } + } + + public org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent(); + copyElement(src, tgt); + tgt.setMode(convertDocumentMode(src.getMode())); + tgt.setDocumentation(src.getDocumentation()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent tgt = new org.hl7.fhir.instance.model.Conformance.ConformanceDocumentComponent(); + copyElement(src, tgt); + tgt.setMode(convertDocumentMode(src.getMode())); + tgt.setDocumentation(src.getDocumentation()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.instance.model.Conformance.DocumentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRODUCER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.PRODUCER; + case CONSUMER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.CONSUMER; + default: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Conformance.DocumentMode convertDocumentMode(org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRODUCER: return org.hl7.fhir.instance.model.Conformance.DocumentMode.PRODUCER; + case CONSUMER: return org.hl7.fhir.instance.model.Conformance.DocumentMode.CONSUMER; + default: return org.hl7.fhir.instance.model.Conformance.DocumentMode.NULL; + } + } + + public org.hl7.fhir.r4.model.Contract convertContract(org.hl7.fhir.instance.model.Contract src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Contract tgt = new org.hl7.fhir.r4.model.Contract(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setIssued(src.getIssued()); + tgt.setApplies(convertPeriod(src.getApplies())); + for (org.hl7.fhir.instance.model.Reference t : src.getSubject()) + tgt.addSubject(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthority()) + tgt.addAuthority(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getDomain()) + tgt.addDomain(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSubType()) + tgt.addSubType(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Contract.SignatoryComponent t : src.getSigner()) + tgt.addSigner(convertSignatoryComponent(t)); + for (org.hl7.fhir.instance.model.Contract.TermComponent t : src.getTerm()) + tgt.addTerm(convertTermComponent(t)); + for (org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) + tgt.addFriendly(convertFriendlyLanguageComponent(t)); + for (org.hl7.fhir.instance.model.Contract.LegalLanguageComponent t : src.getLegal()) + tgt.addLegal(convertLegalLanguageComponent(t)); + for (org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent t : src.getRule()) + tgt.setRule(convertComputableLanguageComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract convertContract(org.hl7.fhir.r4.model.Contract src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract tgt = new org.hl7.fhir.instance.model.Contract(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setIssued(src.getIssued()); + tgt.setApplies(convertPeriod(src.getApplies())); + for (org.hl7.fhir.r4.model.Reference t : src.getSubject()) + tgt.addSubject(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthority()) + tgt.addAuthority(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDomain()) + tgt.addDomain(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubType()) + tgt.addSubType(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Contract.SignatoryComponent t : src.getSigner()) + tgt.addSigner(convertSignatoryComponent(t)); + for (org.hl7.fhir.r4.model.Contract.TermComponent t : src.getTerm()) + tgt.addTerm(convertTermComponent(t)); + for (org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) + tgt.addFriendly(convertFriendlyLanguageComponent(t)); + for (org.hl7.fhir.r4.model.Contract.LegalLanguageComponent t : src.getLegal()) + tgt.addLegal(convertLegalLanguageComponent(t)); + if (src.hasRule()) + tgt.addRule(convertComputableLanguageComponent(src.getRule())); + return tgt; + } + + public org.hl7.fhir.r4.model.Contract.AgentComponent convertAgentComponent(org.hl7.fhir.instance.model.Contract.ActorComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Contract.AgentComponent tgt = new org.hl7.fhir.r4.model.Contract.AgentComponent(); + copyElement(src, tgt); + tgt.setActor(convertReference(src.getEntity())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.ActorComponent convertAgentComponent(org.hl7.fhir.r4.model.Contract.AgentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.ActorComponent tgt = new org.hl7.fhir.instance.model.Contract.ActorComponent(); + copyElement(src, tgt); + tgt.setEntity(convertReference(src.getActor())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.instance.model.Contract.SignatoryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.r4.model.Contract.SignatoryComponent(); + copyElement(src, tgt); + tgt.setType(convertCoding(src.getType())); + tgt.setParty(convertReference(src.getParty())); + if (src.hasSignature()) + tgt.addSignature(new org.hl7.fhir.r4.model.Signature().setBlob(src.getSignature().getBytes())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.r4.model.Contract.SignatoryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.instance.model.Contract.SignatoryComponent(); + copyElement(src, tgt); + tgt.setType(convertCoding(src.getType())); + tgt.setParty(convertReference(src.getParty())); + for (org.hl7.fhir.r4.model.Signature t : src.getSignature()) + tgt.setSignature(Base64.encodeBase64String(t.getBlob())); + return tgt; + } + + public org.hl7.fhir.r4.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.instance.model.Contract.ValuedItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.r4.model.Contract.ValuedItemComponent(); + copyElement(src, tgt); + tgt.setEntity(convertType(src.getEntity())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setEffectiveTime(src.getEffectiveTime()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + tgt.setFactor(src.getFactor()); + tgt.setPoints(src.getPoints()); + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.r4.model.Contract.ValuedItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.instance.model.Contract.ValuedItemComponent(); + copyElement(src, tgt); + tgt.setEntity(convertType(src.getEntity())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setEffectiveTime(src.getEffectiveTime()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + tgt.setFactor(src.getFactor()); + tgt.setPoints(src.getPoints()); + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public org.hl7.fhir.r4.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.instance.model.Contract.TermComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Contract.TermComponent tgt = new org.hl7.fhir.r4.model.Contract.TermComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setIssued(src.getIssued()); + tgt.setApplies(convertPeriod(src.getApplies())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setSubType(convertCodeableConcept(src.getSubType())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getAction()) + tgt.addAction(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getActionReason()) + tgt.addActionReason(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Contract.TermActorComponent t : src.getActor()) + tgt.addAgent(convertTermAgentComponent(t)); + for (org.hl7.fhir.instance.model.Contract.TermComponent t : src.getGroup()) + tgt.addGroup(convertTermComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.r4.model.Contract.TermComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.TermComponent tgt = new org.hl7.fhir.instance.model.Contract.TermComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setIssued(src.getIssued()); + tgt.setApplies(convertPeriod(src.getApplies())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setSubType(convertCodeableConcept(src.getSubType())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAction()) + tgt.addAction(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getActionReason()) + tgt.addActionReason(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Contract.AgentComponent t : src.getAgent()) + tgt.addActor(convertTermAgentComponent(t)); + for (org.hl7.fhir.r4.model.Contract.TermComponent t : src.getGroup()) + tgt.addGroup(convertTermComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Contract.AgentComponent convertTermAgentComponent(org.hl7.fhir.instance.model.Contract.TermActorComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Contract.AgentComponent tgt = new org.hl7.fhir.r4.model.Contract.AgentComponent(); + copyElement(src, tgt); + tgt.setActor(convertReference(src.getEntity())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.TermActorComponent convertTermAgentComponent(org.hl7.fhir.r4.model.Contract.AgentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.TermActorComponent tgt = new org.hl7.fhir.instance.model.Contract.TermActorComponent(); + copyElement(src, tgt); + tgt.setEntity(convertReference(src.getActor())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Contract.ValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.instance.model.Contract.TermValuedItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.r4.model.Contract.ValuedItemComponent(); + copyElement(src, tgt); + tgt.setEntity(convertType(src.getEntity())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setEffectiveTime(src.getEffectiveTime()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + tgt.setFactor(src.getFactor()); + tgt.setPoints(src.getPoints()); + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.TermValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.r4.model.Contract.ValuedItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.TermValuedItemComponent tgt = new org.hl7.fhir.instance.model.Contract.TermValuedItemComponent(); + copyElement(src, tgt); + tgt.setEntity(convertType(src.getEntity())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setEffectiveTime(src.getEffectiveTime()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + tgt.setFactor(src.getFactor()); + tgt.setPoints(src.getPoints()); + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.FriendlyLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.r4.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.instance.model.Contract.LegalLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.LegalLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.r4.model.Contract.LegalLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.LegalLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.instance.model.Contract.ComputableLanguageComponent(); + copyElement(src, tgt); + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + + public org.hl7.fhir.r4.model.StructureDefinition convertDataElement(org.hl7.fhir.instance.model.DataElement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl().replace("/DataElement/", "/StructureDefinition/de-")); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.DataElement.DataElementContactComponent t : src.getContact()) + tgt.addContact(convertDataElementContactComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setCopyright(src.getCopyright()); +// tgt.setStringency(convertDataElementStringency(src.getStringency())); + for (org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent t : src.getMapping()) + tgt.addMapping(convertDataElementMappingComponent(t)); + List slicePaths = new ArrayList(); + for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { + if (t.hasSlicing()) + slicePaths.add(t.getPath()); + tgt.getSnapshot().addElement(convertElementDefinition(t, slicePaths)); + } + tgt.setKind(StructureDefinitionKind.LOGICAL); + tgt.setAbstract(false); + tgt.setType(tgt.getName()); + tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/Element"); + tgt.setDerivation(TypeDerivationRule.SPECIALIZATION); + return tgt; + } + +// public org.hl7.fhir.instance.model.DataElement convertDataElement(org.hl7.fhir.r4.model.DataElement src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.DataElement tgt = new org.hl7.fhir.instance.model.DataElement(); +// copyDomainResource(src, tgt); +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) +// tgt.addIdentifier(convertIdentifier(t)); +// tgt.setVersion(src.getVersion()); +// tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); +// if (src.hasExperimental()) +// tgt.setExperimental(src.getExperimental()); +// tgt.setPublisher(src.getPublisher()); +// if (src.hasDate()) +// tgt.setDate(src.getDate()); +// tgt.setName(src.getName()); +// for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) +// tgt.addContact(convertDataElementContactComponent(t)); +// for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) +// if (t.hasValueCodeableConcept()) +// tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) +// tgt.addUseContext(convertCodeableConcept(t)); +// tgt.setCopyright(src.getCopyright()); +// tgt.setStringency(convertDataElementStringency(src.getStringency())); +// for (org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent t : src.getMapping()) +// tgt.addMapping(convertDataElementMappingComponent(t)); +// for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) +// tgt.addElement(convertElementDefinition(t)); +// return tgt; +// } + +// public org.hl7.fhir.r4.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.instance.model.DataElement.DataElementStringency src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case COMPARABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.COMPARABLE; +// case FULLYSPECIFIED: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FULLYSPECIFIED; +// case EQUIVALENT: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.EQUIVALENT; +// case CONVERTABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.CONVERTABLE; +// case SCALEABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.SCALEABLE; +// case FLEXIBLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FLEXIBLE; +// default: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.NULL; +// } +// } +// +// public org.hl7.fhir.instance.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.r4.model.DataElement.DataElementStringency src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case COMPARABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.COMPARABLE; +// case FULLYSPECIFIED: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.FULLYSPECIFIED; +// case EQUIVALENT: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.EQUIVALENT; +// case CONVERTABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.CONVERTABLE; +// case SCALEABLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.SCALEABLE; +// case FLEXIBLE: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.FLEXIBLE; +// default: return org.hl7.fhir.instance.model.DataElement.DataElementStringency.NULL; +// } +// } + + public org.hl7.fhir.r4.model.ContactDetail convertDataElementContactComponent(org.hl7.fhir.instance.model.DataElement.DataElementContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DataElement.DataElementContactComponent convertDataElementContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DataElement.DataElementContactComponent tgt = new org.hl7.fhir.instance.model.DataElement.DataElementContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertDataElementMappingComponent(org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setUri(src.getUri()); + tgt.setName(src.getName()); + tgt.setComment(src.getComments()); + return tgt; + } + +// public org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.instance.model.DataElement.DataElementMappingComponent(); +// copyElement(src, tgt); +// tgt.setIdentity(src.getIdentity()); +// tgt.setUri(src.getUri()); +// tgt.setName(src.getName()); +// tgt.setComments(src.getComment()); +// return tgt; +// } + + public org.hl7.fhir.r4.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.instance.model.DetectedIssue src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DetectedIssue tgt = new org.hl7.fhir.r4.model.DetectedIssue(); + copyDomainResource(src, tgt); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); + for (org.hl7.fhir.instance.model.Reference t : src.getImplicated()) + tgt.addImplicated(convertReference(t)); + tgt.setDetail(src.getDetail()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setReference(src.getReference()); + for (org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) + tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.r4.model.DetectedIssue src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DetectedIssue tgt = new org.hl7.fhir.instance.model.DetectedIssue(); + copyDomainResource(src, tgt); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); + for (org.hl7.fhir.r4.model.Reference t : src.getImplicated()) + tgt.addImplicated(convertReference(t)); + tgt.setDetail(src.getDetail()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setReference(src.getReference()); + for (org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) + tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HIGH: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.HIGH; + case MODERATE: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.MODERATE; + case LOW: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.LOW; + default: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.NULL; + } + } + + public org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HIGH: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.HIGH; + case MODERATE: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.MODERATE; + case LOW: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.LOW; + default: return org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueSeverity.NULL; + } + } + + public org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent(); + copyElement(src, tgt); + tgt.setAction(convertCodeableConcept(src.getAction())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.instance.model.DetectedIssue.DetectedIssueMitigationComponent(); + copyElement(src, tgt); + tgt.setAction(convertCodeableConcept(src.getAction())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public org.hl7.fhir.r4.model.Device convertDevice(org.hl7.fhir.instance.model.Device src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Device tgt = new org.hl7.fhir.r4.model.Device(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setUdi((new org.hl7.fhir.r4.model.Device.DeviceUdiComponent()).setDeviceIdentifier(src.getUdi())); + tgt.setStatus(convertDeviceStatus(src.getStatus())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setLotNumber(src.getLotNumber()); + tgt.setManufacturer(src.getManufacturer()); + tgt.setManufactureDate(src.getManufactureDate()); + tgt.setExpirationDate(src.getExpiry()); + tgt.setModel(src.getModel()); + tgt.setVersion(src.getVersion()); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setOwner(convertReference(src.getOwner())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.instance.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Device convertDevice(org.hl7.fhir.r4.model.Device src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Device tgt = new org.hl7.fhir.instance.model.Device(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasUdi()) + tgt.setUdi(src.getUdi().getDeviceIdentifier()); + tgt.setStatus(convertDeviceStatus(src.getStatus())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setLotNumber(src.getLotNumber()); + tgt.setManufacturer(src.getManufacturer()); + tgt.setManufactureDate(src.getManufactureDate()); + tgt.setExpiry(src.getExpirationDate()); + tgt.setModel(src.getModel()); + tgt.setVersion(src.getVersion()); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setOwner(convertReference(src.getOwner())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Device.FHIRDeviceStatus convertDeviceStatus(org.hl7.fhir.instance.model.Device.DeviceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case AVAILABLE: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.ACTIVE; + case NOTAVAILABLE: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Device.DeviceStatus convertDeviceStatus(org.hl7.fhir.r4.model.Device.FHIRDeviceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.Device.DeviceStatus.AVAILABLE; + case INACTIVE: return org.hl7.fhir.instance.model.Device.DeviceStatus.NOTAVAILABLE; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Device.DeviceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.Device.DeviceStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.instance.model.DeviceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DeviceComponent tgt = new org.hl7.fhir.r4.model.DeviceComponent(); + copyDomainResource(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setLastSystemChange(src.getLastSystemChange()); + tgt.setSource(convertReference(src.getSource())); + tgt.setParent(convertReference(src.getParent())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getOperationalStatus()) + tgt.addOperationalStatus(convertCodeableConcept(t)); + tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); + tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); + for (org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) + tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); + tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); + return tgt; + } + + public org.hl7.fhir.instance.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.r4.model.DeviceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DeviceComponent tgt = new org.hl7.fhir.instance.model.DeviceComponent(); + copyDomainResource(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setLastSystemChange(src.getLastSystemChange()); + tgt.setSource(convertReference(src.getSource())); + tgt.setParent(convertReference(src.getParent())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getOperationalStatus()) + tgt.addOperationalStatus(convertCodeableConcept(t)); + tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); + tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); + for (org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) + tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); + tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); + return tgt; + } + + public org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OTHER: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.OTHER; + case CHEMICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; + case ELECTRICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; + case IMPEDANCE: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; + case NUCLEAR: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; + case OPTICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.OPTICAL; + case THERMAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.THERMAL; + case BIOLOGICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; + case MECHANICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; + case ACOUSTICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; + case MANUAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.MANUAL; + default: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OTHER: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.OTHER; + case CHEMICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; + case ELECTRICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; + case IMPEDANCE: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; + case NUCLEAR: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; + case OPTICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.OPTICAL; + case THERMAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.THERMAL; + case BIOLOGICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; + case MECHANICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; + case ACOUSTICAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; + case MANUAL: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.MANUAL; + default: return org.hl7.fhir.instance.model.DeviceComponent.MeasmntPrinciple.NULL; + } + } + + public org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); + copyElement(src, tgt); + tgt.setSpecType(convertCodeableConcept(src.getSpecType())); + tgt.setComponentId(convertIdentifier(src.getComponentId())); + tgt.setProductionSpec(src.getProductionSpec()); + return tgt; + } + + public org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.instance.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); + copyElement(src, tgt); + tgt.setSpecType(convertCodeableConcept(src.getSpecType())); + tgt.setComponentId(convertIdentifier(src.getComponentId())); + tgt.setProductionSpec(src.getProductionSpec()); + return tgt; + } + + public org.hl7.fhir.r4.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.instance.model.DeviceMetric src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DeviceMetric tgt = new org.hl7.fhir.r4.model.DeviceMetric(); + copyDomainResource(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setUnit(convertCodeableConcept(src.getUnit())); + tgt.setSource(convertReference(src.getSource())); + tgt.setParent(convertReference(src.getParent())); + tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); + tgt.setColor(convertDeviceMetricColor(src.getColor())); + tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); + tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); + for (org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) + tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.r4.model.DeviceMetric src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DeviceMetric tgt = new org.hl7.fhir.instance.model.DeviceMetric(); + copyDomainResource(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setUnit(convertCodeableConcept(src.getUnit())); + tgt.setSource(convertReference(src.getSource())); + tgt.setParent(convertReference(src.getParent())); + tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); + tgt.setColor(convertDeviceMetricColor(src.getColor())); + tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); + tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); + for (org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) + tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ON: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.ON; + case OFF: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; + case STANDBY: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; + default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ON: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.ON; + case OFF: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; + case STANDBY: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; + default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BLACK: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.BLACK; + case RED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.RED; + case GREEN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.GREEN; + case YELLOW: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.YELLOW; + case BLUE: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.BLUE; + case MAGENTA: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.MAGENTA; + case CYAN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.CYAN; + case WHITE: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.WHITE; + default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BLACK: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.BLACK; + case RED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.RED; + case GREEN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.GREEN; + case YELLOW: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.YELLOW; + case BLUE: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.BLUE; + case MAGENTA: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.MAGENTA; + case CYAN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.CYAN; + case WHITE: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.WHITE; + default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricColor.NULL; + } + } + + public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MEASUREMENT: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; + case SETTING: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.SETTING; + case CALCULATION: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.CALCULATION; + case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; + default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MEASUREMENT: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; + case SETTING: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.SETTING; + case CALCULATION: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.CALCULATION; + case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; + default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCategory.NULL; + } + } + + public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent(); + copyElement(src, tgt); + tgt.setType(convertDeviceMetricCalibrationType(src.getType())); + tgt.setState(convertDeviceMetricCalibrationState(src.getState())); + tgt.setTime(src.getTime()); + return tgt; + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationComponent(); + copyElement(src, tgt); + tgt.setType(convertDeviceMetricCalibrationType(src.getType())); + tgt.setState(convertDeviceMetricCalibrationState(src.getState())); + tgt.setTime(src.getTime()); + return tgt; + } + + public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; + case OFFSET: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; + case GAIN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; + case TWOPOINT: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; + default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; + case OFFSET: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; + case GAIN: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; + case TWOPOINT: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; + default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationType.NULL; + } + } + + public org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTCALIBRATED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; + case CALIBRATIONREQUIRED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; + case CALIBRATED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; + case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; + default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.NULL; + } + } + + public org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTCALIBRATED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; + case CALIBRATIONREQUIRED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; + case CALIBRATED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; + case UNSPECIFIED: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; + default: return org.hl7.fhir.instance.model.DeviceMetric.DeviceMetricCalibrationState.NULL; + } + } + + public org.hl7.fhir.r4.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.instance.model.DeviceUseStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DeviceUseStatement tgt = new org.hl7.fhir.r4.model.DeviceUseStatement(); + copyDomainResource(src, tgt); + if (src.hasBodySiteCodeableConcept()) + tgt.setBodySite(convertCodeableConcept(src.getBodySiteCodeableConcept())); + tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getIndication()) + tgt.addIndication(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.StringType t : src.getNotes()) + tgt.addNote().setText(t.getValue()); + tgt.setRecordedOn(src.getRecordedOn()); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setTiming(convertType(src.getTiming())); + return tgt; + } + + public org.hl7.fhir.instance.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.r4.model.DeviceUseStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DeviceUseStatement tgt = new org.hl7.fhir.instance.model.DeviceUseStatement(); + copyDomainResource(src, tgt); + tgt.setBodySite(convertType(src.getBodySite())); + tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getIndication()) + tgt.addIndication(convertCodeableConcept(t)); + for (Annotation t : src.getNote()) + tgt.addNotes(t.getText()); + tgt.setRecordedOn(src.getRecordedOn()); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setTiming(convertType(src.getTiming())); + return tgt; + } + +// public org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus convertDiagnosticOrderStatus(org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus src) throws FHIRException { +// if (src ==/* null || src.isEmpty()*/) +// return null; +// switch (src) { +// case PROPOSED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.PROPOSED; +// case DRAFT: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.DRAFT; +// case PLANNED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.PLANNED; +// case REQUESTED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.REQUESTED; +// case RECEIVED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.RECEIVED; +// case ACCEPTED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.ACCEPTED; +// case INPROGRESS: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.INPROGRESS; +// case REVIEW: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.REVIEW; +// case COMPLETED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.COMPLETED; +// case CANCELLED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.CANCELLED; +// case SUSPENDED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.SUSPENDED; +// case REJECTED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.REJECTED; +// case FAILED: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.FAILED; +// default: return org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus.NULL; +// } +// } +// +// public org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus convertDiagnosticOrderStatus(org.hl7.fhir.r4.model.DiagnosticRequest.DiagnosticRequestStatus src) throws FHIRException { +// if (src ==/* null || src.isEmpty()*/) +// return null; +// switch (src) { +// case PROPOSED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.PROPOSED; +// case DRAFT: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.DRAFT; +// case PLANNED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.PLANNED; +// case REQUESTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REQUESTED; +// case RECEIVED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.RECEIVED; +// case ACCEPTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.ACCEPTED; +// case INPROGRESS: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.INPROGRESS; +// case REVIEW: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REVIEW; +// case COMPLETED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.COMPLETED; +// case CANCELLED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.CANCELLED; +// case SUSPENDED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.SUSPENDED; +// case REJECTED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.REJECTED; +// case FAILED: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.FAILED; +// default: return org.hl7.fhir.instance.model.DiagnosticOrder.DiagnosticOrderStatus.NULL; +// } +// } + + + public org.hl7.fhir.r4.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.instance.model.DiagnosticReport src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DiagnosticReport tgt = new org.hl7.fhir.r4.model.DiagnosticReport(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setIssued(src.getIssued()); +// tgt.setPerformer(convertReference(src.getPerformer())); +// for (org.hl7.fhir.instance.model.Reference t : src.getRequest()) +// tgt.addRequest(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getSpecimen()) + tgt.addSpecimen(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getResult()) + tgt.addResult(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getImagingStudy()) + tgt.addImagingStudy(convertReference(t)); + for (org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) + tgt.addImage(convertDiagnosticReportImageComponent(t)); + tgt.setConclusion(src.getConclusion()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCodedDiagnosis()) + tgt.addCodedDiagnosis(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Attachment t : src.getPresentedForm()) + tgt.addPresentedForm(convertAttachment(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.r4.model.DiagnosticReport src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DiagnosticReport tgt = new org.hl7.fhir.instance.model.DiagnosticReport(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setIssued(src.getIssued()); +// tgt.setPerformer(convertReference(src.getPerformer())); +// for (org.hl7.fhir.r4.model.Reference t : src.getRequest()) +// tgt.addRequest(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getSpecimen()) + tgt.addSpecimen(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getResult()) + tgt.addResult(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getImagingStudy()) + tgt.addImagingStudy(convertReference(t)); + for (org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) + tgt.addImage(convertDiagnosticReportImageComponent(t)); + tgt.setConclusion(src.getConclusion()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCodedDiagnosis()) + tgt.addCodedDiagnosis(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Attachment t : src.getPresentedForm()) + tgt.addPresentedForm(convertAttachment(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; + case PARTIAL: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; + case FINAL: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.FINAL; + case CORRECTED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; + case APPENDED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; + case CANCELLED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; + case PARTIAL: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; + case FINAL: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.FINAL; + case CORRECTED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; + case APPENDED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; + case CANCELLED: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent(); + copyElement(src, tgt); + tgt.setComment(src.getComment()); + tgt.setLink(convertReference(src.getLink())); + return tgt; + } + + public org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.instance.model.DiagnosticReport.DiagnosticReportImageComponent(); + copyElement(src, tgt); + tgt.setComment(src.getComment()); + tgt.setLink(convertReference(src.getLink())); + return tgt; + } + + public org.hl7.fhir.r4.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.instance.model.DocumentManifest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DocumentManifest tgt = new org.hl7.fhir.r4.model.DocumentManifest(); + copyDomainResource(src, tgt); + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.instance.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + tgt.setCreated(src.getCreated()); + tgt.setSource(src.getSource()); + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) + tgt.addContent(convertDocumentManifestContentComponent(t)); + for (org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentManifestRelatedComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.r4.model.DocumentManifest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentManifest tgt = new org.hl7.fhir.instance.model.DocumentManifest(); + copyDomainResource(src, tgt); + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + tgt.setCreated(src.getCreated()); + tgt.setSource(src.getSource()); + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) + tgt.addContent(convertDocumentManifestContentComponent(t)); + for (org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentManifestRelatedComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.CURRENT; + case SUPERSEDED: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.CURRENT; + case SUPERSEDED: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.Enumerations.DocumentReferenceStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent(); + copyElement(src, tgt); + tgt.setP(convertType(src.getP())); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestContentComponent(); + copyElement(src, tgt); + tgt.setP(convertType(src.getP())); + return tgt; + } + + public org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.instance.model.DocumentManifest.DocumentManifestRelatedComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + public org.hl7.fhir.r4.model.DocumentReference convertDocumentReference(org.hl7.fhir.instance.model.DocumentReference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DocumentReference tgt = new org.hl7.fhir.r4.model.DocumentReference(); + copyDomainResource(src, tgt); + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setClass_(convertCodeableConcept(src.getClass_())); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + tgt.setCustodian(convertReference(src.getCustodian())); + tgt.setAuthenticator(convertReference(src.getAuthenticator())); + tgt.setCreated(src.getCreated()); + tgt.setIndexed(src.getIndexed()); + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + tgt.setDocStatus(convertDocStatus(src.getDocStatus())); + for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) + tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) + tgt.addContent(convertDocumentReferenceContentComponent(t)); + tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); + return tgt; + } + + private ReferredDocumentStatus convertDocStatus(CodeableConcept cc) { + if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "preliminary")) + return ReferredDocumentStatus.PRELIMINARY; + if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "final")) + return ReferredDocumentStatus.FINAL; + if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "amended")) + return ReferredDocumentStatus.AMENDED; + if (hasConcept(cc, "http://hl7.org/fhir/composition-status", "entered-in-error")) + return ReferredDocumentStatus.ENTEREDINERROR; + + return null; + } + + private CodeableConcept convertDocStatus(ReferredDocumentStatus docStatus) { + CodeableConcept cc = new CodeableConcept (); + switch (docStatus) { + case AMENDED: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("amended"); break; + case ENTEREDINERROR: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("entered-in-error"); break; + case FINAL: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("final"); break; + case PRELIMINARY: cc.addCoding(). setSystem("http://hl7.org/fhir/composition-status").setCode("preliminary"); break; + default: return null; + } + return cc; + } + + public org.hl7.fhir.instance.model.DocumentReference convertDocumentReference(org.hl7.fhir.r4.model.DocumentReference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentReference tgt = new org.hl7.fhir.instance.model.DocumentReference(); + copyDomainResource(src, tgt); + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setClass_(convertCodeableConcept(src.getClass_())); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + tgt.setCustodian(convertReference(src.getCustodian())); + tgt.setAuthenticator(convertReference(src.getAuthenticator())); + tgt.setCreated(src.getCreated()); + tgt.setIndexed(src.getIndexed()); + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + tgt.setDocStatus(convertDocStatus(src.getDocStatus())); + for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) + tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) + tgt.addContent(convertDocumentReferenceContentComponent(t)); + tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); + return tgt; + } + + + public org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent(); + copyElement(src, tgt); + tgt.setCode(convertDocumentRelationshipType(src.getCode())); + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceRelatesToComponent(); + copyElement(src, tgt); + tgt.setCode(convertDocumentRelationshipType(src.getCode())); + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + public org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACES: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.REPLACES; + case TRANSFORMS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; + case SIGNS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.SIGNS; + case APPENDS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.APPENDS; + default: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.NULL; + } + } + + public org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACES: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.REPLACES; + case TRANSFORMS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; + case SIGNS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.SIGNS; + case APPENDS: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.APPENDS; + default: return org.hl7.fhir.instance.model.DocumentReference.DocumentRelationshipType.NULL; + } + } + + public org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent(); + copyElement(src, tgt); + tgt.setAttachment(convertAttachment(src.getAttachment())); + for (org.hl7.fhir.instance.model.Coding t : src.getFormat()) + tgt.setFormat(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContentComponent(); + copyElement(src, tgt); + tgt.setAttachment(convertAttachment(src.getAttachment())); + tgt.addFormat(convertCoding(src.getFormat())); + return tgt; + } + + public org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent(); + copyElement(src, tgt); + tgt.setEncounter(convertReference(src.getEncounter())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getEvent()) + tgt.addEvent(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); + tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); + tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); + for (org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextComponent(); + copyElement(src, tgt); + tgt.setEncounter(convertReference(src.getEncounter())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getEvent()) + tgt.addEvent(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); + tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); + tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); + for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + public org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.instance.model.DocumentReference.DocumentReferenceContextRelatedComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + + public org.hl7.fhir.r4.model.Encounter convertEncounter(org.hl7.fhir.instance.model.Encounter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Encounter tgt = new org.hl7.fhir.r4.model.Encounter(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertEncounterState(src.getStatus())); +// for (org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent t : src.getStatusHistory()) +// tgt.addStatusHistory(convertEncounterStatusHistoryComponent(t)); + tgt.setClass_(convertEncounterClass(src.getClass_())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPriority(convertCodeableConcept(src.getPriority())); + tgt.setSubject(convertReference(src.getPatient())); + for (org.hl7.fhir.instance.model.Reference t : src.getEpisodeOfCare()) + tgt.addEpisodeOfCare(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getIncomingReferral()) + tgt.addIncomingReferral(convertReference(t)); + for (org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertEncounterParticipantComponent(t)); + tgt.setAppointment(convertReference(src.getAppointment())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setLength(convertDuration(src.getLength())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); + for (org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent t : src.getLocation()) + tgt.addLocation(convertEncounterLocationComponent(t)); + tgt.setServiceProvider(convertReference(src.getServiceProvider())); + tgt.setPartOf(convertReference(src.getPartOf())); + return tgt; + } + + public org.hl7.fhir.instance.model.Encounter convertEncounter(org.hl7.fhir.r4.model.Encounter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Encounter tgt = new org.hl7.fhir.instance.model.Encounter(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertEncounterState(src.getStatus())); +// for (org.hl7.fhir.r4.model.Encounter.EncounterStatusHistoryComponent t : src.getStatusHistory()) +// tgt.addStatusHistory(convertEncounterStatusHistoryComponent(t)); + tgt.setClass_(convertEncounterClass(src.getClass_())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPriority(convertCodeableConcept(src.getPriority())); + tgt.setPatient(convertReference(src.getSubject())); + for (org.hl7.fhir.r4.model.Reference t : src.getEpisodeOfCare()) + tgt.addEpisodeOfCare(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getIncomingReferral()) + tgt.addIncomingReferral(convertReference(t)); + for (org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertEncounterParticipantComponent(t)); + tgt.setAppointment(convertReference(src.getAppointment())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setLength(convertDuration(src.getLength())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); + for (org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent t : src.getLocation()) + tgt.addLocation(convertEncounterLocationComponent(t)); + tgt.setServiceProvider(convertReference(src.getServiceProvider())); + tgt.setPartOf(convertReference(src.getPartOf())); + return tgt; + } + + public org.hl7.fhir.r4.model.Encounter.EncounterStatus convertEncounterState(org.hl7.fhir.instance.model.Encounter.EncounterState src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.PLANNED; + case ARRIVED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.ARRIVED; + case INPROGRESS: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.INPROGRESS; + case ONLEAVE: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.ONLEAVE; + case FINISHED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.FINISHED; + case CANCELLED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.CANCELLED; + default: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Encounter.EncounterState convertEncounterState(org.hl7.fhir.r4.model.Encounter.EncounterStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.instance.model.Encounter.EncounterState.PLANNED; + case ARRIVED: return org.hl7.fhir.instance.model.Encounter.EncounterState.ARRIVED; + case INPROGRESS: return org.hl7.fhir.instance.model.Encounter.EncounterState.INPROGRESS; + case ONLEAVE: return org.hl7.fhir.instance.model.Encounter.EncounterState.ONLEAVE; + case FINISHED: return org.hl7.fhir.instance.model.Encounter.EncounterState.FINISHED; + case CANCELLED: return org.hl7.fhir.instance.model.Encounter.EncounterState.CANCELLED; + default: return org.hl7.fhir.instance.model.Encounter.EncounterState.NULL; + } + } + + public org.hl7.fhir.r4.model.Coding convertEncounterClass(org.hl7.fhir.instance.model.Encounter.EncounterClass src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPATIENT: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("IMP"); + case OUTPATIENT: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("AMB"); + case AMBULATORY: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("AMB"); + case EMERGENCY: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("EMER"); + case HOME: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("HH"); + case FIELD: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("FLD"); + case DAYTIME: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("SS"); + case VIRTUAL: return new org.hl7.fhir.r4.model.Coding().setSystem("http://hl7.org/fhir/v3/ActCode").setCode("VR"); + default: return null; + } + } + + public org.hl7.fhir.instance.model.Encounter.EncounterClass convertEncounterClass(org.hl7.fhir.r4.model.Coding src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src.getSystem().equals("http://hl7.org/fhir/v3/ActCode")) { + if (src.getCode().equals("IMP")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.INPATIENT; + if (src.getCode().equals("AMB")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.AMBULATORY; + if (src.getCode().equals("EMER")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.EMERGENCY; + if (src.getCode().equals("HH")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.HOME; + if (src.getCode().equals("FLD")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.FIELD; + if (src.getCode().equals("")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.DAYTIME; + if (src.getCode().equals("VR")) return org.hl7.fhir.instance.model.Encounter.EncounterClass.VIRTUAL; + } + return org.hl7.fhir.instance.model.Encounter.EncounterClass.NULL; + } + +// public org.hl7.fhir.r4.model.Encounter.EncounterStatusHistoryComponent convertEncounterStatusHistoryComponent(org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.Encounter.EncounterStatusHistoryComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterStatusHistoryComponent(); +// copyElement(src, tgt); +// tgt.setStatus(convertEncounterState(src.getStatus())); +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent convertEncounterStatusHistoryComponent(org.hl7.fhir.r4.model.Encounter.EncounterStatusHistoryComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterStatusHistoryComponent(); +// copyElement(src, tgt); +// tgt.setStatus(convertEncounterState(src.getStatus())); +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// return tgt; +// } + + public org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setIndividual(convertReference(src.getIndividual())); + return tgt; + } + + public org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setIndividual(convertReference(src.getIndividual())); + return tgt; + } + + public org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent(); + copyElement(src, tgt); + tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); + tgt.setOrigin(convertReference(src.getOrigin())); + tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); + tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getDietPreference()) + tgt.addDietPreference(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialCourtesy()) + tgt.addSpecialCourtesy(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialArrangement()) + tgt.addSpecialArrangement(convertCodeableConcept(t)); + tgt.setDestination(convertReference(src.getDestination())); + tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); + return tgt; + } + + public org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterHospitalizationComponent(); + copyElement(src, tgt); + tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); + tgt.setOrigin(convertReference(src.getOrigin())); + tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); + tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getDietPreference()) + tgt.addDietPreference(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialCourtesy()) + tgt.addSpecialCourtesy(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialArrangement()) + tgt.addSpecialArrangement(convertCodeableConcept(t)); + tgt.setDestination(convertReference(src.getDestination())); + tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); + return tgt; + } + + public org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent(); + copyElement(src, tgt); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.instance.model.Encounter.EncounterLocationComponent(); + copyElement(src, tgt); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.PLANNED; + case ACTIVE: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.ACTIVE; + case RESERVED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.RESERVED; + case COMPLETED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.COMPLETED; + default: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.PLANNED; + case ACTIVE: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.ACTIVE; + case RESERVED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.RESERVED; + case COMPLETED: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.COMPLETED; + default: return org.hl7.fhir.instance.model.Encounter.EncounterLocationStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.instance.model.EnrollmentRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.EnrollmentRequest tgt = new org.hl7.fhir.r4.model.EnrollmentRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCreated(src.getCreated()); +// tgt.setTarget(convertReference(src.getTarget())); + tgt.setProvider(convertReference(src.getProvider())); + tgt.setOrganization(convertReference(src.getOrganization())); + tgt.setCandidate(convertReference(src.getSubject())); + tgt.setCoverage(convertReference(src.getCoverage())); +// tgt.setRelationship(convertCoding(src.getRelationship())); + return tgt; + } + + public org.hl7.fhir.instance.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.r4.model.EnrollmentRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.EnrollmentRequest tgt = new org.hl7.fhir.instance.model.EnrollmentRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCreated(src.getCreated()); +// tgt.setTarget(convertReference(src.getTarget())); +// tgt.setProvider(convertReference(src.getProvider())); +// tgt.setOrganization(convertReference(src.getOrganization())); +// tgt.setSubject(convertReference(src.getSubject())); + tgt.setCoverage(convertReference(src.getCoverage())); +// tgt.setRelationship(convertCoding(src.getRelationship())); + return tgt; + } + + public org.hl7.fhir.r4.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.instance.model.EnrollmentResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.EnrollmentResponse tgt = new org.hl7.fhir.r4.model.EnrollmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setRequest(convertReference(src.getRequest())); +// tgt.setOutcome(convertRemittanceOutcome(src.getOutcome())); + tgt.setDisposition(src.getDisposition()); + tgt.setCreated(src.getCreated()); + tgt.setOrganization(convertReference(src.getOrganization())); + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + return tgt; + } + + public org.hl7.fhir.instance.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.r4.model.EnrollmentResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.EnrollmentResponse tgt = new org.hl7.fhir.instance.model.EnrollmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); +// tgt.setRequest(convertReference(src.getRequestReference())); +// tgt.setOutcome(convertRemittanceOutcome(src.getOutcome())); + tgt.setDisposition(src.getDisposition()); + tgt.setCreated(src.getCreated()); +// tgt.setOrganization(convertReference(src.getOrganizationReference())); +// tgt.setRequestProvider(convertReference(src.getRequestProviderReference())); +// tgt.setRequestOrganization(convertReference(src.getRequestOrganizationReference())); + return tgt; + } + + public org.hl7.fhir.r4.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.instance.model.EpisodeOfCare src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.EpisodeOfCare tgt = new org.hl7.fhir.r4.model.EpisodeOfCare(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + for (org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) + tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.instance.model.Reference t : src.getReferralRequest()) + tgt.addReferralRequest(convertReference(t)); + tgt.setCareManager(convertReference(src.getCareManager())); + return tgt; + } + + public org.hl7.fhir.instance.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.r4.model.EpisodeOfCare src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.EpisodeOfCare tgt = new org.hl7.fhir.instance.model.EpisodeOfCare(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) + tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.Reference t : src.getReferralRequest()) + tgt.addReferralRequest(convertReference(t)); + tgt.setCareManager(convertReference(src.getCareManager())); + return tgt; + } + + public org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; + case WAITLIST: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; + case ACTIVE: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; + case ONHOLD: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; + case FINISHED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; + case CANCELLED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; + default: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; + case WAITLIST: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; + case ACTIVE: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; + case ONHOLD: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; + case FINISHED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; + case CANCELLED: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; + default: return org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); + copyElement(src, tgt); + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.instance.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); + copyElement(src, tgt); + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + + public org.hl7.fhir.r4.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.instance.model.FamilyMemberHistory src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.FamilyMemberHistory tgt = new org.hl7.fhir.r4.model.FamilyMemberHistory(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); + tgt.setName(src.getName()); + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBorn(convertType(src.getBorn())); + tgt.setAge(convertType(src.getAge())); + tgt.setDeceased(convertType(src.getDeceased())); +// tgt.setNote(convertAnnotation(src.getNote())); + for (org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) + tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.r4.model.FamilyMemberHistory src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.FamilyMemberHistory tgt = new org.hl7.fhir.instance.model.FamilyMemberHistory(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); + tgt.setName(src.getName()); + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBorn(convertType(src.getBorn())); + tgt.setAge(convertType(src.getAge())); + tgt.setDeceased(convertType(src.getDeceased())); +// tgt.setNote(convertAnnotation(src.getNote())); + for (org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) + tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PARTIAL: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; + case COMPLETED: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; + case HEALTHUNKNOWN: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; + default: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PARTIAL: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; + case COMPLETED: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; + case HEALTHUNKNOWN: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; + default: return org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + tgt.setOnset(convertType(src.getOnset())); +// tgt.setNote(convertAnnotation(src.getNote())); + return tgt; + } + + public org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.instance.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + tgt.setOnset(convertType(src.getOnset())); +// tgt.setNote(convertAnnotation(src.getNote())); + return tgt; + } + + public org.hl7.fhir.r4.model.Flag convertFlag(org.hl7.fhir.instance.model.Flag src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Flag tgt = new org.hl7.fhir.r4.model.Flag(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setStatus(convertFlagStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public org.hl7.fhir.instance.model.Flag convertFlag(org.hl7.fhir.r4.model.Flag src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Flag tgt = new org.hl7.fhir.instance.model.Flag(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setStatus(convertFlagStatus(src.getStatus())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public org.hl7.fhir.r4.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.instance.model.Flag.FlagStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Flag.FlagStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.r4.model.Flag.FlagStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Flag.FlagStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Flag.FlagStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.r4.model.Flag.FlagStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.Flag.FlagStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.instance.model.Flag.FlagStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Flag.FlagStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.Flag.FlagStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Group convertGroup(org.hl7.fhir.instance.model.Group src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Group tgt = new org.hl7.fhir.r4.model.Group(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setType(convertGroupType(src.getType())); + tgt.setActual(src.getActual()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setName(src.getName()); + tgt.setQuantity(src.getQuantity()); + for (org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) + tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); + for (org.hl7.fhir.instance.model.Group.GroupMemberComponent t : src.getMember()) + tgt.addMember(convertGroupMemberComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Group convertGroup(org.hl7.fhir.r4.model.Group src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Group tgt = new org.hl7.fhir.instance.model.Group(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setType(convertGroupType(src.getType())); + tgt.setActual(src.getActual()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setName(src.getName()); + tgt.setQuantity(src.getQuantity()); + for (org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) + tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); + for (org.hl7.fhir.r4.model.Group.GroupMemberComponent t : src.getMember()) + tgt.addMember(convertGroupMemberComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Group.GroupType convertGroupType(org.hl7.fhir.instance.model.Group.GroupType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSON: return org.hl7.fhir.r4.model.Group.GroupType.PERSON; + case ANIMAL: return org.hl7.fhir.r4.model.Group.GroupType.ANIMAL; + case PRACTITIONER: return org.hl7.fhir.r4.model.Group.GroupType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.r4.model.Group.GroupType.DEVICE; + case MEDICATION: return org.hl7.fhir.r4.model.Group.GroupType.MEDICATION; + case SUBSTANCE: return org.hl7.fhir.r4.model.Group.GroupType.SUBSTANCE; + default: return org.hl7.fhir.r4.model.Group.GroupType.NULL; + } + } + + public org.hl7.fhir.instance.model.Group.GroupType convertGroupType(org.hl7.fhir.r4.model.Group.GroupType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSON: return org.hl7.fhir.instance.model.Group.GroupType.PERSON; + case ANIMAL: return org.hl7.fhir.instance.model.Group.GroupType.ANIMAL; + case PRACTITIONER: return org.hl7.fhir.instance.model.Group.GroupType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.instance.model.Group.GroupType.DEVICE; + case MEDICATION: return org.hl7.fhir.instance.model.Group.GroupType.MEDICATION; + case SUBSTANCE: return org.hl7.fhir.instance.model.Group.GroupType.SUBSTANCE; + default: return org.hl7.fhir.instance.model.Group.GroupType.NULL; + } + } + + public org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(convertType(src.getValue())); + tgt.setExclude(src.getExclude()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.instance.model.Group.GroupCharacteristicComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(convertType(src.getValue())); + tgt.setExclude(src.getExclude()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.r4.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.instance.model.Group.GroupMemberComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.r4.model.Group.GroupMemberComponent(); + copyElement(src, tgt); + tgt.setEntity(convertReference(src.getEntity())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setInactive(src.getInactive()); + return tgt; + } + + public org.hl7.fhir.instance.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.r4.model.Group.GroupMemberComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.instance.model.Group.GroupMemberComponent(); + copyElement(src, tgt); + tgt.setEntity(convertReference(src.getEntity())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setInactive(src.getInactive()); + return tgt; + } + + public org.hl7.fhir.r4.model.HealthcareService convertHealthcareService(org.hl7.fhir.instance.model.HealthcareService src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.HealthcareService tgt = new org.hl7.fhir.r4.model.HealthcareService(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setProvidedBy(convertReference(src.getProvidedBy())); +// tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); + for (org.hl7.fhir.instance.model.HealthcareService.ServiceTypeComponent t : src.getServiceType()) { +// if (t.hasType()) +// tgt.addServiceType(convertCodeableConcept(t.getType())); + for (org.hl7.fhir.instance.model.CodeableConcept tj : t.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(tj)); + } + tgt.addLocation(convertReference(src.getLocation())); +// tgt.setServiceName(src.getServiceName()); + tgt.setComment(src.getComment()); + tgt.setExtraDetails(src.getExtraDetails()); + tgt.setPhoto(convertAttachment(src.getPhoto())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getCoverageArea()) + tgt.addCoverageArea(convertReference(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getServiceProvisionCode()) + tgt.addServiceProvisionCode(convertCodeableConcept(t)); + tgt.setEligibility(convertCodeableConcept(src.getEligibility())); + tgt.setEligibilityNote(src.getEligibilityNote()); + for (org.hl7.fhir.instance.model.StringType t : src.getProgramName()) + tgt.addProgramName(t.getValue()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCharacteristic()) + tgt.addCharacteristic(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReferralMethod()) + tgt.addReferralMethod(convertCodeableConcept(t)); +// tgt.setPublicKey(src.getPublicKey()); + tgt.setAppointmentRequired(src.getAppointmentRequired()); + for (org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) + tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); + for (org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) + tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); + tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); + return tgt; + } + + public org.hl7.fhir.instance.model.HealthcareService convertHealthcareService(org.hl7.fhir.r4.model.HealthcareService src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.HealthcareService tgt = new org.hl7.fhir.instance.model.HealthcareService(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setProvidedBy(convertReference(src.getProvidedBy())); +// tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) +// tgt.addServiceType().setType(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) { + if (!tgt.hasServiceType()) + tgt.addServiceType(); + tgt.getServiceType().get(0).addSpecialty(convertCodeableConcept(t)); + } + for (org.hl7.fhir.r4.model.Reference t : src.getLocation()) + tgt.setLocation(convertReference(t)); +// tgt.setServiceName(src.getServiceName()); + tgt.setComment(src.getComment()); + tgt.setExtraDetails(src.getExtraDetails()); + tgt.setPhoto(convertAttachment(src.getPhoto())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getCoverageArea()) + tgt.addCoverageArea(convertReference(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceProvisionCode()) + tgt.addServiceProvisionCode(convertCodeableConcept(t)); + tgt.setEligibility(convertCodeableConcept(src.getEligibility())); + tgt.setEligibilityNote(src.getEligibilityNote()); + for (org.hl7.fhir.r4.model.StringType t : src.getProgramName()) + tgt.addProgramName(t.getValue()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCharacteristic()) + tgt.addCharacteristic(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReferralMethod()) + tgt.addReferralMethod(convertCodeableConcept(t)); +// tgt.setPublicKey(src.getPublicKey()); + tgt.setAppointmentRequired(src.getAppointmentRequired()); + for (org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) + tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); + for (org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) + tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); + tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); + return tgt; + } + + public org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Enumeration t : src.getDaysOfWeek()) + tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); + tgt.setAllDay(src.getAllDay()); + tgt.setAvailableStartTime(src.getAvailableStartTime()); + tgt.setAvailableEndTime(src.getAvailableEndTime()); + return tgt; + } + + public org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Enumeration t : src.getDaysOfWeek()) + tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); + tgt.setAllDay(src.getAllDay()); + tgt.setAvailableStartTime(src.getAvailableStartTime()); + tgt.setAvailableEndTime(src.getAvailableEndTime()); + return tgt; + } + + public org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MON: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.MON; + case TUE: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.TUE; + case WED: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.WED; + case THU: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.THU; + case FRI: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.FRI; + case SAT: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.SAT; + case SUN: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.SUN; + default: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.NULL; + } + } + + public org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MON: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.MON; + case TUE: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.TUE; + case WED: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.WED; + case THU: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.THU; + case FRI: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.FRI; + case SAT: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.SAT; + case SUN: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.SUN; + default: return org.hl7.fhir.instance.model.HealthcareService.DaysOfWeek.NULL; + } + } + + public org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + tgt.setDuring(convertPeriod(src.getDuring())); + return tgt; + } + + public org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.instance.model.HealthcareService.HealthcareServiceNotAvailableComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + tgt.setDuring(convertPeriod(src.getDuring())); + return tgt; + } + +// public org.hl7.fhir.r4.model.ImagingObjectSelection convertImagingObjectSelection(org.hl7.fhir.instance.model.ImagingObjectSelection src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.ImagingObjectSelection tgt = new org.hl7.fhir.r4.model.ImagingObjectSelection(); +// copyDomainResource(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setAuthoringTime(src.getAuthoringTime()); +// tgt.setAuthor(convertReference(src.getAuthor())); +// tgt.setTitle(convertCodeableConcept(src.getTitle())); +// tgt.setDescription(src.getDescription()); +// for (org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent t : src.getStudy()) +// tgt.addStudy(convertStudyComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ImagingObjectSelection convertImagingObjectSelection(org.hl7.fhir.r4.model.ImagingObjectSelection src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ImagingObjectSelection tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection(); +// copyDomainResource(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setAuthoringTime(src.getAuthoringTime()); +// tgt.setAuthor(convertReference(src.getAuthor())); +// tgt.setTitle(convertCodeableConcept(src.getTitle())); +// tgt.setDescription(src.getDescription()); +// for (org.hl7.fhir.r4.model.ImagingObjectSelection.StudyComponent t : src.getStudy()) +// tgt.addStudy(convertStudyComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.r4.model.ImagingObjectSelection.StudyComponent convertStudyComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.ImagingObjectSelection.StudyComponent tgt = new org.hl7.fhir.r4.model.ImagingObjectSelection.StudyComponent(); +// copyElement(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// tgt.setImagingStudy(convertReference(src.getImagingStudy())); +// for (org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent t : src.getSeries()) +// tgt.addSeries(convertSeriesComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent convertStudyComponent(org.hl7.fhir.r4.model.ImagingObjectSelection.StudyComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.StudyComponent(); +// copyElement(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// tgt.setImagingStudy(convertReference(src.getImagingStudy())); +// for (org.hl7.fhir.r4.model.ImagingObjectSelection.SeriesComponent t : src.getSeries()) +// tgt.addSeries(convertSeriesComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.r4.model.ImagingObjectSelection.SeriesComponent convertSeriesComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.ImagingObjectSelection.SeriesComponent tgt = new org.hl7.fhir.r4.model.ImagingObjectSelection.SeriesComponent(); +// copyElement(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent t : src.getInstance()) +// tgt.addInstance(convertInstanceComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent convertSeriesComponent(org.hl7.fhir.r4.model.ImagingObjectSelection.SeriesComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.SeriesComponent(); +// copyElement(src, tgt); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.r4.model.ImagingObjectSelection.InstanceComponent t : src.getInstance()) +// tgt.addInstance(convertInstanceComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.r4.model.ImagingObjectSelection.InstanceComponent convertInstanceComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.ImagingObjectSelection.InstanceComponent tgt = new org.hl7.fhir.r4.model.ImagingObjectSelection.InstanceComponent(); +// copyElement(src, tgt); +// tgt.setSopClass(src.getSopClass()); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent t : src.getFrames()) +// tgt.addFrame(convertFramesComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent convertInstanceComponent(org.hl7.fhir.r4.model.ImagingObjectSelection.InstanceComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.InstanceComponent(); +// copyElement(src, tgt); +// tgt.setSopClass(src.getSopClass()); +// tgt.setUid(src.getUid()); +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.r4.model.ImagingObjectSelection.FramesComponent t : src.getFrame()) +// tgt.addFrames(convertFramesComponent(t)); +// return tgt; +// } +// +// public org.hl7.fhir.r4.model.ImagingObjectSelection.FramesComponent convertFramesComponent(org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.ImagingObjectSelection.FramesComponent tgt = new org.hl7.fhir.r4.model.ImagingObjectSelection.FramesComponent(); +// copyElement(src, tgt); +// for (org.hl7.fhir.instance.model.UnsignedIntType t : src.getFrameNumbers()) +// tgt.addNumber(t.getValue()); +// tgt.setUrl(src.getUrl()); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent convertFramesComponent(org.hl7.fhir.r4.model.ImagingObjectSelection.FramesComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent tgt = new org.hl7.fhir.instance.model.ImagingObjectSelection.FramesComponent(); +// copyElement(src, tgt); +// for (org.hl7.fhir.r4.model.UnsignedIntType t : src.getNumber()) +// tgt.addFrameNumbers(t.getValue()); +// tgt.setUrl(src.getUrl()); +// return tgt; +// } +// + public org.hl7.fhir.r4.model.ImagingStudy convertImagingStudy(org.hl7.fhir.instance.model.ImagingStudy src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImagingStudy tgt = new org.hl7.fhir.r4.model.ImagingStudy(); + copyDomainResource(src, tgt); + tgt.setUid(src.getUid()); + tgt.setAccession(convertIdentifier(src.getAccession())); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + for (org.hl7.fhir.instance.model.Coding t : src.getModalityList()) + tgt.addModalityList(convertCoding(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setStarted(src.getStarted()); + tgt.setReferrer(convertReference(src.getReferrer())); + tgt.addInterpreter(convertReference(src.getInterpreter())); + tgt.setNumberOfSeries(src.getNumberOfSeries()); + tgt.setNumberOfInstances(src.getNumberOfInstances()); + for (org.hl7.fhir.instance.model.Reference t : src.getProcedure()) + tgt.addProcedureReference(convertReference(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) + tgt.addSeries(convertImagingStudySeriesComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImagingStudy convertImagingStudy(org.hl7.fhir.r4.model.ImagingStudy src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImagingStudy tgt = new org.hl7.fhir.instance.model.ImagingStudy(); + copyDomainResource(src, tgt); + tgt.setUid(src.getUid()); + tgt.setAccession(convertIdentifier(src.getAccession())); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + for (org.hl7.fhir.r4.model.Coding t : src.getModalityList()) + tgt.addModalityList(convertCoding(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setStarted(src.getStarted()); + tgt.setReferrer(convertReference(src.getReferrer())); + for (org.hl7.fhir.r4.model.Reference t : src.getInterpreter()) + tgt.setInterpreter(convertReference(t)); + tgt.setNumberOfSeries(src.getNumberOfSeries()); + tgt.setNumberOfInstances(src.getNumberOfInstances()); + for (org.hl7.fhir.r4.model.Reference t : src.getProcedureReference()) + tgt.addProcedure(convertReference(t)); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) + tgt.addSeries(convertImagingStudySeriesComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ONLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.ONLINE; + case OFFLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.OFFLINE; + case NEARLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.NEARLINE; + case UNAVAILABLE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; + default: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.NULL; + } + } + + public org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ONLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.ONLINE; + case OFFLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.OFFLINE; + case NEARLINE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.NEARLINE; + case UNAVAILABLE: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; + default: return org.hl7.fhir.instance.model.ImagingStudy.InstanceAvailability.NULL; + } + } + + public org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent(); + copyElement(src, tgt); + tgt.setUid(src.getUid()); + tgt.setNumber(src.getNumber()); + tgt.setModality(convertCoding(src.getModality())); + tgt.setDescription(src.getDescription()); + tgt.setNumberOfInstances(src.getNumberOfInstances()); + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + tgt.setBodySite(convertCoding(src.getBodySite())); + tgt.setLaterality(convertCoding(src.getLaterality())); + tgt.setStarted(src.getStarted()); + for (org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) + tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesComponent(); + copyElement(src, tgt); + tgt.setUid(src.getUid()); + tgt.setNumber(src.getNumber()); + tgt.setModality(convertCoding(src.getModality())); + tgt.setDescription(src.getDescription()); + tgt.setNumberOfInstances(src.getNumberOfInstances()); + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + tgt.setBodySite(convertCoding(src.getBodySite())); + tgt.setLaterality(convertCoding(src.getLaterality())); + tgt.setStarted(src.getStarted()); + for (org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) + tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); + copyElement(src, tgt); + tgt.setUid(src.getUid()); + tgt.setNumber(src.getNumber()); + tgt.setSopClass(src.getSopClass()); + tgt.setTitle(src.getTitle()); + return tgt; + } + + public org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.instance.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); + copyElement(src, tgt); + tgt.setUid(src.getUid()); + tgt.setNumber(src.getNumber()); + tgt.setSopClass(src.getSopClass()); + tgt.setTitle(src.getTitle()); + return tgt; + } + + public org.hl7.fhir.r4.model.Immunization convertImmunization(org.hl7.fhir.instance.model.Immunization src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Immunization tgt = new org.hl7.fhir.r4.model.Immunization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + try { + tgt.setStatus(org.hl7.fhir.r4.model.Immunization.ImmunizationStatus.fromCode(src.getStatus())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setNotGiven(src.getWasNotGiven()); + tgt.setPrimarySource(!src.getReported()); + if (src.hasPerformer()) + tgt.addPractitioner().setActor(convertReference(src.getPerformer())).setRole(new org.hl7.fhir.r4.model.CodeableConcept().addCoding(new Coding().setSystem("http://hl7.org/fhir/v2/0443").setCode("AP"))); + if (src.hasRequester()) + tgt.addPractitioner().setActor(convertReference(src.getRequester())).setRole(new org.hl7.fhir.r4.model.CodeableConcept().addCoding(new Coding().setSystem("http://hl7.org/fhir/v2/0443").setCode("OP"))); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setManufacturer(convertReference(src.getManufacturer())); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setLotNumber(src.getLotNumber()); + tgt.setExpirationDate(src.getExpirationDate()); + tgt.setSite(convertCodeableConcept(src.getSite())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); + for (org.hl7.fhir.instance.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); + for (org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) + tgt.addReaction(convertImmunizationReactionComponent(t)); + for (org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) + tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Immunization convertImmunization(org.hl7.fhir.r4.model.Immunization src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Immunization tgt = new org.hl7.fhir.instance.model.Immunization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(src.getStatus().toCode()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setWasNotGiven(src.getNotGiven()); + tgt.setReported(!src.getPrimarySource()); + tgt.setPerformer(convertReference(getPerformer(src.getPractitioner()))); + tgt.setRequester(convertReference(getRequester(src.getPractitioner()))); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setManufacturer(convertReference(src.getManufacturer())); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setLotNumber(src.getLotNumber()); + tgt.setExpirationDate(src.getExpirationDate()); + tgt.setSite(convertCodeableConcept(src.getSite())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); + for (org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) + tgt.addReaction(convertImmunizationReactionComponent(t)); + for (org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) + tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); + return tgt; + } + + private org.hl7.fhir.r4.model.Reference getPerformer(List practitioner) { + for (ImmunizationPractitionerComponent p : practitioner) { + if (hasConcept(p.getRole(), "http://hl7.org/fhir/v2/0443", "AP")) + return p.getActor(); + } + return null; + } + + private org.hl7.fhir.r4.model.Reference getRequester(List practitioner) { + for (ImmunizationPractitionerComponent p : practitioner) { + if (hasConcept(p.getRole(), "http://hl7.org/fhir/v2/0443", "OP")) + return p.getActor(); + } + return null; + } + + private boolean hasConcept(org.hl7.fhir.r4.model.CodeableConcept cc, String system, String code) { + for (org.hl7.fhir.r4.model.Coding c : cc.getCoding()) { + if (system.equals(c.getSystem()) && code.equals(c.getCode())) + return true; + } + return false; + } + + private boolean hasConcept(org.hl7.fhir.instance.model.CodeableConcept cc, String system, String code) { + for (org.hl7.fhir.instance.model.Coding c : cc.getCoding()) { + if (system.equals(c.getSystem()) && code.equals(c.getCode())) + return true; + } + return false; + } + + public org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotGiven()) + tgt.addReasonNotGiven(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationExplanationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotGiven()) + tgt.addReasonNotGiven(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDetail(convertReference(src.getDetail())); + tgt.setReported(src.getReported()); + return tgt; + } + + public org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationReactionComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDetail(convertReference(src.getDetail())); + tgt.setReported(src.getReported()); + return tgt; + } + + public org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent(); + copyElement(src, tgt); + tgt.setDoseSequence(src.getDoseSequence()); + tgt.setDescription(src.getDescription()); + tgt.setAuthority(convertReference(src.getAuthority())); + tgt.setSeries(src.getSeries()); + tgt.setSeriesDoses(src.getSeriesDoses()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getTargetDisease()) + tgt.addTargetDisease(convertCodeableConcept(t)); + tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); + tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); + return tgt; + } + + public org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.instance.model.Immunization.ImmunizationVaccinationProtocolComponent(); + copyElement(src, tgt); + tgt.setDoseSequence(src.getDoseSequence()); + tgt.setDescription(src.getDescription()); + tgt.setAuthority(convertReference(src.getAuthority())); + tgt.setSeries(src.getSeries()); + tgt.setSeriesDoses(src.getSeriesDoses()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTargetDisease()) + tgt.addTargetDisease(convertCodeableConcept(t)); + tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); + tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); + return tgt; + } + + public org.hl7.fhir.r4.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.instance.model.ImmunizationRecommendation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImmunizationRecommendation tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + for (org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) + tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.r4.model.ImmunizationRecommendation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImmunizationRecommendation tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + for (org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) + tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + tgt.setDoseNumber(src.getDoseNumber()); + tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); + for (org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) + tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); + tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); + for (org.hl7.fhir.instance.model.Reference t : src.getSupportingImmunization()) + tgt.addSupportingImmunization(convertReference(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getSupportingPatientInformation()) + tgt.addSupportingPatientInformation(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + tgt.setDoseNumber(src.getDoseNumber()); + tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); + for (org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) + tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); + tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingImmunization()) + tgt.addSupportingImmunization(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingPatientInformation()) + tgt.addSupportingPatientInformation(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); + copyElement(src, tgt); + tgt.setDoseSequence(src.getDoseSequence()); + tgt.setDescription(src.getDescription()); + tgt.setAuthority(convertReference(src.getAuthority())); + tgt.setSeries(src.getSeries()); + return tgt; + } + + public org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.instance.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); + copyElement(src, tgt); + tgt.setDoseSequence(src.getDoseSequence()); + tgt.setDescription(src.getDescription()); + tgt.setAuthority(convertReference(src.getAuthority())); + tgt.setSeries(src.getSeries()); + return tgt; + } + + public org.hl7.fhir.r4.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.instance.model.ImplementationGuide src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide tgt = new org.hl7.fhir.r4.model.ImplementationGuide(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent t : src.getContact()) + tgt.addContact(convertImplementationGuideContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setCopyright(src.getCopyright()); + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) + tgt.addDependency(convertImplementationGuideDependencyComponent(t)); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) + tgt.addPackage(convertImplementationGuidePackageComponent(t)); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) + tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); + for (org.hl7.fhir.instance.model.UriType t : src.getBinary()) + tgt.addBinary(t.getValue()); + tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.r4.model.ImplementationGuide src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide tgt = new org.hl7.fhir.instance.model.ImplementationGuide(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertImplementationGuideContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setCopyright(src.getCopyright()); + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) + tgt.addDependency(convertImplementationGuideDependencyComponent(t)); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) + tgt.addPackage(convertImplementationGuidePackageComponent(t)); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) + tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); + for (org.hl7.fhir.r4.model.UriType t : src.getBinary()) + tgt.addBinary(t.getValue()); + tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); + return tgt; + } + + public org.hl7.fhir.r4.model.ContactDetail convertImplementationGuideContactComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent convertImplementationGuideContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent(); + copyElement(src, tgt); + tgt.setType(convertGuideDependencyType(src.getType())); + tgt.setUri(src.getUri()); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideDependencyComponent(); + copyElement(src, tgt); + tgt.setType(convertGuideDependencyType(src.getType())); + tgt.setUri(src.getUri()); + return tgt; + } + + public org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REFERENCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.REFERENCE; + case INCLUSION: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.INCLUSION; + default: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.NULL; + } + } + + public org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REFERENCE: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.REFERENCE; + case INCLUSION: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.INCLUSION; + default: return org.hl7.fhir.instance.model.ImplementationGuide.GuideDependencyType.NULL; + } + } + + public org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) + tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) + tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); + copyElement(src, tgt); + tgt.setExample(src.getPurpose() == org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.EXAMPLE); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setAcronym(src.getAcronym()); + tgt.setSource(convertType(src.getSource())); + tgt.setExampleFor(convertReference(src.getExampleFor())); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); + copyElement(src, tgt); + if (src.getExample()) + tgt.setPurpose(org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.EXAMPLE); + else + tgt.setPurpose(org.hl7.fhir.instance.model.ImplementationGuide.GuideResourcePurpose.PROFILE); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setAcronym(src.getAcronym()); + tgt.setSource(convertType(src.getSource())); + tgt.setExampleFor(convertReference(src.getExampleFor())); + return tgt; + } + + public org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuideGlobalComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent(); + copyElement(src, tgt); + tgt.setSource(src.getSource()); + tgt.setTitle(src.getName()); + tgt.setKind(convertGuidePageKind(src.getKind())); + for (org.hl7.fhir.instance.model.CodeType t : src.getType()) + tgt.addType(t.getValue()); + for (org.hl7.fhir.instance.model.StringType t : src.getPackage()) + tgt.addPackage(t.getValue()); + tgt.setFormat(src.getFormat()); + for (org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) + tgt.addPage(convertImplementationGuidePageComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.instance.model.ImplementationGuide.ImplementationGuidePageComponent(); + copyElement(src, tgt); + tgt.setSource(src.getSource()); + tgt.setName(src.getTitle()); + tgt.setKind(convertGuidePageKind(src.getKind())); + for (org.hl7.fhir.r4.model.CodeType t : src.getType()) + tgt.addType(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getPackage()) + tgt.addPackage(t.getValue()); + tgt.setFormat(src.getFormat()); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) + tgt.addPage(convertImplementationGuidePageComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PAGE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.PAGE; + case EXAMPLE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.EXAMPLE; + case LIST: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.LIST; + case INCLUDE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.INCLUDE; + case DIRECTORY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DIRECTORY; + case DICTIONARY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DICTIONARY; + case TOC: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.TOC; + case RESOURCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.RESOURCE; + default: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.NULL; + } + } + + public org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PAGE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.PAGE; + case EXAMPLE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.EXAMPLE; + case LIST: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.LIST; + case INCLUDE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.INCLUDE; + case DIRECTORY: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.DIRECTORY; + case DICTIONARY: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.DICTIONARY; + case TOC: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.TOC; + case RESOURCE: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.RESOURCE; + default: return org.hl7.fhir.instance.model.ImplementationGuide.GuidePageKind.NULL; + } + } + + + public org.hl7.fhir.r4.model.Location convertLocation(org.hl7.fhir.instance.model.Location src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Location tgt = new org.hl7.fhir.r4.model.Location(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertLocationStatus(src.getStatus())); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setMode(convertLocationMode(src.getMode())); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); + tgt.setPosition(convertLocationPositionComponent(src.getPosition())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setPartOf(convertReference(src.getPartOf())); + return tgt; + } + + public org.hl7.fhir.instance.model.Location convertLocation(org.hl7.fhir.r4.model.Location src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Location tgt = new org.hl7.fhir.instance.model.Location(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertLocationStatus(src.getStatus())); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + tgt.setMode(convertLocationMode(src.getMode())); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); + tgt.setPosition(convertLocationPositionComponent(src.getPosition())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setPartOf(convertReference(src.getPartOf())); + return tgt; + } + + public org.hl7.fhir.r4.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.instance.model.Location.LocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Location.LocationStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.Location.LocationStatus.SUSPENDED; + case INACTIVE: return org.hl7.fhir.r4.model.Location.LocationStatus.INACTIVE; + default: return org.hl7.fhir.r4.model.Location.LocationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.r4.model.Location.LocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.Location.LocationStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.instance.model.Location.LocationStatus.SUSPENDED; + case INACTIVE: return org.hl7.fhir.instance.model.Location.LocationStatus.INACTIVE; + default: return org.hl7.fhir.instance.model.Location.LocationStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Location.LocationMode convertLocationMode(org.hl7.fhir.instance.model.Location.LocationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.r4.model.Location.LocationMode.INSTANCE; + case KIND: return org.hl7.fhir.r4.model.Location.LocationMode.KIND; + default: return org.hl7.fhir.r4.model.Location.LocationMode.NULL; + } + } + + public org.hl7.fhir.instance.model.Location.LocationMode convertLocationMode(org.hl7.fhir.r4.model.Location.LocationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.instance.model.Location.LocationMode.INSTANCE; + case KIND: return org.hl7.fhir.instance.model.Location.LocationMode.KIND; + default: return org.hl7.fhir.instance.model.Location.LocationMode.NULL; + } + } + + public org.hl7.fhir.r4.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.instance.model.Location.LocationPositionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.r4.model.Location.LocationPositionComponent(); + copyElement(src, tgt); + tgt.setLongitude(src.getLongitude()); + tgt.setLatitude(src.getLatitude()); + tgt.setAltitude(src.getAltitude()); + return tgt; + } + + public org.hl7.fhir.instance.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.r4.model.Location.LocationPositionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.instance.model.Location.LocationPositionComponent(); + copyElement(src, tgt); + tgt.setLongitude(src.getLongitude()); + tgt.setLatitude(src.getLatitude()); + tgt.setAltitude(src.getAltitude()); + return tgt; + } + + public org.hl7.fhir.r4.model.Media convertMedia(org.hl7.fhir.instance.model.Media src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Media tgt = new org.hl7.fhir.r4.model.Media(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setType(convertDigitalMediaType(src.getType())); + tgt.setSubtype(convertCodeableConcept(src.getSubtype())); + tgt.setView(convertCodeableConcept(src.getView())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setOperator(convertReference(src.getOperator())); + tgt.getDevice().setDisplay(src.getDeviceName()); + tgt.setHeight(src.getHeight()); + tgt.setWidth(src.getWidth()); + tgt.setFrames(src.getFrames()); + tgt.setDuration(src.getDuration()); + tgt.setContent(convertAttachment(src.getContent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Media convertMedia(org.hl7.fhir.r4.model.Media src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Media tgt = new org.hl7.fhir.instance.model.Media(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setType(convertDigitalMediaType(src.getType())); + tgt.setSubtype(convertCodeableConcept(src.getSubtype())); + tgt.setView(convertCodeableConcept(src.getView())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setOperator(convertReference(src.getOperator())); + tgt.setDeviceName(src.getDevice().getDisplay()); + tgt.setHeight(src.getHeight()); + tgt.setWidth(src.getWidth()); + tgt.setFrames(src.getFrames()); + tgt.setDuration(src.getDuration()); + tgt.setContent(convertAttachment(src.getContent())); + return tgt; + } + + public org.hl7.fhir.r4.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.instance.model.Media.DigitalMediaType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHOTO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.PHOTO; + case VIDEO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.VIDEO; + case AUDIO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.AUDIO; + default: return org.hl7.fhir.r4.model.Media.DigitalMediaType.NULL; + } + } + + public org.hl7.fhir.instance.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.r4.model.Media.DigitalMediaType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHOTO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.PHOTO; + case VIDEO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.VIDEO; + case AUDIO: return org.hl7.fhir.instance.model.Media.DigitalMediaType.AUDIO; + default: return org.hl7.fhir.instance.model.Media.DigitalMediaType.NULL; + } + } + + public org.hl7.fhir.r4.model.Medication convertMedication(org.hl7.fhir.instance.model.Medication src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Medication tgt = new org.hl7.fhir.r4.model.Medication(); + copyDomainResource(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setIsBrand(src.getIsBrand()); + tgt.setManufacturer(convertReference(src.getManufacturer())); +// tgt.setProduct(convertMedicationProductComponent(src.getProduct())); + tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); + return tgt; + } + + public org.hl7.fhir.instance.model.Medication convertMedication(org.hl7.fhir.r4.model.Medication src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Medication tgt = new org.hl7.fhir.instance.model.Medication(); + copyDomainResource(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setIsBrand(src.getIsBrand()); + tgt.setManufacturer(convertReference(src.getManufacturer())); +// tgt.setProduct(convertMedicationProductComponent(src.getProduct())); + tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); + return tgt; + } + +// public org.hl7.fhir.r4.model.Medication.MedicationProductComponent convertMedicationProductComponent(org.hl7.fhir.instance.model.Medication.MedicationProductComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.Medication.MedicationProductComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationProductComponent(); +// copyElement(src, tgt); +// tgt.setForm(convertCodeableConcept(src.getForm())); +// for (org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent t : src.getIngredient()) +// tgt.addIngredient(convertMedicationProductIngredientComponent(t)); +// for (org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent t : src.getBatch()) +// tgt.addBatch(convertMedicationProductBatchComponent(t)); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.Medication.MedicationProductComponent convertMedicationProductComponent(org.hl7.fhir.r4.model.Medication.MedicationProductComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.Medication.MedicationProductComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductComponent(); +// copyElement(src, tgt); +// tgt.setForm(convertCodeableConcept(src.getForm())); +// for (org.hl7.fhir.r4.model.Medication.MedicationProductIngredientComponent t : src.getIngredient()) +// tgt.addIngredient(convertMedicationProductIngredientComponent(t)); +// for (org.hl7.fhir.r4.model.Medication.MedicationProductBatchComponent t : src.getBatch()) +// tgt.addBatch(convertMedicationProductBatchComponent(t)); +// return tgt; +// } + +// public org.hl7.fhir.r4.model.Medication.MedicationProductIngredientComponent convertMedicationProductIngredientComponent(org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.Medication.MedicationProductIngredientComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationProductIngredientComponent(); +// copyElement(src, tgt); +// tgt.setItem(convertType(src.getItem())); +// tgt.setAmount(convertRatio(src.getAmount())); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent convertMedicationProductIngredientComponent(org.hl7.fhir.r4.model.Medication.MedicationProductIngredientComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductIngredientComponent(); +// copyElement(src, tgt); +// if (src.hasItemReference()) +// tgt.setItem((org.hl7.fhir.instance.model.Reference) convertType(src.getItem())); +// tgt.setAmount(convertRatio(src.getAmount())); +// return tgt; +// } + +// public org.hl7.fhir.r4.model.Medication.MedicationProductBatchComponent convertMedicationProductBatchComponent(org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.Medication.MedicationProductBatchComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationProductBatchComponent(); +// copyElement(src, tgt); +// tgt.setLotNumber(src.getLotNumber()); +// tgt.setExpirationDate(src.getExpirationDate()); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent convertMedicationProductBatchComponent(org.hl7.fhir.r4.model.Medication.MedicationProductBatchComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationProductBatchComponent(); +// copyElement(src, tgt); +// tgt.setLotNumber(src.getLotNumber()); +// tgt.setExpirationDate(src.getExpirationDate()); +// return tgt; +// } + + public org.hl7.fhir.r4.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.instance.model.Medication.MedicationPackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationPackageComponent(); + copyElement(src, tgt); + tgt.setContainer(convertCodeableConcept(src.getContainer())); + for (org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent t : src.getContent()) + tgt.addContent(convertMedicationPackageContentComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.r4.model.Medication.MedicationPackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationPackageComponent(); + copyElement(src, tgt); + tgt.setContainer(convertCodeableConcept(src.getContainer())); + for (org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent t : src.getContent()) + tgt.addContent(convertMedicationPackageContentComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent(); + copyElement(src, tgt); + tgt.setItem(convertType(src.getItem())); + tgt.setAmount(convertSimpleQuantity(src.getAmount())); + return tgt; + } + + public org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.instance.model.Medication.MedicationPackageContentComponent(); + copyElement(src, tgt); + if (src.hasItemReference()) + tgt.setItem((org.hl7.fhir.instance.model.Reference) convertType(src.getItem())); + tgt.setAmount(convertSimpleQuantity(src.getAmount())); + return tgt; + } + + public org.hl7.fhir.r4.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.instance.model.MedicationDispense src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.MedicationDispense tgt = new org.hl7.fhir.r4.model.MedicationDispense(); + copyDomainResource(src, tgt); + tgt.addIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); + tgt.setMedication(convertType(src.getMedication())); + tgt.setSubject(convertReference(src.getPatient())); +// tgt.setDispenser(convertReference(src.getDispenser())); + for (org.hl7.fhir.instance.model.Reference t : src.getAuthorizingPrescription()) + tgt.addAuthorizingPrescription(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); + tgt.setWhenPrepared(src.getWhenPrepared()); + tgt.setWhenHandedOver(src.getWhenHandedOver()); + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.instance.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + if (src.hasNote()) + tgt.addNote().setText(src.getNote()); + for (org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent t : src.getDosageInstruction()) + tgt.addDosageInstruction(convertMedicationDispenseDosageInstructionComponent(t)); + tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.r4.model.MedicationDispense src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationDispense tgt = new org.hl7.fhir.instance.model.MedicationDispense(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifierFirstRep())); + tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); + tgt.setMedication(convertType(src.getMedication())); + tgt.setPatient(convertReference(src.getSubject())); +// tgt.setDispenser(convertReference(src.getDispenser())); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthorizingPrescription()) + tgt.addAuthorizingPrescription(convertReference(t)); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); + tgt.setWhenPrepared(src.getWhenPrepared()); + tgt.setWhenHandedOver(src.getWhenHandedOver()); + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.r4.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.setNote(t.getText()); + for (org.hl7.fhir.r4.model.Dosage t : src.getDosageInstruction()) + tgt.addDosageInstruction(convertMedicationDispenseDosageInstructionComponent(t)); + tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); + return tgt; + } + + public org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.STOPPED; + default: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.STOPPED; + default: return org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Dosage convertMedicationDispenseDosageInstructionComponent(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Dosage tgt = new org.hl7.fhir.r4.model.Dosage(); + copyElement(src, tgt); + tgt.setText(src.getText()); +// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + if (src.hasSiteCodeableConcept()) + tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setDose(convertType(src.getDose())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent convertMedicationDispenseDosageInstructionComponent(Dosage src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent tgt = new org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseDosageInstructionComponent(); + copyElement(src, tgt); + tgt.setText(src.getText()); +// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + tgt.setSite(convertType(src.getSite())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setDose(convertType(src.getDose())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + + public org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); + copyElement(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getResponsibleParty()) + tgt.addResponsibleParty(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.instance.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); + copyElement(src, tgt); + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getResponsibleParty()) + tgt.addResponsibleParty(convertReference(t)); + return tgt; + } + +// public org.hl7.fhir.r4.model.MedicationOrder convertMedicationOrder(org.hl7.fhir.instance.model.MedicationOrder src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.MedicationOrder tgt = new org.hl7.fhir.r4.model.MedicationOrder(); +// copyDomainResource(src, tgt); +// for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) +// tgt.addIdentifier(convertIdentifier(t)); +// tgt.setStatus(convertMedicationOrderStatus(src.getStatus())); +// tgt.setMedication(convertType(src.getMedication())); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setEncounter(convertReference(src.getEncounter())); +// if (src.hasDateWritten()) +// tgt.setDateWritten(src.getDateWritten()); +// tgt.setPrescriber(convertReference(src.getPrescriber())); +// if (src.hasReasonCodeableConcept()) +// tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); +// if (src.hasReasonReference()) +// tgt.addReasonReference(convertReference(src.getReasonReference())); +//// tgt.setDateEnded(src.getDateEnded()); +//// tgt.setReasonEnded(convertCodeableConcept(src.getReasonEnded())); +// if (src.hasNote()) +// tgt.addNote().setText(src.getNote()); +// for (org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent t : src.getDosageInstruction()) +// tgt.addDosageInstruction(convertMedicationOrderDosageInstructionComponent(t)); +// tgt.setDispenseRequest(convertMedicationOrderDispenseRequestComponent(src.getDispenseRequest())); +// tgt.setSubstitution(convertMedicationOrderSubstitutionComponent(src.getSubstitution())); +// tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.MedicationOrder convertMedicationOrder(org.hl7.fhir.r4.model.MedicationOrder src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.MedicationOrder tgt = new org.hl7.fhir.instance.model.MedicationOrder(); +// copyDomainResource(src, tgt); +// for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) +// tgt.addIdentifier(convertIdentifier(t)); +// tgt.setStatus(convertMedicationOrderStatus(src.getStatus())); +// tgt.setMedication(convertType(src.getMedication())); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setEncounter(convertReference(src.getEncounter())); +// if (src.hasDateWritten()) +// tgt.setDateWritten(src.getDateWritten()); +// tgt.setPrescriber(convertReference(src.getPrescriber())); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) +// tgt.setReason(convertCodeableConcept(t)); +// for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) +// tgt.setReason(convertReference(t)); +//// tgt.setDateEnded(src.getDateEnded()); +//// tgt.setReasonEnded(convertCodeableConcept(src.getReasonEnded())); +// for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) +// tgt.setNote(t.getText()); +// for (org.hl7.fhir.r4.model.DosageInstruction t : src.getDosageInstruction()) +// tgt.addDosageInstruction(convertMedicationOrderDosageInstructionComponent(t)); +// tgt.setDispenseRequest(convertMedicationOrderDispenseRequestComponent(src.getDispenseRequest())); +// tgt.setSubstitution(convertMedicationOrderSubstitutionComponent(src.getSubstitution())); +// tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); +// return tgt; +// } +// +// public org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus convertMedicationOrderStatus(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case ACTIVE: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.ACTIVE; +// case ONHOLD: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.ONHOLD; +// case COMPLETED: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.COMPLETED; +// case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.ENTEREDINERROR; +// case STOPPED: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.STOPPED; +// case DRAFT: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.DRAFT; +// default: return org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus.NULL; +// } +// } +// +// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus convertMedicationOrderStatus(org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderStatus src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case ACTIVE: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ACTIVE; +// case ONHOLD: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ONHOLD; +// case COMPLETED: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.COMPLETED; +// case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.ENTEREDINERROR; +// case STOPPED: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.STOPPED; +// case DRAFT: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.DRAFT; +// default: return org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderStatus.NULL; +// } +// } + + public org.hl7.fhir.r4.model.Dosage convertMedicationOrderDosageInstructionComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Dosage tgt = new org.hl7.fhir.r4.model.Dosage(); + copyElement(src, tgt); + tgt.setText(src.getText()); +// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + if (src.hasSiteCodeableConcept()) + tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setDose(convertType(src.getDose())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent convertMedicationOrderDosageInstructionComponent(org.hl7.fhir.r4.model.Dosage src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDosageInstructionComponent(); + copyElement(src, tgt); + tgt.setText(src.getText()); +// tgt.setAdditionalInstructions(convertCodeableConcept(src.getAdditionalInstructions())); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + tgt.setSite(convertType(src.getSite())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setDose(convertType(src.getDose())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + +// public org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderDispenseRequestComponent convertMedicationOrderDispenseRequestComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderDispenseRequestComponent tgt = new org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderDispenseRequestComponent(); +// copyElement(src, tgt); +//// tgt.setMedication(convertType(src.getMedication())); +// tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); +// tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); +// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); +// tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent convertMedicationOrderDispenseRequestComponent(org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderDispenseRequestComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderDispenseRequestComponent(); +// copyElement(src, tgt); +//// tgt.setMedication(convertType(src.getMedication())); +// tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); +// tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); +// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); +// tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); +// return tgt; +// } +// +// public org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderSubstitutionComponent convertMedicationOrderSubstitutionComponent(org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderSubstitutionComponent tgt = new org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderSubstitutionComponent(); +// copyElement(src, tgt); +//// tgt.setType(convertCodeableConcept(src.getType())); +// tgt.setReason(convertCodeableConcept(src.getReason())); +// return tgt; +// } +// +// public org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent convertMedicationOrderSubstitutionComponent(org.hl7.fhir.r4.model.MedicationOrder.MedicationOrderSubstitutionComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent tgt = new org.hl7.fhir.instance.model.MedicationOrder.MedicationOrderSubstitutionComponent(); +// copyElement(src, tgt); +//// tgt.setType(convertCodeableConcept(src.getType())); +// tgt.setReason(convertCodeableConcept(src.getReason())); +// return tgt; +// } + + public org.hl7.fhir.r4.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.instance.model.MedicationStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.MedicationStatement tgt = new org.hl7.fhir.r4.model.MedicationStatement(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); + tgt.setMedication(convertType(src.getMedication())); + tgt.setSubject(convertReference(src.getPatient())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setInformationSource(convertReference(src.getInformationSource())); + for (org.hl7.fhir.instance.model.Reference t : src.getSupportingInformation()) + tgt.addDerivedFrom(convertReference(t)); + if (src.hasDateAsserted()) + tgt.setDateAsserted(src.getDateAsserted()); +// tgt.getNotTakenElement().setValueAsString(src.getWasNotTaken() ? "Y" : "N"); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotTaken()) + tgt.addReasonNotTaken(convertCodeableConcept(t)); +// tgt.setReasonForUse(convertType(src.getReasonForUse())); + if (src.hasNote()) + tgt.addNote().setText(src.getNote()); + for (org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent t : src.getDosage()) + tgt.addDosage(convertMedicationStatementDosageComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.r4.model.MedicationStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationStatement tgt = new org.hl7.fhir.instance.model.MedicationStatement(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); + tgt.setMedication(convertType(src.getMedication())); + tgt.setPatient(convertReference(src.getSubject())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setInformationSource(convertReference(src.getInformationSource())); + for (org.hl7.fhir.r4.model.Reference t : src.getDerivedFrom()) + tgt.addSupportingInformation(convertReference(t)); + if (src.hasDateAsserted()) + tgt.setDateAsserted(src.getDateAsserted()); +// tgt.setWasNotTaken("Y".equals(src.getNotTakenElement().getValueAsString())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotTaken()) + tgt.addReasonNotTaken(convertCodeableConcept(t)); +// tgt.setReasonForUse(convertType(src.getReasonForUse())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.setNote(t.getText()); + for (org.hl7.fhir.r4.model.Dosage t : src.getDosage()) + tgt.addDosage(convertMedicationStatementDosageComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; + case INTENDED: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.INTENDED; + default: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; + case INTENDED: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.INTENDED; + default: return org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Dosage convertMedicationStatementDosageComponent(org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Dosage tgt = new org.hl7.fhir.r4.model.Dosage(); + copyElement(src, tgt); + tgt.setText(src.getText()); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + if (src.hasSiteCodeableConcept()) + tgt.setSite(convertCodeableConcept(src.getSiteCodeableConcept())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); +// tgt.setQuantity(convertType(src.getQuantity())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent convertMedicationStatementDosageComponent(org.hl7.fhir.r4.model.Dosage src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent tgt = new org.hl7.fhir.instance.model.MedicationStatement.MedicationStatementDosageComponent(); + copyElement(src, tgt); + tgt.setText(src.getText()); + tgt.setTiming(convertTiming(src.getTiming())); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + tgt.setSite(convertType(src.getSite())); + tgt.setRoute(convertCodeableConcept(src.getRoute())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); +// tgt.setQuantity(convertType(src.getQuantity())); + tgt.setRate(convertType(src.getRate())); + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + return tgt; + } + + public org.hl7.fhir.r4.model.MessageHeader convertMessageHeader(org.hl7.fhir.instance.model.MessageHeader src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.MessageHeader tgt = new org.hl7.fhir.r4.model.MessageHeader(); + copyDomainResource(src, tgt); + tgt.setTimestamp(src.getTimestamp()); + tgt.setEvent(convertCoding(src.getEvent())); + tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); + tgt.setSource(convertMessageSourceComponent(src.getSource())); + for (org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) + tgt.addDestination(convertMessageDestinationComponent(t)); + tgt.setEnterer(convertReference(src.getEnterer())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setResponsible(convertReference(src.getResponsible())); + tgt.setReason(convertCodeableConcept(src.getReason())); + for (org.hl7.fhir.instance.model.Reference t : src.getData()) + tgt.addFocus(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.MessageHeader convertMessageHeader(org.hl7.fhir.r4.model.MessageHeader src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MessageHeader tgt = new org.hl7.fhir.instance.model.MessageHeader(); + copyDomainResource(src, tgt); + tgt.setTimestamp(src.getTimestamp()); + tgt.setEvent(convertCoding(src.getEvent())); + tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); + tgt.setSource(convertMessageSourceComponent(src.getSource())); + for (org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) + tgt.addDestination(convertMessageDestinationComponent(t)); + tgt.setEnterer(convertReference(src.getEnterer())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setResponsible(convertReference(src.getResponsible())); + tgt.setReason(convertCodeableConcept(src.getReason())); + for (org.hl7.fhir.r4.model.Reference t : src.getFocus()) + tgt.addData(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setCode(convertResponseType(src.getCode())); + tgt.setDetails(convertReference(src.getDetails())); + return tgt; + } + + public org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageHeaderResponseComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setCode(convertResponseType(src.getCode())); + tgt.setDetails(convertReference(src.getDetails())); + return tgt; + } + + public org.hl7.fhir.r4.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.instance.model.MessageHeader.ResponseType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OK: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.OK; + case TRANSIENTERROR: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.TRANSIENTERROR; + case FATALERROR: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.FATALERROR; + default: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.NULL; + } + } + + public org.hl7.fhir.instance.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.r4.model.MessageHeader.ResponseType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OK: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.OK; + case TRANSIENTERROR: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.TRANSIENTERROR; + case FATALERROR: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.FATALERROR; + default: return org.hl7.fhir.instance.model.MessageHeader.ResponseType.NULL; + } + } + + public org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setSoftware(src.getSoftware()); + tgt.setVersion(src.getVersion()); + tgt.setContact(convertContactPoint(src.getContact())); + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageSourceComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setSoftware(src.getSoftware()); + tgt.setVersion(src.getVersion()); + tgt.setContact(convertContactPoint(src.getContact())); + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setTarget(convertReference(src.getTarget())); + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.instance.model.MessageHeader.MessageDestinationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setTarget(convertReference(src.getTarget())); + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public org.hl7.fhir.r4.model.NamingSystem convertNamingSystem(org.hl7.fhir.instance.model.NamingSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.NamingSystem tgt = new org.hl7.fhir.r4.model.NamingSystem(); + copyDomainResource(src, tgt); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertNamingSystemType(src.getKind())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent t : src.getContact()) + tgt.addContact(convertNamingSystemContactComponent(t)); + tgt.setResponsible(src.getResponsible()); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setUsage(src.getUsage()); + for (org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) + tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); + tgt.setReplacedBy(convertReference(src.getReplacedBy())); + return tgt; + } + + public org.hl7.fhir.instance.model.NamingSystem convertNamingSystem(org.hl7.fhir.r4.model.NamingSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.NamingSystem tgt = new org.hl7.fhir.instance.model.NamingSystem(); + copyDomainResource(src, tgt); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertNamingSystemType(src.getKind())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertNamingSystemContactComponent(t)); + tgt.setResponsible(src.getResponsible()); + tgt.setType(convertCodeableConcept(src.getType())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setUsage(src.getUsage()); + for (org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) + tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); + tgt.setReplacedBy(convertReference(src.getReplacedBy())); + return tgt; + } + + public org.hl7.fhir.r4.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.instance.model.NamingSystem.NamingSystemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODESYSTEM: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.CODESYSTEM; + case IDENTIFIER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.IDENTIFIER; + case ROOT: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.ROOT; + default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.NULL; + } + } + + public org.hl7.fhir.instance.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODESYSTEM: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.CODESYSTEM; + case IDENTIFIER: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.IDENTIFIER; + case ROOT: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.ROOT; + default: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemType.NULL; + } + } + + public org.hl7.fhir.r4.model.ContactDetail convertNamingSystemContactComponent(org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent convertNamingSystemContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent tgt = new org.hl7.fhir.instance.model.NamingSystem.NamingSystemContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent(); + copyElement(src, tgt); + tgt.setType(convertNamingSystemIdentifierType(src.getType())); + tgt.setValue(src.getValue()); + tgt.setPreferred(src.getPreferred()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.instance.model.NamingSystem.NamingSystemUniqueIdComponent(); + copyElement(src, tgt); + tgt.setType(convertNamingSystemIdentifierType(src.getType())); + tgt.setValue(src.getValue()); + tgt.setPreferred(src.getPreferred()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OID; + case UUID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.UUID; + case URI: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.URI; + case OTHER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OTHER; + default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.NULL; + } + } + + public org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OID: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.OID; + case UUID: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.UUID; + case URI: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.URI; + case OTHER: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.OTHER; + default: return org.hl7.fhir.instance.model.NamingSystem.NamingSystemIdentifierType.NULL; + } + } + + public org.hl7.fhir.r4.model.Observation convertObservation(org.hl7.fhir.instance.model.Observation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Observation tgt = new org.hl7.fhir.r4.model.Observation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertObservationStatus(src.getStatus())); + tgt.addCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setIssued(src.getIssued()); + for (org.hl7.fhir.instance.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + tgt.setValue(convertType(src.getValue())); + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); + tgt.setComment(src.getComments()); + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setSpecimen(convertReference(src.getSpecimen())); + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + for (org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent t : src.getRelated()) + tgt.addRelated(convertObservationRelatedComponent(t)); + for (org.hl7.fhir.instance.model.Observation.ObservationComponentComponent t : src.getComponent()) + tgt.addComponent(convertObservationComponentComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Observation convertObservation(org.hl7.fhir.r4.model.Observation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Observation tgt = new org.hl7.fhir.instance.model.Observation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertObservationStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.CodeableConcept c : src.getCategory()) + tgt.setCategory(convertCodeableConcept(c)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setEffective(convertType(src.getEffective())); + tgt.setIssued(src.getIssued()); + for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + tgt.setValue(convertType(src.getValue())); + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); + tgt.setComments(src.getComment()); + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + tgt.setSpecimen(convertReference(src.getSpecimen())); + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + for (org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent t : src.getRelated()) + tgt.addRelated(convertObservationRelatedComponent(t)); + for (org.hl7.fhir.r4.model.Observation.ObservationComponentComponent t : src.getComponent()) + tgt.addComponent(convertObservationComponentComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.instance.model.Observation.ObservationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.REGISTERED; + case PRELIMINARY: return org.hl7.fhir.r4.model.Observation.ObservationStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.r4.model.Observation.ObservationStatus.FINAL; + case AMENDED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.AMENDED; + case CANCELLED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Observation.ObservationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.Observation.ObservationStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.Observation.ObservationStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.r4.model.Observation.ObservationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.REGISTERED; + case PRELIMINARY: return org.hl7.fhir.instance.model.Observation.ObservationStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.instance.model.Observation.ObservationStatus.FINAL; + case AMENDED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.AMENDED; + case CANCELLED: return org.hl7.fhir.instance.model.Observation.ObservationStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Observation.ObservationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.instance.model.Observation.ObservationStatus.UNKNOWN; + default: return org.hl7.fhir.instance.model.Observation.ObservationStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + tgt.setType(convertCodeableConcept(src.getMeaning())); + tgt.setAge(convertRange(src.getAge())); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); +// for (org.hl7.fhir.r4.model.CodeableConcept c : src.getMeaning()) + tgt.setMeaning(convertCodeableConcept(src.getType())); + tgt.setAge(convertRange(src.getAge())); + tgt.setText(src.getText()); + return tgt; + } + + public org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent(); + copyElement(src, tgt); + tgt.setType(convertObservationRelationshipType(src.getType())); + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + public org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationRelatedComponent(); + copyElement(src, tgt); + tgt.setType(convertObservationRelationshipType(src.getType())); + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + public org.hl7.fhir.r4.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.instance.model.Observation.ObservationRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HASMEMBER: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.HASMEMBER; + case DERIVEDFROM: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.DERIVEDFROM; + case SEQUELTO: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.SEQUELTO; + case REPLACES: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.REPLACES; + case QUALIFIEDBY: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.QUALIFIEDBY; + case INTERFEREDBY: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.INTERFEREDBY; + default: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.NULL; + } + } + + public org.hl7.fhir.instance.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.r4.model.Observation.ObservationRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HASMEMBER: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.HASMEMBER; + case DERIVEDFROM: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.DERIVEDFROM; + case SEQUELTO: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.SEQUELTO; + case REPLACES: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.REPLACES; + case QUALIFIEDBY: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.QUALIFIEDBY; + case INTERFEREDBY: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.INTERFEREDBY; + default: return org.hl7.fhir.instance.model.Observation.ObservationRelationshipType.NULL; + } + } + + public org.hl7.fhir.r4.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.instance.model.Observation.ObservationComponentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationComponentComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(convertType(src.getValue())); + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + for (org.hl7.fhir.instance.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.r4.model.Observation.ObservationComponentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.instance.model.Observation.ObservationComponentComponent(); + copyElement(src, tgt); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setValue(convertType(src.getValue())); + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + for (org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.instance.model.OperationDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.OperationDefinition tgt = new org.hl7.fhir.r4.model.OperationDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertOperationKind(src.getKind())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent t : src.getContact()) + tgt.addContact(convertOperationDefinitionContactComponent(t)); + tgt.setDescription(src.getDescription()); + tgt.setPurpose(src.getRequirements()); + if (src.hasIdempotent()) + tgt.setIdempotent(src.getIdempotent()); + tgt.setCode(src.getCode()); + tgt.setComment(src.getNotes()); + tgt.setBase(convertReference(src.getBase())); + tgt.setSystem(src.getSystem()); + for (org.hl7.fhir.instance.model.CodeType t : src.getType()) + tgt.addResource(t.getValue()); + tgt.setType(tgt.hasResource()); + tgt.setInstance(src.getInstance()); + for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) + tgt.addParameter(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.r4.model.OperationDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationDefinition tgt = new org.hl7.fhir.instance.model.OperationDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertOperationKind(src.getKind())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertOperationDefinitionContactComponent(t)); + tgt.setDescription(src.getDescription()); + tgt.setRequirements(src.getPurpose()); + tgt.setIdempotent(src.getIdempotent()); + tgt.setCode(src.getCode()); + tgt.setNotes(src.getComment()); + if (src.hasBase()) + tgt.setBase(convertReference(src.getBase())); + tgt.setSystem(src.getSystem()); + if (src.getType()) + for (org.hl7.fhir.r4.model.CodeType t : src.getResource()) + tgt.addType(t.getValue()); + tgt.setInstance(src.getInstance()); + for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) + tgt.addParameter(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.instance.model.OperationDefinition.OperationKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OPERATION: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.OPERATION; + case QUERY: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.QUERY; + default: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.NULL; + } + } + + public org.hl7.fhir.instance.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.r4.model.OperationDefinition.OperationKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OPERATION: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.OPERATION; + case QUERY: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.QUERY; + default: return org.hl7.fhir.instance.model.OperationDefinition.OperationKind.NULL; + } + } + + public org.hl7.fhir.r4.model.ContactDetail convertOperationDefinitionContactComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent convertOperationDefinitionContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setUse(convertOperationParameterUse(src.getUse())); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + tgt.setDocumentation(src.getDocumentation()); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); + for (org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) + tgt.addPart(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setUse(convertOperationParameterUse(src.getUse())); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + tgt.setDocumentation(src.getDocumentation()); + if (src.hasSearchType()) { + tgt.setType(src.getSearchType().toCode()); + tgt.setType("string"); + } else + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + if (src.hasBinding()) + tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); + for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) + tgt.addPart(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.IN; + case OUT: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.OUT; + default: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.NULL; + } + } + + public org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.IN; + case OUT: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.OUT; + default: return org.hl7.fhir.instance.model.OperationDefinition.OperationParameterUse.NULL; + } + } + + public org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.instance.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public org.hl7.fhir.r4.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.instance.model.OperationOutcome src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.OperationOutcome tgt = new org.hl7.fhir.r4.model.OperationOutcome(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) + tgt.addIssue(convertOperationOutcomeIssueComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.r4.model.OperationOutcome src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationOutcome tgt = new org.hl7.fhir.instance.model.OperationOutcome(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) + tgt.addIssue(convertOperationOutcomeIssueComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent(); + copyElement(src, tgt); + tgt.setSeverity(convertIssueSeverity(src.getSeverity())); + tgt.setCode(convertIssueType(src.getCode())); + tgt.setDetails(convertCodeableConcept(src.getDetails())); + tgt.setDiagnostics(src.getDiagnostics()); + for (org.hl7.fhir.instance.model.StringType t : src.getLocation()) + tgt.addLocation(t.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.instance.model.OperationOutcome.OperationOutcomeIssueComponent(); + copyElement(src, tgt); + tgt.setSeverity(convertIssueSeverity(src.getSeverity())); + tgt.setCode(convertIssueType(src.getCode())); + tgt.setDetails(convertCodeableConcept(src.getDetails())); + tgt.setDiagnostics(src.getDiagnostics()); + for (org.hl7.fhir.r4.model.StringType t : src.getLocation()) + tgt.addLocation(t.getValue()); + return tgt; + } + + public org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FATAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.FATAL; + case ERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.ERROR; + case WARNING: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.WARNING; + case INFORMATION: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.INFORMATION; + default: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.NULL; + } + } + + public org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FATAL: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.FATAL; + case ERROR: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.ERROR; + case WARNING: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.WARNING; + case INFORMATION: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.INFORMATION; + default: return org.hl7.fhir.instance.model.OperationOutcome.IssueSeverity.NULL; + } + } + + public org.hl7.fhir.r4.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.instance.model.OperationOutcome.IssueType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVALID; + case STRUCTURE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.STRUCTURE; + case REQUIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.REQUIRED; + case VALUE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.VALUE; + case INVARIANT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVARIANT; + case SECURITY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SECURITY; + case LOGIN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOGIN; + case UNKNOWN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.UNKNOWN; + case EXPIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXPIRED; + case FORBIDDEN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.FORBIDDEN; + case SUPPRESSED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SUPPRESSED; + case PROCESSING: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.PROCESSING; + case NOTSUPPORTED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTSUPPORTED; + case DUPLICATE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.DUPLICATE; + case NOTFOUND: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTFOUND; + case TOOLONG: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOLONG; + case CODEINVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CODEINVALID; + case EXTENSION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXTENSION; + case TOOCOSTLY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOCOSTLY; + case BUSINESSRULE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.BUSINESSRULE; + case CONFLICT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CONFLICT; + case INCOMPLETE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INCOMPLETE; + case TRANSIENT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TRANSIENT; + case LOCKERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOCKERROR; + case NOSTORE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOSTORE; + case EXCEPTION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXCEPTION; + case TIMEOUT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TIMEOUT; + case THROTTLED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.THROTTLED; + case INFORMATIONAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INFORMATIONAL; + default: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NULL; + } + } + + public org.hl7.fhir.instance.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.r4.model.OperationOutcome.IssueType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INVALID: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INVALID; + case STRUCTURE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.STRUCTURE; + case REQUIRED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.REQUIRED; + case VALUE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.VALUE; + case INVARIANT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INVARIANT; + case SECURITY: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.SECURITY; + case LOGIN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.LOGIN; + case UNKNOWN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.UNKNOWN; + case EXPIRED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXPIRED; + case FORBIDDEN: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.FORBIDDEN; + case SUPPRESSED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.SUPPRESSED; + case PROCESSING: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.PROCESSING; + case NOTSUPPORTED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOTSUPPORTED; + case DUPLICATE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.DUPLICATE; + case NOTFOUND: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOTFOUND; + case TOOLONG: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TOOLONG; + case CODEINVALID: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.CODEINVALID; + case EXTENSION: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXTENSION; + case TOOCOSTLY: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TOOCOSTLY; + case BUSINESSRULE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.BUSINESSRULE; + case CONFLICT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.CONFLICT; + case INCOMPLETE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INCOMPLETE; + case TRANSIENT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TRANSIENT; + case LOCKERROR: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.LOCKERROR; + case NOSTORE: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NOSTORE; + case EXCEPTION: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.EXCEPTION; + case TIMEOUT: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.TIMEOUT; + case THROTTLED: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.THROTTLED; + case INFORMATIONAL: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.INFORMATIONAL; + default: return org.hl7.fhir.instance.model.OperationOutcome.IssueType.NULL; + } + } + + + public org.hl7.fhir.r4.model.Organization convertOrganization(org.hl7.fhir.instance.model.Organization src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Organization tgt = new org.hl7.fhir.r4.model.Organization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + tgt.addType(convertCodeableConcept(src.getType())); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.instance.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setPartOf(convertReference(src.getPartOf())); + for (org.hl7.fhir.instance.model.Organization.OrganizationContactComponent t : src.getContact()) + tgt.addContact(convertOrganizationContactComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Organization convertOrganization(org.hl7.fhir.r4.model.Organization src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Organization tgt = new org.hl7.fhir.instance.model.Organization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + tgt.setType(convertCodeableConcept(src.getTypeFirstRep())); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.r4.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setPartOf(convertReference(src.getPartOf())); + for (org.hl7.fhir.r4.model.Organization.OrganizationContactComponent t : src.getContact()) + tgt.addContact(convertOrganizationContactComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.instance.model.Organization.OrganizationContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.r4.model.Organization.OrganizationContactComponent(); + copyElement(src, tgt); + tgt.setPurpose(convertCodeableConcept(src.getPurpose())); + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + return tgt; + } + + public org.hl7.fhir.instance.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.r4.model.Organization.OrganizationContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.instance.model.Organization.OrganizationContactComponent(); + copyElement(src, tgt); + tgt.setPurpose(convertCodeableConcept(src.getPurpose())); + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + return tgt; + } + + + public org.hl7.fhir.r4.model.Patient convertPatient(org.hl7.fhir.instance.model.Patient src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Patient tgt = new org.hl7.fhir.r4.model.Patient(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + for (org.hl7.fhir.instance.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + tgt.setDeceased(convertType(src.getDeceased())); + for (org.hl7.fhir.instance.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); + tgt.setMultipleBirth(convertType(src.getMultipleBirth())); + for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + for (org.hl7.fhir.instance.model.Patient.ContactComponent t : src.getContact()) + tgt.addContact(convertContactComponent(t)); + tgt.setAnimal(convertAnimalComponent(src.getAnimal())); + for (org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent t : src.getCommunication()) + tgt.addCommunication(convertPatientCommunicationComponent(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getCareProvider()) + tgt.addGeneralPractitioner(convertReference(t)); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + for (org.hl7.fhir.instance.model.Patient.PatientLinkComponent t : src.getLink()) + tgt.addLink(convertPatientLinkComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Patient convertPatient(org.hl7.fhir.r4.model.Patient src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Patient tgt = new org.hl7.fhir.instance.model.Patient(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + for (org.hl7.fhir.r4.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + tgt.setDeceased(convertType(src.getDeceased())); + for (org.hl7.fhir.r4.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); + tgt.setMultipleBirth(convertType(src.getMultipleBirth())); + for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + for (org.hl7.fhir.r4.model.Patient.ContactComponent t : src.getContact()) + tgt.addContact(convertContactComponent(t)); + tgt.setAnimal(convertAnimalComponent(src.getAnimal())); + for (org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent t : src.getCommunication()) + tgt.addCommunication(convertPatientCommunicationComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getGeneralPractitioner()) + tgt.addCareProvider(convertReference(t)); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + for (org.hl7.fhir.r4.model.Patient.PatientLinkComponent t : src.getLink()) + tgt.addLink(convertPatientLinkComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.instance.model.Patient.ContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Patient.ContactComponent tgt = new org.hl7.fhir.r4.model.Patient.ContactComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getRelationship()) + tgt.addRelationship(convertCodeableConcept(t)); + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setOrganization(convertReference(src.getOrganization())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.r4.model.Patient.ContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Patient.ContactComponent tgt = new org.hl7.fhir.instance.model.Patient.ContactComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRelationship()) + tgt.addRelationship(convertCodeableConcept(t)); + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setAddress(convertAddress(src.getAddress())); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setOrganization(convertReference(src.getOrganization())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.r4.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.instance.model.Patient.AnimalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Patient.AnimalComponent tgt = new org.hl7.fhir.r4.model.Patient.AnimalComponent(); + copyElement(src, tgt); + tgt.setSpecies(convertCodeableConcept(src.getSpecies())); + tgt.setBreed(convertCodeableConcept(src.getBreed())); + tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); + return tgt; + } + + public org.hl7.fhir.instance.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.r4.model.Patient.AnimalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Patient.AnimalComponent tgt = new org.hl7.fhir.instance.model.Patient.AnimalComponent(); + copyElement(src, tgt); + tgt.setSpecies(convertCodeableConcept(src.getSpecies())); + tgt.setBreed(convertCodeableConcept(src.getBreed())); + tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); + return tgt; + } + + public org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent(); + copyElement(src, tgt); + tgt.setLanguage(convertCodeableConcept(src.getLanguage())); + tgt.setPreferred(src.getPreferred()); + return tgt; + } + + public org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.instance.model.Patient.PatientCommunicationComponent(); + copyElement(src, tgt); + tgt.setLanguage(convertCodeableConcept(src.getLanguage())); + tgt.setPreferred(src.getPreferred()); + return tgt; + } + + public org.hl7.fhir.r4.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.instance.model.Patient.PatientLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.r4.model.Patient.PatientLinkComponent(); + copyElement(src, tgt); + tgt.setOther(convertReference(src.getOther())); + tgt.setType(convertLinkType(src.getType())); + return tgt; + } + + public org.hl7.fhir.instance.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.r4.model.Patient.PatientLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.instance.model.Patient.PatientLinkComponent(); + copyElement(src, tgt); + tgt.setOther(convertReference(src.getOther())); + tgt.setType(convertLinkType(src.getType())); + return tgt; + } + + public org.hl7.fhir.r4.model.Patient.LinkType convertLinkType(org.hl7.fhir.instance.model.Patient.LinkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACE: return org.hl7.fhir.r4.model.Patient.LinkType.REPLACEDBY; + case REFER: return org.hl7.fhir.r4.model.Patient.LinkType.REFER; + case SEEALSO: return org.hl7.fhir.r4.model.Patient.LinkType.SEEALSO; + default: return org.hl7.fhir.r4.model.Patient.LinkType.NULL; + } + } + + public org.hl7.fhir.instance.model.Patient.LinkType convertLinkType(org.hl7.fhir.r4.model.Patient.LinkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACEDBY: return org.hl7.fhir.instance.model.Patient.LinkType.REPLACE; + case REPLACES: return org.hl7.fhir.instance.model.Patient.LinkType.REPLACE; + case REFER: return org.hl7.fhir.instance.model.Patient.LinkType.REFER; + case SEEALSO: return org.hl7.fhir.instance.model.Patient.LinkType.SEEALSO; + default: return org.hl7.fhir.instance.model.Patient.LinkType.NULL; + } + } + + + public org.hl7.fhir.r4.model.Person convertPerson(org.hl7.fhir.instance.model.Person src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Person tgt = new org.hl7.fhir.r4.model.Person(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.instance.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.instance.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setPhoto(convertAttachment(src.getPhoto())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setActive(src.getActive()); + for (org.hl7.fhir.instance.model.Person.PersonLinkComponent t : src.getLink()) + tgt.addLink(convertPersonLinkComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Person convertPerson(org.hl7.fhir.r4.model.Person src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Person tgt = new org.hl7.fhir.instance.model.Person(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.r4.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setPhoto(convertAttachment(src.getPhoto())); + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + tgt.setActive(src.getActive()); + for (org.hl7.fhir.r4.model.Person.PersonLinkComponent t : src.getLink()) + tgt.addLink(convertPersonLinkComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.instance.model.Person.PersonLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.r4.model.Person.PersonLinkComponent(); + copyElement(src, tgt); + tgt.setTarget(convertReference(src.getTarget())); + tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); + return tgt; + } + + public org.hl7.fhir.instance.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.r4.model.Person.PersonLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.instance.model.Person.PersonLinkComponent(); + copyElement(src, tgt); + tgt.setTarget(convertReference(src.getTarget())); + tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); + return tgt; + } + + public org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LEVEL1: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL1; + case LEVEL2: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL2; + case LEVEL3: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL3; + case LEVEL4: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL4; + default: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.NULL; + } + } + + public org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LEVEL1: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL1; + case LEVEL2: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL2; + case LEVEL3: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL3; + case LEVEL4: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.LEVEL4; + default: return org.hl7.fhir.instance.model.Person.IdentityAssuranceLevel.NULL; + } + } + + public org.hl7.fhir.r4.model.Practitioner convertPractitioner(org.hl7.fhir.instance.model.Practitioner src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Practitioner tgt = new org.hl7.fhir.r4.model.Practitioner(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + if (src.hasName()) + tgt.addName(convertHumanName(src.getName())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.instance.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); +// for (org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent t : src.getPractitionerRole()) +// tgt.addRole(convertPractitionerPractitionerRoleComponent(t)); + for (org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) + tgt.addQualification(convertPractitionerQualificationComponent(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCommunication()) + tgt.addCommunication(convertCodeableConcept(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Practitioner convertPractitioner(org.hl7.fhir.r4.model.Practitioner src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Practitioner tgt = new org.hl7.fhir.instance.model.Practitioner(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setActive(src.getActive()); + for (org.hl7.fhir.r4.model.HumanName t : src.getName()) + tgt.setName(convertHumanName(t)); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.r4.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); +// for (org.hl7.fhir.r4.model.Practitioner.PractitionerRoleComponent t : src.getRole()) +// tgt.addPractitionerRole(convertPractitionerPractitionerRoleComponent(t)); + for (org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) + tgt.addQualification(convertPractitionerQualificationComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCommunication()) + tgt.addCommunication(convertCodeableConcept(t)); + return tgt; + } + +// public org.hl7.fhir.r4.model.Practitioner.PractitionerRoleComponent convertPractitionerPractitionerRoleComponent(org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.r4.model.Practitioner.PractitionerRoleComponent tgt = new org.hl7.fhir.r4.model.Practitioner.PractitionerRoleComponent(); +// copyElement(src, tgt); +// tgt.setOrganization(convertReference(src.getManagingOrganization())); +// tgt.setCode(convertCodeableConcept(src.getRole())); +// for (org.hl7.fhir.instance.model.CodeableConcept t : src.getSpecialty()) +// tgt.addSpecialty(convertCodeableConcept(t)); +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// for (org.hl7.fhir.instance.model.Reference t : src.getLocation()) +// tgt.addLocation(convertReference(t)); +// for (org.hl7.fhir.instance.model.Reference t : src.getHealthcareService()) +// tgt.addHealthcareService(convertReference(t)); +// return tgt; +// } + +// public org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent convertPractitionerPractitionerRoleComponent(org.hl7.fhir.r4.model.Practitioner.PractitionerRoleComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent tgt = new org.hl7.fhir.instance.model.Practitioner.PractitionerPractitionerRoleComponent(); +// copyElement(src, tgt); +// tgt.setManagingOrganization(convertReference(src.getOrganization())); +// tgt.setRole(convertCodeableConcept(src.getCode())); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) +// tgt.addSpecialty(convertCodeableConcept(t)); +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// for (org.hl7.fhir.r4.model.Reference t : src.getLocation()) +// tgt.addLocation(convertReference(t)); +// for (org.hl7.fhir.r4.model.Reference t : src.getHealthcareService()) +// tgt.addHealthcareService(convertReference(t)); +// return tgt; +// } + + public org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setIssuer(convertReference(src.getIssuer())); + return tgt; + } + + public org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.instance.model.Practitioner.PractitionerQualificationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setIssuer(convertReference(src.getIssuer())); + return tgt; + } + + public org.hl7.fhir.r4.model.Procedure convertProcedure(org.hl7.fhir.instance.model.Procedure src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Procedure tgt = new org.hl7.fhir.r4.model.Procedure(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setStatus(convertProcedureStatus(src.getStatus())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setNotDone(src.getNotPerformed()); +// for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReasonNotPerformed()) + if (src.hasReasonNotPerformed()) + tgt.setNotDoneReason(convertCodeableConcept(src.getReasonNotPerformed().get(0))); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + if (src.hasReasonCodeableConcept()) + tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); + for (org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) + tgt.addPerformer(convertProcedurePerformerComponent(t)); + tgt.setPerformed(convertType(src.getPerformed())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + for (org.hl7.fhir.instance.model.Reference t : src.getReport()) + tgt.addReport(convertReference(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getComplication()) + tgt.addComplication(convertCodeableConcept(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getFollowUp()) + tgt.addFollowUp(convertCodeableConcept(t)); + tgt.addBasedOn(convertReference(src.getRequest())); +// for (org.hl7.fhir.instance.model.Annotation t : src.getNotes()) +// tgt.addNotes(convertAnnotation(t)); + for (org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) + tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Procedure convertProcedure(org.hl7.fhir.r4.model.Procedure src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Procedure tgt = new org.hl7.fhir.instance.model.Procedure(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setStatus(convertProcedureStatus(src.getStatus())); + tgt.setCategory(convertCodeableConcept(src.getCategory())); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setNotPerformed(src.getNotDone()); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotPerformed()) + tgt.addReasonNotPerformed(convertCodeableConcept(src.getNotDoneReason())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + tgt.setReason(convertType(src.getReasonCodeFirstRep())); + for (org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) + tgt.addPerformer(convertProcedurePerformerComponent(t)); + tgt.setPerformed(convertType(src.getPerformed())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setLocation(convertReference(src.getLocation())); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + for (org.hl7.fhir.r4.model.Reference t : src.getReport()) + tgt.addReport(convertReference(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getComplication()) + tgt.addComplication(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getFollowUp()) + tgt.addFollowUp(convertCodeableConcept(t)); + tgt.setRequest(convertReference(src.getBasedOnFirstRep())); +// for (org.hl7.fhir.r4.model.Annotation t : src.getNotes()) +// tgt.addNotes(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) + tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.instance.model.Procedure.ProcedureStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.INPROGRESS; + case ABORTED: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.ABORTED; + case COMPLETED: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.r4.model.Procedure.ProcedureStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.INPROGRESS; + case ABORTED: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.ABORTED; + case COMPLETED: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.Procedure.ProcedureStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent(); + copyElement(src, tgt); + tgt.setActor(convertReference(src.getActor())); + tgt.setRole(convertCodeableConcept(src.getRole())); + return tgt; + } + + public org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.instance.model.Procedure.ProcedurePerformerComponent(); + copyElement(src, tgt); + tgt.setActor(convertReference(src.getActor())); + tgt.setRole(convertCodeableConcept(src.getRole())); + return tgt; + } + + public org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent(); + copyElement(src, tgt); + tgt.setAction(convertCodeableConcept(src.getAction())); + tgt.setManipulated(convertReference(src.getManipulated())); + return tgt; + } + + public org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.instance.model.Procedure.ProcedureFocalDeviceComponent(); + copyElement(src, tgt); + tgt.setAction(convertCodeableConcept(src.getAction())); + tgt.setManipulated(convertReference(src.getManipulated())); + return tgt; + } + + public org.hl7.fhir.r4.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.instance.model.ProcedureRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ProcedureRequest tgt = new org.hl7.fhir.r4.model.ProcedureRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + if (src.hasReasonCodeableConcept()) + tgt.addReasonCode(convertCodeableConcept(src.getReasonCodeableConcept())); + tgt.setOccurrence(convertType(src.getScheduled())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setPerformer(convertReference(src.getPerformer())); + tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); +// for (org.hl7.fhir.instance.model.Annotation t : src.getNotes()) +// tgt.addNotes(convertAnnotation(t)); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + tgt.setAuthoredOn(src.getOrderedOn()); +// tgt.setOrderer(convertReference(src.getOrderer())); + tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); + return tgt; + } + + public org.hl7.fhir.instance.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.r4.model.ProcedureRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ProcedureRequest tgt = new org.hl7.fhir.instance.model.ProcedureRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + tgt.setReason(convertType(src.getReasonCodeFirstRep())); + tgt.setScheduled(convertType(src.getOccurrence())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setPerformer(convertReference(src.getPerformer())); + tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); +// for (org.hl7.fhir.r4.model.Annotation t : src.getNotes()) +// tgt.addNotes(convertAnnotation(t)); + tgt.setAsNeeded(convertType(src.getAsNeeded())); + tgt.setOrderedOn(src.getAuthoredOn()); +// tgt.setOrderer(convertReference(src.getOrderer())); + tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); + return tgt; + } + + public org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; + case DRAFT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; + case REQUESTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case RECEIVED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case ACCEPTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case INPROGRESS: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; +// case REJECTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.REJECTED; + case ABORTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { +// case PROPOSED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.PROPOSED; + case DRAFT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; +// case REQUESTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.REQUESTED; +// case RECEIVED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.RECEIVED; +// case ACCEPTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.ACCEPTED; + case ACTIVE: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; + case SUSPENDED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; +// case REJECTED: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.REJECTED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.ABORTED; + default: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.URGENT; + case STAT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.STAT; + case ASAP: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ASAP; + default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.NULL; + } + } + + public org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.URGENT; + case STAT: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.STAT; + case ASAP: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.ASAP; + default: return org.hl7.fhir.instance.model.ProcedureRequest.ProcedureRequestPriority.NULL; + } + } + + + public org.hl7.fhir.r4.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.instance.model.ProcessRequest.ActionList src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CANCEL: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.CANCEL; + case POLL: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.POLL; + case REPROCESS: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.REPROCESS; + case STATUS: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.STATUS; + default: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.NULL; + } + } + + public org.hl7.fhir.instance.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.r4.model.ProcessRequest.ActionList src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CANCEL: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.CANCEL; + case POLL: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.POLL; + case REPROCESS: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.REPROCESS; + case STATUS: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.STATUS; + default: return org.hl7.fhir.instance.model.ProcessRequest.ActionList.NULL; + } + } + + public org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent(); + copyElement(src, tgt); + tgt.setSequenceLinkId(src.getSequenceLinkId()); + return tgt; + } + + public org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.instance.model.ProcessRequest.ItemsComponent(); + copyElement(src, tgt); + tgt.setSequenceLinkId(src.getSequenceLinkId()); + return tgt; + } + + public org.hl7.fhir.r4.model.Provenance convertProvenance(org.hl7.fhir.instance.model.Provenance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Provenance tgt = new org.hl7.fhir.r4.model.Provenance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Reference t : src.getTarget()) + tgt.addTarget(convertReference(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setRecorded(src.getRecorded()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getReason()) + for (org.hl7.fhir.instance.model.Coding tc : t.getCoding()) + tgt.addReason(convertCoding(tc)); + for (org.hl7.fhir.instance.model.Coding t : src.getActivity().getCoding()) + tgt.setActivity(convertCoding(t)); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.instance.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + for (org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) + tgt.addAgent(convertProvenanceAgentComponent(t)); + for (org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) + tgt.addEntity(convertProvenanceEntityComponent(t)); + for (org.hl7.fhir.instance.model.Signature t : src.getSignature()) + tgt.addSignature(convertSignature(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Provenance convertProvenance(org.hl7.fhir.r4.model.Provenance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Provenance tgt = new org.hl7.fhir.instance.model.Provenance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Reference t : src.getTarget()) + tgt.addTarget(convertReference(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setRecorded(src.getRecorded()); + for (org.hl7.fhir.r4.model.Coding t : src.getReason()) + tgt.addReason().addCoding(convertCoding(t)); + tgt.setActivity(new org.hl7.fhir.instance.model.CodeableConcept().addCoding(convertCoding(src.getActivity()))); + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.r4.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + for (org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) + tgt.addAgent(convertProvenanceAgentComponent(t)); + for (org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) + tgt.addEntity(convertProvenanceEntityComponent(t)); + for (org.hl7.fhir.r4.model.Signature t : src.getSignature()) + tgt.addSignature(convertSignature(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent(); + copyElement(src, tgt); +// tgt.setRole(convertCoding(src.getRole())); + tgt.setWho(convertReference(src.getActor())); + return tgt; + } + + public org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.instance.model.Provenance.ProvenanceAgentComponent(); + copyElement(src, tgt); +// tgt.setRole(convertCoding(src.getRole())); + if (src.hasWhoReference()) + tgt.setActor(convertReference(src.getWhoReference())); + return tgt; + } + + public org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent(); + copyElement(src, tgt); + tgt.setRole(convertProvenanceEntityRole(src.getRole())); + if (src.hasReference()) + tgt.setWhat(new org.hl7.fhir.r4.model.Reference().setReference(src.getReference())); + tgt.addAgent(convertProvenanceAgentComponent(src.getAgent())); + return tgt; + } + + public org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.instance.model.Provenance.ProvenanceEntityComponent(); + copyElement(src, tgt); + tgt.setRole(convertProvenanceEntityRole(src.getRole())); + if (src.hasWhatReference() && src.getWhatReference().hasReference()) + tgt.setReference(src.getWhatReference().getReference()); + for (org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) + tgt.setAgent(convertProvenanceAgentComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DERIVATION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.DERIVATION; + case REVISION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.REVISION; + case QUOTATION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.QUOTATION; + case SOURCE: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.SOURCE; + default: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.NULL; + } + } + + public org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DERIVATION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.DERIVATION; + case REVISION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.REVISION; + case QUOTATION: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.QUOTATION; + case SOURCE: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.SOURCE; + default: return org.hl7.fhir.instance.model.Provenance.ProvenanceEntityRole.NULL; + } + } + + public org.hl7.fhir.r4.model.Questionnaire convertQuestionnaire(org.hl7.fhir.instance.model.Questionnaire src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Questionnaire tgt = new org.hl7.fhir.r4.model.Questionnaire(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addContact(convertQuestionnaireContactComponent(t)); + org.hl7.fhir.instance.model.Questionnaire.GroupComponent root = src.getGroup(); + tgt.setTitle(root.getTitle()); + for (org.hl7.fhir.instance.model.Coding t : root.getConcept()) + tgt.addCode(convertCoding(t)); + for (org.hl7.fhir.instance.model.CodeType t : src.getSubjectType()) + tgt.addSubjectType(t.getValue()); + tgt.addItem(convertQuestionnaireGroupComponent(root)); + return tgt; + } + + public org.hl7.fhir.instance.model.Questionnaire convertQuestionnaire(org.hl7.fhir.r4.model.Questionnaire src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Questionnaire tgt = new org.hl7.fhir.instance.model.Questionnaire(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (ContactDetail t : src.getContact()) + for (org.hl7.fhir.r4.model.ContactPoint t1 : t.getTelecom()) + tgt.addTelecom(convertContactPoint(t1)); + org.hl7.fhir.instance.model.Questionnaire.GroupComponent root = tgt.getGroup(); + root.setTitle(src.getTitle()); + for (org.hl7.fhir.r4.model.Coding t : src.getCode()) { + root.addConcept(convertCoding(t)); + } + for (org.hl7.fhir.r4.model.CodeType t : src.getSubjectType()) + tgt.addSubjectType(t.getValue()); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + if (t.getType() == org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.GROUP) + root.addGroup(convertQuestionnaireGroupComponent(t)); + else + root.addQuestion(convertQuestionnaireQuestionComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ContactDetail convertQuestionnaireContactComponent(org.hl7.fhir.instance.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.addTelecom(convertContactPoint(src)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Enumerations.PublicationStatus convertQuestionnaireStatus(org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.DRAFT; + case PUBLISHED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.RETIRED; + default: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.NULL; + } + } + + private static org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus convertQuestionnaireStatus(org.hl7.fhir.r4.model.Enumerations.PublicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.PUBLISHED; + case RETIRED: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.RETIRED; + default: return org.hl7.fhir.instance.model.Questionnaire.QuestionnaireStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireQuestionComponent(org.hl7.fhir.instance.model.Questionnaire.QuestionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.instance.model.Coding t : src.getConcept()) + tgt.addCode(convertCoding(t)); + tgt.setText(src.getText()); + tgt.setType(convertQuestionnaireQuestionType(src.getType())); + tgt.setRequired(src.getRequired()); + tgt.setRepeats(src.getRepeats()); + tgt.setOptions(convertReference(src.getOptions())); + for (org.hl7.fhir.instance.model.Coding t : src.getOption()) + tgt.addOption().setValue(convertCoding(t)); + for (org.hl7.fhir.instance.model.Questionnaire.GroupComponent t : src.getGroup()) + tgt.addItem(convertQuestionnaireGroupComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireGroupComponent(org.hl7.fhir.instance.model.Questionnaire.GroupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.instance.model.Coding t : src.getConcept()) + tgt.addCode(convertCoding(t)); + tgt.setText(src.getText()); + tgt.setType(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.GROUP); + tgt.setRequired(src.getRequired()); + tgt.setRepeats(src.getRepeats()); + for (org.hl7.fhir.instance.model.Questionnaire.GroupComponent t : src.getGroup()) + tgt.addItem(convertQuestionnaireGroupComponent(t)); + for (org.hl7.fhir.instance.model.Questionnaire.QuestionComponent t : src.getQuestion()) + tgt.addItem(convertQuestionnaireQuestionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Questionnaire.GroupComponent convertQuestionnaireGroupComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Questionnaire.GroupComponent tgt = new org.hl7.fhir.instance.model.Questionnaire.GroupComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.r4.model.Coding t : src.getCode()) + tgt.addConcept(convertCoding(t)); + tgt.setText(src.getText()); + tgt.setRequired(src.getRequired()); + tgt.setRepeats(src.getRepeats()); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + if (t.getType() == org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.GROUP) + tgt.addGroup(convertQuestionnaireGroupComponent(t)); + else + tgt.addQuestion(convertQuestionnaireQuestionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Questionnaire.QuestionComponent convertQuestionnaireQuestionComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Questionnaire.QuestionComponent tgt = new org.hl7.fhir.instance.model.Questionnaire.QuestionComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.r4.model.Coding t : src.getCode()) + tgt.addConcept(convertCoding(t)); + tgt.setText(src.getText()); + tgt.setType(convertQuestionnaireItemType(src.getType())); + tgt.setRequired(src.getRequired()); + tgt.setRepeats(src.getRepeats()); + tgt.setOptions(convertReference(src.getOptions())); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) + if (t.hasValueCoding()) + try { + tgt.addOption(convertCoding(t.getValueCoding())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addGroup(convertQuestionnaireGroupComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType convertQuestionnaireQuestionType(org.hl7.fhir.instance.model.Questionnaire.AnswerFormat src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BOOLEAN: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.BOOLEAN; + case DECIMAL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DECIMAL; + case INTEGER: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.INTEGER; + case DATE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATE; + case DATETIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATETIME; + case INSTANT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATETIME; + case TIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TIME; + case STRING: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.STRING; + case TEXT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TEXT; + case URL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.URL; + case CHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.CHOICE; + case OPENCHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; + case ATTACHMENT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; + case REFERENCE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.REFERENCE; + case QUANTITY: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.QUANTITY; + default: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.NULL; + } + } + + public org.hl7.fhir.instance.model.Questionnaire.AnswerFormat convertQuestionnaireItemType(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BOOLEAN: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.BOOLEAN; + case DECIMAL: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DECIMAL; + case INTEGER: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.INTEGER; + case DATE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DATE; + case DATETIME: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.DATETIME; + case TIME: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.TIME; + case STRING: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.STRING; + case TEXT: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.TEXT; + case URL: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.URL; + case CHOICE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.CHOICE; + case OPENCHOICE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.OPENCHOICE; + case ATTACHMENT: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.ATTACHMENT; + case REFERENCE: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.REFERENCE; + case QUANTITY: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.QUANTITY; + default: return org.hl7.fhir.instance.model.Questionnaire.AnswerFormat.NULL; + } + } + + public org.hl7.fhir.r4.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.instance.model.QuestionnaireResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.QuestionnaireResponse tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); + tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setAuthored(src.getAuthored()); + tgt.setSource(convertReference(src.getSource())); + tgt.setContext(convertReference(src.getEncounter())); + if (src.hasGroup()) + tgt.addItem(convertQuestionnaireResponseGroupComponent(src.getGroup())); + return tgt; + } + + public org.hl7.fhir.instance.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.r4.model.QuestionnaireResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.QuestionnaireResponse tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); + tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setAuthor(convertReference(src.getAuthor())); + tgt.setAuthored(src.getAuthored()); + tgt.setSource(convertReference(src.getSource())); + tgt.setEncounter(convertReference(src.getContext())); + + if (src.getItem().size() != 1) + throw new FHIRException("multiple root items not supported"); // though we could define a placeholder group? + + tgt.setGroup(convertQuestionnaireItemToGroup(src.getItem().get(0))); + return tgt; + } + + + public org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; + case AMENDED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; + default: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; + case AMENDED: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; + default: return org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseGroupComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + tgt.setText(src.getText()); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent t : src.getGroup()) + tgt.addItem(convertQuestionnaireResponseGroupComponent(t)); + for (org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent t : src.getQuestion()) + tgt.addItem(convertQuestionnaireResponseQuestionComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseQuestionComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + tgt.setText(src.getText()); + for (org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent t : src.getAnswer()) + tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent convertQuestionnaireItemToGroup(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + tgt.setText(src.getText()); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + if (t.hasAnswer()) + tgt.addQuestion(convertQuestionnaireItemToQuestion(t)); + else + tgt.addGroup(convertQuestionnaireItemToGroup(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent convertQuestionnaireItemToQuestion(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionComponent(); + copyElement(src, tgt); + tgt.setLinkId(src.getLinkId()); + tgt.setText(src.getText()); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) + tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + for (org.hl7.fhir.instance.model.QuestionnaireResponse.GroupComponent t : src.getGroup()) + tgt.addItem(convertQuestionnaireResponseGroupComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent tgt = new org.hl7.fhir.instance.model.QuestionnaireResponse.QuestionAnswerComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addGroup(convertQuestionnaireItemToGroup(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ProcedureRequest convertReferralRequest(org.hl7.fhir.instance.model.ReferralRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ProcedureRequest tgt = new org.hl7.fhir.r4.model.ProcedureRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setStatus(convertReferralStatus(src.getStatus())); + tgt.setCode(convertCodeableConcept(src.getType())); + tgt.setPriority(convertReferralPriorityCode(src.getPriority())); + tgt.setSubject(convertReference(src.getPatient())); + tgt.setOccurrence(convertPeriod(src.getFulfillmentTime())); + tgt.getRequester().setAgent(convertReference(src.getRequester())); + tgt.addReasonCode(convertCodeableConcept(src.getReason())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInfo(convertReference(t)); + return tgt; + } + + private org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority convertReferralPriorityCode(CodeableConcept priority) { + for (org.hl7.fhir.instance.model.Coding c : priority.getCoding()) { + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "routine".equals(c.getCode())) + return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "urgent".equals(c.getCode())) + return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.URGENT; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "stat".equals(c.getCode())) + return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.STAT; + if ("http://hl7.org/fhir/diagnostic-order-priority".equals(c.getSystem()) && "asap".equals(c.getCode())) + return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ASAP; + } + return null; + } + + + public org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus convertReferralStatus(org.hl7.fhir.instance.model.ReferralRequest.ReferralStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; + case REQUESTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.CANCELLED; + case ACCEPTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case REJECTED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; + case COMPLETED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; + default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.instance.model.RelatedPerson src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.RelatedPerson tgt = new org.hl7.fhir.r4.model.RelatedPerson(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + tgt.addName(convertHumanName(src.getName())); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.instance.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + for (org.hl7.fhir.instance.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.instance.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.r4.model.RelatedPerson src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.RelatedPerson tgt = new org.hl7.fhir.instance.model.RelatedPerson(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + if (!src.getName().isEmpty()) + tgt.setName(convertHumanName(src.getName().get(0))); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + tgt.setGender(convertAdministrativeGender(src.getGender())); + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.r4.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public org.hl7.fhir.r4.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.instance.model.RiskAssessment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.RiskAssessment tgt = new org.hl7.fhir.r4.model.RiskAssessment(); + copyDomainResource(src, tgt); + tgt.setSubject(convertReference(src.getSubject())); +// tgt.setDate(src.getDate()); + tgt.setCondition(convertReference(src.getCondition())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setPerformer(convertReference(src.getPerformer())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + for (org.hl7.fhir.instance.model.Reference t : src.getBasis()) + tgt.addBasis(convertReference(t)); + for (org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) + tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); + tgt.setMitigation(src.getMitigation()); + return tgt; + } + + public org.hl7.fhir.instance.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.r4.model.RiskAssessment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.RiskAssessment tgt = new org.hl7.fhir.instance.model.RiskAssessment(); + copyDomainResource(src, tgt); + tgt.setSubject(convertReference(src.getSubject())); +// tgt.setDateElement(src.getOccurrenceDateTimeType()); + tgt.setCondition(convertReference(src.getCondition())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setPerformer(convertReference(src.getPerformer())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setMethod(convertCodeableConcept(src.getMethod())); + for (org.hl7.fhir.r4.model.Reference t : src.getBasis()) + tgt.addBasis(convertReference(t)); + for (org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) + tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); + tgt.setMitigation(src.getMitigation()); + return tgt; + } + + public org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent(); + copyElement(src, tgt); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + tgt.setProbability(convertType(src.getProbability())); + tgt.setRelativeRisk(src.getRelativeRisk()); + tgt.setWhen(convertType(src.getWhen())); + tgt.setRationale(src.getRationale()); + return tgt; + } + + public org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.instance.model.RiskAssessment.RiskAssessmentPredictionComponent(); + copyElement(src, tgt); + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + tgt.setProbability(convertType(src.getProbability())); + tgt.setRelativeRisk(src.getRelativeRisk()); + tgt.setWhen(convertType(src.getWhen())); + tgt.setRationale(src.getRationale()); + return tgt; + } + + public org.hl7.fhir.r4.model.Schedule convertSchedule(org.hl7.fhir.instance.model.Schedule src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Schedule tgt = new org.hl7.fhir.r4.model.Schedule(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getType()) + tgt.addServiceType(convertCodeableConcept(t)); + tgt.addActor(convertReference(src.getActor())); + tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); + tgt.setComment(src.getComment()); + return tgt; + } + + public org.hl7.fhir.instance.model.Schedule convertSchedule(org.hl7.fhir.r4.model.Schedule src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Schedule tgt = new org.hl7.fhir.instance.model.Schedule(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) + tgt.addType(convertCodeableConcept(t)); + tgt.setActor(convertReference(src.getActorFirstRep())); + tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); + tgt.setComment(src.getComment()); + return tgt; + } + + public org.hl7.fhir.r4.model.SearchParameter convertSearchParameter(org.hl7.fhir.instance.model.SearchParameter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.SearchParameter tgt = new org.hl7.fhir.r4.model.SearchParameter(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent t : src.getContact()) + tgt.addContact(convertSearchParameterContactComponent(t)); + tgt.setPurpose(src.getRequirements()); + tgt.setCode(src.getCode()); + tgt.addBase(src.getBase()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDescription(src.getDescription()); + tgt.setExpression(ToolingExtensions.readStringExtension(src, ToolingExtensions.EXT_EXPRESSION)); + tgt.setXpath(src.getXpath()); + tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); + for (org.hl7.fhir.instance.model.CodeType t : src.getTarget()) + tgt.addTarget(t.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.SearchParameter convertSearchParameter(org.hl7.fhir.r4.model.SearchParameter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SearchParameter tgt = new org.hl7.fhir.instance.model.SearchParameter(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertSearchParameterContactComponent(t)); + tgt.setRequirements(src.getPurpose()); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.r4.model.CodeType t : src.getBase()) + tgt.setBase(t.asStringValue()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDescription(src.getDescription()); + org.hl7.fhir.instance.utils.ToolingExtensions.setStringExtension(tgt, ToolingExtensions.EXT_EXPRESSION, src.getExpression()); + tgt.setXpath(src.getXpath()); + tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); + for (org.hl7.fhir.r4.model.CodeType t : src.getTarget()) + tgt.addTarget(t.getValue()); + return tgt; + } + + public org.hl7.fhir.r4.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.instance.model.SearchParameter.XPathUsageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NORMAL: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NORMAL; + case PHONETIC: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.PHONETIC; + case NEARBY: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NEARBY; + case DISTANCE: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.DISTANCE; + case OTHER: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.OTHER; + default: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NULL; + } + } + + public org.hl7.fhir.instance.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.r4.model.SearchParameter.XPathUsageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NORMAL: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NORMAL; + case PHONETIC: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.PHONETIC; + case NEARBY: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NEARBY; + case DISTANCE: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.DISTANCE; + case OTHER: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.OTHER; + default: return org.hl7.fhir.instance.model.SearchParameter.XPathUsageType.NULL; + } + } + + public org.hl7.fhir.r4.model.ContactDetail convertSearchParameterContactComponent(org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent convertSearchParameterContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent tgt = new org.hl7.fhir.instance.model.SearchParameter.SearchParameterContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Slot convertSlot(org.hl7.fhir.instance.model.Slot src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Slot tgt = new org.hl7.fhir.r4.model.Slot(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasType()) + tgt.addServiceType(convertCodeableConcept(src.getType())); + tgt.setSchedule(convertReference(src.getSchedule())); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + tgt.setOverbooked(src.getOverbooked()); + tgt.setComment(src.getComment()); + return tgt; + } + + public org.hl7.fhir.instance.model.Slot convertSlot(org.hl7.fhir.r4.model.Slot src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Slot tgt = new org.hl7.fhir.instance.model.Slot(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) + tgt.setType(convertCodeableConcept(t)); + tgt.setSchedule(convertReference(src.getSchedule())); + tgt.setStart(src.getStart()); + tgt.setEnd(src.getEnd()); + tgt.setOverbooked(src.getOverbooked()); + tgt.setComment(src.getComment()); + return tgt; + } + + public org.hl7.fhir.r4.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.instance.model.Slot.SlotStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BUSY: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSY; + case FREE: return org.hl7.fhir.r4.model.Slot.SlotStatus.FREE; + case BUSYUNAVAILABLE: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSYUNAVAILABLE; + case BUSYTENTATIVE: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSYTENTATIVE; + default: return org.hl7.fhir.r4.model.Slot.SlotStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.r4.model.Slot.SlotStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BUSY: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSY; + case FREE: return org.hl7.fhir.instance.model.Slot.SlotStatus.FREE; + case BUSYUNAVAILABLE: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSYUNAVAILABLE; + case BUSYTENTATIVE: return org.hl7.fhir.instance.model.Slot.SlotStatus.BUSYTENTATIVE; + default: return org.hl7.fhir.instance.model.Slot.SlotStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.instance.model.StructureDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setTitle(src.getDisplay()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent t : src.getContact()) + tgt.addContact(convertStructureDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setPurpose(src.getRequirements()); + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.instance.model.Coding t : src.getCode()) + tgt.addKeyword(convertCoding(t)); + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertStructureDefinitionMappingComponent(t)); + tgt.setKind(convertStructureDefinitionKind(src.getKind(), tgt.getId())); + tgt.setAbstract(src.getAbstract()); + tgt.setContextType(convertExtensionContext(src.getContextType())); + for (org.hl7.fhir.instance.model.StringType t : src.getContext()) + tgt.addContext(t.getValue()); + if (src.hasConstrainedType()) + tgt.setType(src.getConstrainedType()); + else if (src.getSnapshot().hasElement()) + tgt.setType(src.getSnapshot().getElement().get(0).getPath()); + else if (src.getDifferential().hasElement() && !src.getDifferential().getElement().get(0).getPath().contains(".")) + tgt.setType(src.getDifferential().getElement().get(0).getPath()); + else + tgt.setType(src.getDifferential().getElement().get(0).getPath().substring(0, src.getDifferential().getElement().get(0).getPath().indexOf("."))); + tgt.setBaseDefinition(src.getBase()); + tgt.setDerivation(src.hasConstrainedType() ? org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.CONSTRAINT : org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION); + tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); + tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); + if (tgt.hasSnapshot()) + tgt.getSnapshot().getElementFirstRep().getType().clear(); + if (tgt.hasDifferential()) + tgt.getDifferential().getElementFirstRep().getType().clear(); + if (tgt.getKind() == StructureDefinitionKind.PRIMITIVETYPE && !tgt.getType().equals(tgt.getId())) { + tgt.setDerivation(TypeDerivationRule.SPECIALIZATION); + tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/"+tgt.getType()); +// for (ElementDefinition ed : tgt.getSnapshot().getElement()) { +// ed.setPath(ed.getPath().replace(tgt.getType()+".", tgt.getId()+".")); +// } +// for (ElementDefinition ed : tgt.getDifferential().getElement()) { +// ed.setPath(ed.getPath().replace(tgt.getType()+".", tgt.getId()+".")); +// } + tgt.setType(tgt.getId()); + } + return tgt; + } + + public org.hl7.fhir.instance.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.r4.model.StructureDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.StructureDefinition tgt = new org.hl7.fhir.instance.model.StructureDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setDisplay(src.getTitle()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertStructureDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setRequirements(src.getPurpose()); + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.Coding t : src.getKeyword()) + tgt.addCode(convertCoding(t)); + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertStructureDefinitionMappingComponent(t)); + tgt.setKind(convertStructureDefinitionKind(src.getKind())); + tgt.setAbstract(src.getAbstract()); + tgt.setContextType(convertExtensionContext(src.getContextType())); + for (org.hl7.fhir.r4.model.StringType t : src.getContext()) + tgt.addContext(t.getValue()); + tgt.setConstrainedType(src.getType()); + tgt.setBase(src.getBaseDefinition()); + tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); + tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); + if (tgt.hasBase()) { + if (tgt.hasDifferential()) + tgt.getDifferential().getElement().get(0).addType().setCode(tail(tgt.getBase())); + if (tgt.hasSnapshot()) + tgt.getSnapshot().getElement().get(0).addType().setCode(tail(tgt.getBase())); + } + return tgt; + } + + private String tail(String base) { + return base.substring(base.lastIndexOf("/")+1); + } + + public org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind src, String dtName) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DATATYPE: + if (Utilities.existsInList(dtName, "boolean", "integer", "decimal", "base64Binary", "instant", "string", "uri", "date", "dateTime", "time", "code", "oid", "uuid", "id", "unsignedInt", "positiveInt", "markdown", "xhtml")) + return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.PRIMITIVETYPE; + else + return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; + case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.RESOURCE; + case LOGICAL: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.LOGICAL; + default: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.NULL; + } + } + + public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRIMITIVETYPE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.DATATYPE; + case COMPLEXTYPE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.DATATYPE; + case RESOURCE: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.RESOURCE; + case LOGICAL: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.LOGICAL; + default: return org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionKind.NULL; + } + } + + public org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.RESOURCE; + case DATATYPE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.DATATYPE; + case EXTENSION: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.EXTENSION; + default: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.NULL; + } + } + + public org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESOURCE: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.RESOURCE; + case DATATYPE: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.DATATYPE; + case EXTENSION: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.EXTENSION; + default: return org.hl7.fhir.instance.model.StructureDefinition.ExtensionContext.NULL; + } + } + + public org.hl7.fhir.r4.model.ContactDetail convertStructureDefinitionContactComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent convertStructureDefinitionContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setUri(src.getUri()); + tgt.setName(src.getName()); + tgt.setComment(src.getComments()); + return tgt; + } + + public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + tgt.setUri(src.getUri()); + tgt.setName(src.getName()); + tgt.setComments(src.getComment()); + return tgt; + } + + public org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent(); + copyElement(src, tgt); + List slicePaths = new ArrayList(); + for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { + if (t.hasSlicing()) + slicePaths.add(t.getPath()); + tgt.addElement(convertElementDefinition(t, slicePaths)); + } + return tgt; + } + + public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionSnapshotComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent(); + copyElement(src, tgt); + List slicePaths = new ArrayList(); + for (org.hl7.fhir.instance.model.ElementDefinition t : src.getElement()) { + if (t.hasSlicing()) + slicePaths.add(t.getPath()); + tgt.addElement(convertElementDefinition(t, slicePaths)); + } + return tgt; + } + + public org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.instance.model.StructureDefinition.StructureDefinitionDifferentialComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Subscription convertSubscription(org.hl7.fhir.instance.model.Subscription src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Subscription tgt = new org.hl7.fhir.r4.model.Subscription(); + copyDomainResource(src, tgt); + tgt.setCriteria(src.getCriteria()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + tgt.setReason(src.getReason()); + tgt.setStatus(convertSubscriptionStatus(src.getStatus())); + tgt.setError(src.getError()); + tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); + tgt.setEnd(src.getEnd()); + for (org.hl7.fhir.instance.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Subscription convertSubscription(org.hl7.fhir.r4.model.Subscription src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Subscription tgt = new org.hl7.fhir.instance.model.Subscription(); + copyDomainResource(src, tgt); + tgt.setCriteria(src.getCriteria()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + tgt.setReason(src.getReason()); + tgt.setStatus(convertSubscriptionStatus(src.getStatus())); + tgt.setError(src.getError()); + tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); + tgt.setEnd(src.getEnd()); + for (org.hl7.fhir.r4.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.instance.model.Subscription.SubscriptionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUESTED: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.REQUESTED; + case ACTIVE: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.ACTIVE; + case ERROR: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.ERROR; + case OFF: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.OFF; + default: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.r4.model.Subscription.SubscriptionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUESTED: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.REQUESTED; + case ACTIVE: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.ACTIVE; + case ERROR: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.ERROR; + case OFF: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.OFF; + default: return org.hl7.fhir.instance.model.Subscription.SubscriptionStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent(); + copyElement(src, tgt); + tgt.setType(convertSubscriptionChannelType(src.getType())); + tgt.setEndpoint(src.getEndpoint()); + tgt.setPayload(src.getPayload()); + tgt.addHeader(src.getHeader()); + return tgt; + } + + public org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.instance.model.Subscription.SubscriptionChannelComponent(); + copyElement(src, tgt); + tgt.setType(convertSubscriptionChannelType(src.getType())); + tgt.setEndpoint(src.getEndpoint()); + tgt.setPayload(src.getPayload()); + if (src.hasHeader()) + tgt.setHeaderElement(convertString(src.getHeader().get(0))); + return tgt; + } + + public org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESTHOOK: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.RESTHOOK; + case WEBSOCKET: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.WEBSOCKET; + case EMAIL: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.EMAIL; + case SMS: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.SMS; + case MESSAGE: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.MESSAGE; + default: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.NULL; + } + } + + public org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESTHOOK: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.RESTHOOK; + case WEBSOCKET: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.WEBSOCKET; + case EMAIL: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.EMAIL; + case SMS: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.SMS; + case MESSAGE: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.MESSAGE; + default: return org.hl7.fhir.instance.model.Subscription.SubscriptionChannelType.NULL; + } + } + + public org.hl7.fhir.r4.model.Substance convertSubstance(org.hl7.fhir.instance.model.Substance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Substance tgt = new org.hl7.fhir.r4.model.Substance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent t : src.getInstance()) + tgt.addInstance(convertSubstanceInstanceComponent(t)); + for (org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) + tgt.addIngredient(convertSubstanceIngredientComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.Substance convertSubstance(org.hl7.fhir.r4.model.Substance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Substance tgt = new org.hl7.fhir.instance.model.Substance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent t : src.getInstance()) + tgt.addInstance(convertSubstanceInstanceComponent(t)); + for (org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) + tgt.addIngredient(convertSubstanceIngredientComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setExpiry(src.getExpiry()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + return tgt; + } + + public org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.instance.model.Substance.SubstanceInstanceComponent(); + copyElement(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setExpiry(src.getExpiry()); + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + return tgt; + } + + public org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent(); + copyElement(src, tgt); + tgt.setQuantity(convertRatio(src.getQuantity())); + tgt.setSubstance(convertReference(src.getSubstance())); + return tgt; + } + + public org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.instance.model.Substance.SubstanceIngredientComponent(); + copyElement(src, tgt); + tgt.setQuantity(convertRatio(src.getQuantity())); +// tgt.setSubstance(convertReference(src.getSubstance())); + return tgt; + } + + public org.hl7.fhir.r4.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.instance.model.SupplyDelivery src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.SupplyDelivery tgt = new org.hl7.fhir.r4.model.SupplyDelivery(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setType(convertCodeableConcept(src.getType())); +// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); +// tgt.setSuppliedItem(convertReference(src.getSuppliedItem())); + tgt.setSupplier(convertReference(src.getSupplier())); +// tgt.setWhenPrepared(convertPeriod(src.getWhenPrepared())); +// tgt.setTime(src.getTime()); + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.instance.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.r4.model.SupplyDelivery src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SupplyDelivery tgt = new org.hl7.fhir.instance.model.SupplyDelivery(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setType(convertCodeableConcept(src.getType())); +// tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); +// tgt.setSuppliedItem(convertReference(src.getSuppliedItem())); + tgt.setSupplier(convertReference(src.getSupplier())); +// tgt.setWhenPrepared(convertPeriod(src.getWhenPrepared())); +// tgt.setTime(src.getTime()); + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.r4.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; + case ABANDONED: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; + default: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; + case ABANDONED: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; + default: return org.hl7.fhir.instance.model.SupplyDelivery.SupplyDeliveryStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.instance.model.SupplyRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.SupplyRequest tgt = new org.hl7.fhir.r4.model.SupplyRequest(); + copyDomainResource(src, tgt); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setSource(convertReference(src.getSource())); +// if (src.hasDate()) +// tgt.setDate(src.getDate()); +// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); +// tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); +// tgt.setKind(convertCodeableConcept(src.getKind())); +// tgt.getOrderedItem().setItem(convertReference(src.getOrderedItem())); +// for (org.hl7.fhir.instance.model.Reference t : src.getSupplier()) +// tgt.addSupplier(convertReference(t)); +// tgt.setReason(convertType(src.getReason())); +// tgt.setWhen(convertSupplyRequestWhenComponent(src.getWhen())); + return tgt; + } + + public org.hl7.fhir.instance.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.r4.model.SupplyRequest src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.SupplyRequest tgt = new org.hl7.fhir.instance.model.SupplyRequest(); +// copyDomainResource(src, tgt); +// tgt.setPatient(convertReference(src.getPatient())); +// tgt.setSource(convertReference(src.getSource())); +// if (src.hasDate()) +// tgt.setDate(src.getDate()); +// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); +// tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); +// tgt.setKind(convertCodeableConcept(src.getKind())); +// tgt.setOrderedItem(convertReference(src.getOrderedItem().getItemReference())); +// for (org.hl7.fhir.r4.model.Reference t : src.getSupplier()) +// tgt.addSupplier(convertReference(t)); +// tgt.setReason(convertType(src.getReason())); +// tgt.setWhen(convertSupplyRequestWhenComponent(src.getWhen())); + return tgt; + } + + public org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUESTED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.COMPLETED; + case FAILED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.CANCELLED; + case CANCELLED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.CANCELLED; + default: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.REQUESTED; + case COMPLETED: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.CANCELLED; + default: return org.hl7.fhir.instance.model.SupplyRequest.SupplyRequestStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.TestScript convertTestScript(org.hl7.fhir.instance.model.TestScript src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript tgt = new org.hl7.fhir.r4.model.TestScript(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent t : src.getContact()) + tgt.addContact(convertTestScriptContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setPurpose(src.getRequirements()); + tgt.setCopyright(src.getCopyright()); + tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); + for (org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) + tgt.addFixture(convertTestScriptFixtureComponent(t)); + for (org.hl7.fhir.instance.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent t : src.getVariable()) + tgt.addVariable(convertTestScriptVariableComponent(t)); + tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); + for (org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent t : src.getTest()) + tgt.addTest(convertTestScriptTestComponent(t)); + tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript convertTestScript(org.hl7.fhir.r4.model.TestScript src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript tgt = new org.hl7.fhir.instance.model.TestScript(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertTestScriptContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setRequirements(src.getPurpose()); + tgt.setCopyright(src.getCopyright()); + tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); + for (org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) + tgt.addFixture(convertTestScriptFixtureComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent t : src.getVariable()) + tgt.addVariable(convertTestScriptVariableComponent(t)); + tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); + for (org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent t : src.getTest()) + tgt.addTest(convertTestScriptTestComponent(t)); + tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); + return tgt; + } + + public org.hl7.fhir.r4.model.ContactDetail convertTestScriptContactComponent(org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent convertTestScriptContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) + tgt.addLink(convertTestScriptMetadataLinkComponent(t)); + for (org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) + tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) + tgt.addLink(convertTestScriptMetadataLinkComponent(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) + tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataLinkComponent(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setDescription(src.getDescription()); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent(); + copyElement(src, tgt); + tgt.setRequired(src.getRequired()); + tgt.setValidated(src.getValidated()); + tgt.setDescription(src.getDescription()); + tgt.setDestination(src.getDestination()); + for (org.hl7.fhir.instance.model.UriType t : src.getLink()) + tgt.addLink(t.getValue()); + tgt.setCapabilities(convertReference(src.getConformance())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptMetadataCapabilityComponent(); + copyElement(src, tgt); + tgt.setRequired(src.getRequired()); + tgt.setValidated(src.getValidated()); + tgt.setDescription(src.getDescription()); + tgt.setDestination(src.getDestination()); + for (org.hl7.fhir.r4.model.UriType t : src.getLink()) + tgt.addLink(t.getValue()); + tgt.setConformance(convertReference(src.getCapabilities())); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent(); + copyElement(src, tgt); + tgt.setAutocreate(src.getAutocreate()); + tgt.setAutodelete(src.getAutodelete()); + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptFixtureComponent(); + copyElement(src, tgt); + tgt.setAutocreate(src.getAutocreate()); + tgt.setAutodelete(src.getAutodelete()); + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setHeaderField(src.getHeaderField()); + tgt.setPath(src.getPath()); + tgt.setSourceId(src.getSourceId()); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptVariableComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setHeaderField(src.getHeaderField()); + tgt.setPath(src.getPath()); + tgt.setSourceId(src.getSourceId()); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.SetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent convertSetupActionComponent(org.hl7.fhir.r4.model.TestScript.SetupActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent(); + copyElement(src, tgt); + tgt.setType(convertCoding(src.getType())); + tgt.setResource(src.getResource()); + tgt.setLabel(src.getLabel()); + tgt.setDescription(src.getDescription()); + tgt.setAccept(convertContentType(src.getAccept())); + tgt.setContentType(convertContentType(src.getContentType())); + tgt.setDestination(src.getDestination()); + tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); + tgt.setParams(src.getParams()); + for (org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) + tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); + tgt.setResponseId(src.getResponseId()); + tgt.setSourceId(src.getSourceId()); + tgt.setTargetId(src.getTargetId()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationComponent(); + copyElement(src, tgt); + tgt.setType(convertCoding(src.getType())); + tgt.setResource(src.getResource()); + tgt.setLabel(src.getLabel()); + tgt.setDescription(src.getDescription()); + tgt.setAccept(convertContentType(src.getAccept())); + tgt.setContentType(convertContentType(src.getContentType())); + tgt.setDestination(src.getDestination()); + tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); + tgt.setParams(src.getParams()); + for (org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) + tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); + tgt.setResponseId(src.getResponseId()); + tgt.setSourceId(src.getSourceId()); + tgt.setTargetId(src.getTargetId()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.ContentType convertContentType(org.hl7.fhir.instance.model.TestScript.ContentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XML: return org.hl7.fhir.r4.model.TestScript.ContentType.XML; + case JSON: return org.hl7.fhir.r4.model.TestScript.ContentType.JSON; + default: return org.hl7.fhir.r4.model.TestScript.ContentType.NULL; + } + } + + public org.hl7.fhir.instance.model.TestScript.ContentType convertContentType(org.hl7.fhir.r4.model.TestScript.ContentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XML: return org.hl7.fhir.instance.model.TestScript.ContentType.XML; + case JSON: return org.hl7.fhir.instance.model.TestScript.ContentType.JSON; + default: return org.hl7.fhir.instance.model.TestScript.ContentType.NULL; + } + } + + public org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent(); + copyElement(src, tgt); + tgt.setField(src.getField()); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionOperationRequestHeaderComponent(); + copyElement(src, tgt); + tgt.setField(src.getField()); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent(); + copyElement(src, tgt); + tgt.setLabel(src.getLabel()); + tgt.setDescription(src.getDescription()); + tgt.setDirection(convertAssertionDirectionType(src.getDirection())); + tgt.setCompareToSourceId(src.getCompareToSourceId()); + tgt.setCompareToSourcePath(src.getCompareToSourcePath()); + tgt.setContentType(convertContentType(src.getContentType())); + tgt.setHeaderField(src.getHeaderField()); + tgt.setMinimumId(src.getMinimumId()); + tgt.setNavigationLinks(src.getNavigationLinks()); + tgt.setOperator(convertAssertionOperatorType(src.getOperator())); + tgt.setPath(src.getPath()); + tgt.setResource(src.getResource()); + tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); + tgt.setResponseCode(src.getResponseCode()); + tgt.setSourceId(src.getSourceId()); + tgt.setValidateProfileId(src.getValidateProfileId()); + tgt.setValue(src.getValue()); + tgt.setWarningOnly(src.getWarningOnly()); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptSetupActionAssertComponent(); + copyElement(src, tgt); + tgt.setLabel(src.getLabel()); + tgt.setDescription(src.getDescription()); + tgt.setDirection(convertAssertionDirectionType(src.getDirection())); + tgt.setCompareToSourceId(src.getCompareToSourceId()); + tgt.setCompareToSourcePath(src.getCompareToSourcePath()); + tgt.setContentType(convertContentType(src.getContentType())); + tgt.setHeaderField(src.getHeaderField()); + tgt.setMinimumId(src.getMinimumId()); + tgt.setNavigationLinks(src.getNavigationLinks()); + tgt.setOperator(convertAssertionOperatorType(src.getOperator())); + tgt.setPath(src.getPath()); + tgt.setResource(src.getResource()); + tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); + tgt.setResponseCode(src.getResponseCode()); + tgt.setSourceId(src.getSourceId()); + tgt.setValidateProfileId(src.getValidateProfileId()); + tgt.setValue(src.getValue()); + tgt.setWarningOnly(src.getWarningOnly()); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.instance.model.TestScript.AssertionDirectionType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESPONSE: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.RESPONSE; + case REQUEST: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.REQUEST; + default: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.NULL; + } + } + + public org.hl7.fhir.instance.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.r4.model.TestScript.AssertionDirectionType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESPONSE: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.RESPONSE; + case REQUEST: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.REQUEST; + default: return org.hl7.fhir.instance.model.TestScript.AssertionDirectionType.NULL; + } + } + + public org.hl7.fhir.r4.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.instance.model.TestScript.AssertionOperatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EQUALS; + case NOTEQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEQUALS; + case IN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.IN; + case NOTIN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTIN; + case GREATERTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.GREATERTHAN; + case LESSTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.LESSTHAN; + case EMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EMPTY; + case NOTEMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEMPTY; + case CONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.CONTAINS; + case NOTCONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTCONTAINS; + default: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NULL; + } + } + + public org.hl7.fhir.instance.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.r4.model.TestScript.AssertionOperatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUALS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.EQUALS; + case NOTEQUALS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTEQUALS; + case IN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.IN; + case NOTIN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTIN; + case GREATERTHAN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.GREATERTHAN; + case LESSTHAN: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.LESSTHAN; + case EMPTY: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.EMPTY; + case NOTEMPTY: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTEMPTY; + case CONTAINS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.CONTAINS; + case NOTCONTAINS: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NOTCONTAINS; + default: return org.hl7.fhir.instance.model.TestScript.AssertionOperatorType.NULL; + } + } + + public org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OKAY: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.OKAY; + case CREATED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CREATED; + case NOCONTENT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOCONTENT; + case NOTMODIFIED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTMODIFIED; + case BAD: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.BAD; + case FORBIDDEN: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.FORBIDDEN; + case NOTFOUND: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTFOUND; + case METHODNOTALLOWED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; + case CONFLICT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CONFLICT; + case GONE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.GONE; + case PRECONDITIONFAILED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; + case UNPROCESSABLE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; + default: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NULL; + } + } + + public org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OKAY: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.OKAY; + case CREATED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.CREATED; + case NOCONTENT: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOCONTENT; + case NOTMODIFIED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOTMODIFIED; + case BAD: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.BAD; + case FORBIDDEN: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.FORBIDDEN; + case NOTFOUND: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NOTFOUND; + case METHODNOTALLOWED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; + case CONFLICT: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.CONFLICT; + case GONE: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.GONE; + case PRECONDITIONFAILED: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; + case UNPROCESSABLE: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; + default: return org.hl7.fhir.instance.model.TestScript.AssertionResponseTypes.NULL; + } + } + + + public org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTestComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.TestScript.TestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent convertTestActionComponent(org.hl7.fhir.r4.model.TestScript.TestActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTestActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.TeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TeardownActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.r4.model.TestScript.TeardownActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent tgt = new org.hl7.fhir.instance.model.TestScript.TestScriptTeardownActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent convertCodeSystem(org.hl7.fhir.r4.model.CodeSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetCodeSystemComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getUrl()); + tgt.setVersion(src.getVersion()); + tgt.setCaseSensitive(src.getCaseSensitive()); + + for (ConceptDefinitionComponent cc : src.getConcept()) + tgt.addConcept(convertCodeSystemConcept(src, cc)); + return tgt; + } + +public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent convertCodeSystemConcept(CodeSystem cs, ConceptDefinitionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent(); + copyElement(src, tgt); + tgt.setAbstract(CodeSystemUtilities.isNotSelectable(cs, src)); + tgt.setCode(src.getCode()); + tgt.setDefinition(src.getDefinition()); + tgt.setDisplay(src.getDisplay()); + + for (ConceptDefinitionComponent cc : src.getConcept()) + tgt.addConcept(convertCodeSystemConcept(cs, cc)); + for (ConceptDefinitionDesignationComponent cc : src.getDesignation()) + tgt.addDesignation(convertCodeSystemDesignation(cc)); + return tgt; + } + +public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent convertCodeSystemDesignation(ConceptDefinitionDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); + copyElement(src, tgt); + tgt.setUse(convertCoding(src.getUse())); + tgt.setLanguage(src.getLanguage()); + tgt.setValue(src.getValue()); + + return tgt; + } + + public org.hl7.fhir.r4.model.ValueSet convertValueSet(org.hl7.fhir.instance.model.ValueSet src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet tgt = new org.hl7.fhir.r4.model.ValueSet(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.addIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent t : src.getContact()) + tgt.addContact(convertValueSetContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + tgt.setImmutable(src.getImmutable()); + tgt.setPurpose(src.getRequirements()); + tgt.setCopyright(src.getCopyright()); + tgt.setExtensible(src.getExtensible()); + if (src.hasCompose()) { + tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); + tgt.getCompose().setLockedDate(src.getLockedDate()); + } + if (src.hasCodeSystem() && advisor != null) { + org.hl7.fhir.r4.model.CodeSystem tgtcs = new org.hl7.fhir.r4.model.CodeSystem(); + copyDomainResource(src, tgtcs); + tgtcs.setUrl(src.getCodeSystem().getSystem()); + tgtcs.setIdentifier(convertIdentifier(src.getIdentifier())); + tgtcs.setVersion(src.getCodeSystem().getVersion()); + tgtcs.setName(src.getName()+" Code System"); + tgtcs.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgtcs.setExperimental(src.getExperimental()); + tgtcs.setPublisher(src.getPublisher()); + for (org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent t : src.getContact()) + tgtcs.addContact(convertValueSetContactComponent(t)); + if (src.hasDate()) + tgtcs.setDate(src.getDate()); + tgtcs.setDescription(src.getDescription()); + for (org.hl7.fhir.instance.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgtcs.addJurisdiction(convertCodeableConcept(t)); + else + tgtcs.addUseContext(convertCodeableConceptToUsageContext(t)); + tgtcs.setPurpose(src.getRequirements()); + tgtcs.setCopyright(src.getCopyright()); + tgtcs.setContent(CodeSystemContentMode.COMPLETE); + tgtcs.setCaseSensitive(src.getCodeSystem().getCaseSensitive()); + for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent cs : src.getCodeSystem().getConcept()) + processConcept(tgtcs.getConcept(), cs, tgtcs); + advisor.handleCodeSystem(tgtcs, tgt); + tgt.setUserData("r2-cs", tgtcs); + tgt.getCompose().addInclude().setSystem(tgtcs.getUrl()); + } + tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); + return tgt; + } + + private void processConcept(List concepts, org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent cs, CodeSystem tgtcs) throws FHIRException { + org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent ct = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent(); + concepts.add(ct); + ct.setCode(cs.getCode()); + ct.setDisplay(cs.getDisplay()); + ct.setDefinition(cs.getDefinition()); + if (cs.getAbstract()) + CodeSystemUtilities.setNotSelectable(tgtcs, ct); + for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent csd : cs.getDesignation()) { + org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent cst = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent(); + cst.setLanguage(csd.getLanguage()); + cst.setUse(convertCoding(csd.getUse())); + cst.setValue(csd.getValue()); + } + + for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent csc : cs.getConcept()) + processConcept(ct.getConcept(), csc, tgtcs); + } + + private void processConcept(List concepts, ConceptDefinitionComponent cs, CodeSystem srcCS) throws FHIRException { + org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent ct = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionComponent(); + concepts.add(ct); + ct.setCode(cs.getCode()); + ct.setDisplay(cs.getDisplay()); + ct.setDefinition(cs.getDefinition()); + if (CodeSystemUtilities.isNotSelectable(srcCS, cs)) + ct.setAbstract(true); + for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent csd : cs.getDesignation()) { + org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent cst = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); + cst.setLanguage(csd.getLanguage()); + cst.setUse(convertCoding(csd.getUse())); + cst.setValue(csd.getValue()); + } + + for (ConceptDefinitionComponent csc : cs.getConcept()) + processConcept(ct.getConcept(), csc, srcCS); + } + + public org.hl7.fhir.instance.model.ValueSet convertValueSet(org.hl7.fhir.r4.model.ValueSet src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet tgt = new org.hl7.fhir.instance.model.ValueSet(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier i : src.getIdentifier()) + tgt.setIdentifier(convertIdentifier(i)); + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertValueSetContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setLockedDate(src.getCompose().getLockedDate()); + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + tgt.setImmutable(src.getImmutable()); + tgt.setRequirements(src.getPurpose()); + tgt.setCopyright(src.getCopyright()); + tgt.setExtensible(src.getExtensible()); + org.hl7.fhir.r4.model.CodeSystem srcCS = (CodeSystem) src.getUserData("r2-cs"); + if (srcCS == null) + srcCS = advisor.getCodeSystem(src); + if (srcCS != null) { + tgt.getCodeSystem().setSystem(srcCS.getUrl()); + tgt.getCodeSystem().setVersion(srcCS.getVersion()); + tgt.getCodeSystem().setCaseSensitive(srcCS.getCaseSensitive()); + for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent cs : srcCS.getConcept()) + processConcept(tgt.getCodeSystem().getConcept(), cs, srcCS); + + } + tgt.setCompose(convertValueSetComposeComponent(src.getCompose(), srcCS == null ? null : srcCS.getUrl())); + tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); + return tgt; + } + + private static boolean isJurisdiction(CodeableConcept t) { + return t.hasCoding() && ("http://unstats.un.org/unsd/methods/m49/m49.htm".equals(t.getCoding().get(0).getSystem()) || "urn:iso:std:iso:3166".equals(t.getCoding().get(0).getSystem()) + || "https://www.usps.com/".equals(t.getCoding().get(0).getSystem())); + } + + + public org.hl7.fhir.r4.model.ContactDetail convertValueSetContactComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.instance.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent convertValueSetContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetContactComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.instance.model.UriType t : src.getImport()) + tgt.addInclude().addValueSet(t.getValue()); + for (org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent t : src.getInclude()) + tgt.addInclude(convertConceptSetComponent(t)); + for (org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent t : src.getExclude()) + tgt.addExclude(convertConceptSetComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent src, String noSystem) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetComposeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getInclude()) { + for (org.hl7.fhir.r4.model.UriType ti : t.getValueSet()) + tgt.addImport(ti.getValue()); + if (noSystem == null || !t.getSystem().equals(noSystem)) + tgt.addInclude(convertConceptSetComponent(t)); + } + for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getExclude()) + tgt.addExclude(convertConceptSetComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setVersion(src.getVersion()); + for (org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) + tgt.addConcept(convertConceptReferenceComponent(t)); + for (org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) + tgt.addFilter(convertConceptSetFilterComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptSetComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setVersion(src.getVersion()); + for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) + tgt.addConcept(convertConceptReferenceComponent(t)); + for (org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) + tgt.addFilter(convertConceptSetFilterComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptReferenceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent(); + copyElement(src, tgt); + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptDefinitionDesignationComponent(); + copyElement(src, tgt); + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getProperty()); + tgt.setOp(convertFilterOperator(src.getOp())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ConceptSetFilterComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getProperty()); + tgt.setOp(convertFilterOperator(src.getOp())); + tgt.setValue(src.getValue()); + return tgt; + } + + public org.hl7.fhir.r4.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.instance.model.ValueSet.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISA; + case ISNOTA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.REGEX; + case IN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NOTIN; + default: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NULL; + } + } + + public org.hl7.fhir.instance.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.r4.model.ValueSet.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.ISA; + case ISNOTA: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.REGEX; + case IN: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.NOTIN; + default: return org.hl7.fhir.instance.model.ValueSet.FilterOperator.NULL; + } + } + + public org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setTimestamp(src.getTimestamp()); + tgt.setTotal(src.getTotal()); + tgt.setOffset(src.getOffset()); + for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) + tgt.addParameter(convertValueSetExpansionParameterComponent(t)); + for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setTimestamp(src.getTimestamp()); + tgt.setTotal(src.getTotal()); + tgt.setOffset(src.getOffset()); + for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) + tgt.addParameter(convertValueSetExpansionParameterComponent(t)); + for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setAbstract(src.getAbstract()); + tgt.setVersion(src.getVersion()); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.instance.model.ValueSet.ValueSetExpansionContainsComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + tgt.setAbstract(src.getAbstract()); + tgt.setVersion(src.getVersion()); + tgt.setCode(src.getCode()); + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public org.hl7.fhir.r4.model.ListResource convertList(org.hl7.fhir.instance.model.List_ src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ListResource tgt = new org.hl7.fhir.r4.model.ListResource(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.instance.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setTitle(src.getTitle()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setSource(convertReference(src.getSource())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setStatus(convertListStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + tgt.setMode(convertListMode(src.getMode())); + if (src.hasNote()) + tgt.addNote(new org.hl7.fhir.r4.model.Annotation().setText(src.getNote())); + for (org.hl7.fhir.instance.model.List_.ListEntryComponent t : src.getEntry()) + tgt.addEntry(convertListEntry(t)); + return tgt; + } + + + public org.hl7.fhir.r4.model.ListResource.ListStatus convertListStatus(org.hl7.fhir.instance.model.List_.ListStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.r4.model.ListResource.ListStatus.CURRENT; + case RETIRED: return org.hl7.fhir.r4.model.ListResource.ListStatus.RETIRED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ListResource.ListStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.ListResource.ListStatus.NULL; + } + } + + public org.hl7.fhir.r4.model.ListResource.ListMode convertListMode(org.hl7.fhir.instance.model.List_.ListMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case WORKING: return org.hl7.fhir.r4.model.ListResource.ListMode.WORKING; + case SNAPSHOT: return org.hl7.fhir.r4.model.ListResource.ListMode.SNAPSHOT; + case CHANGES: return org.hl7.fhir.r4.model.ListResource.ListMode.CHANGES; + default: return org.hl7.fhir.r4.model.ListResource.ListMode.NULL; + } + } + + public org.hl7.fhir.r4.model.ListResource.ListEntryComponent convertListEntry(org.hl7.fhir.instance.model.List_.ListEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ListResource.ListEntryComponent tgt = new org.hl7.fhir.r4.model.ListResource.ListEntryComponent(); + copyBackboneElement(src, tgt); + tgt.setFlag(convertCodeableConcept(src.getFlag())); + tgt.setDeleted(src.getDeleted()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setItem(convertReference(src.getItem())); + return tgt; + } + + public org.hl7.fhir.instance.model.List_ convertList(org.hl7.fhir.r4.model.ListResource src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.List_ tgt = new org.hl7.fhir.instance.model.List_(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setTitle(src.getTitle()); + tgt.setCode(convertCodeableConcept(src.getCode())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setSource(convertReference(src.getSource())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setStatus(convertListStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + tgt.setMode(convertListMode(src.getMode())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.setNote(t.getText()); + for (org.hl7.fhir.r4.model.ListResource.ListEntryComponent t : src.getEntry()) + tgt.addEntry(convertListEntry(t)); + return tgt; + } + + + public org.hl7.fhir.instance.model.List_.ListStatus convertListStatus(org.hl7.fhir.r4.model.ListResource.ListStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.instance.model.List_.ListStatus.CURRENT; + case RETIRED: return org.hl7.fhir.instance.model.List_.ListStatus.RETIRED; + case ENTEREDINERROR: return org.hl7.fhir.instance.model.List_.ListStatus.ENTEREDINERROR; + default: return org.hl7.fhir.instance.model.List_.ListStatus.NULL; + } + } + + public org.hl7.fhir.instance.model.List_.ListMode convertListMode(org.hl7.fhir.r4.model.ListResource.ListMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case WORKING: return org.hl7.fhir.instance.model.List_.ListMode.WORKING; + case SNAPSHOT: return org.hl7.fhir.instance.model.List_.ListMode.SNAPSHOT; + case CHANGES: return org.hl7.fhir.instance.model.List_.ListMode.CHANGES; + default: return org.hl7.fhir.instance.model.List_.ListMode.NULL; + } + } + + public org.hl7.fhir.instance.model.List_.ListEntryComponent convertListEntry(org.hl7.fhir.r4.model.ListResource.ListEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.instance.model.List_.ListEntryComponent tgt = new org.hl7.fhir.instance.model.List_.ListEntryComponent(); + copyBackboneElement(src, tgt); + tgt.setFlag(convertCodeableConcept(src.getFlag())); + tgt.setDeleted(src.getDeleted()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + tgt.setItem(convertReference(src.getItem())); + return tgt; + } + + + + public org.hl7.fhir.r4.model.Resource convertResource(org.hl7.fhir.instance.model.Resource src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.instance.model.Parameters) + return convertParameters((org.hl7.fhir.instance.model.Parameters) src); + if (src instanceof org.hl7.fhir.instance.model.Account) + return convertAccount((org.hl7.fhir.instance.model.Account) src); + if (src instanceof org.hl7.fhir.instance.model.Appointment) + return convertAppointment((org.hl7.fhir.instance.model.Appointment) src); + if (src instanceof org.hl7.fhir.instance.model.AppointmentResponse) + return convertAppointmentResponse((org.hl7.fhir.instance.model.AppointmentResponse) src); + if (src instanceof org.hl7.fhir.instance.model.AuditEvent) + return convertAuditEvent((org.hl7.fhir.instance.model.AuditEvent) src); + if (src instanceof org.hl7.fhir.instance.model.Basic) + return convertBasic((org.hl7.fhir.instance.model.Basic) src); + if (src instanceof org.hl7.fhir.instance.model.Binary) + return convertBinary((org.hl7.fhir.instance.model.Binary) src); + if (src instanceof org.hl7.fhir.instance.model.Bundle) + return convertBundle((org.hl7.fhir.instance.model.Bundle) src); + if (src instanceof org.hl7.fhir.instance.model.CarePlan) + return convertCarePlan((org.hl7.fhir.instance.model.CarePlan) src); + if (src instanceof org.hl7.fhir.instance.model.ClinicalImpression) + return convertClinicalImpression((org.hl7.fhir.instance.model.ClinicalImpression) src); + if (src instanceof org.hl7.fhir.instance.model.Communication) + return convertCommunication((org.hl7.fhir.instance.model.Communication) src); + if (src instanceof org.hl7.fhir.instance.model.CommunicationRequest) + return convertCommunicationRequest((org.hl7.fhir.instance.model.CommunicationRequest) src); + if (src instanceof org.hl7.fhir.instance.model.Composition) + return convertComposition((org.hl7.fhir.instance.model.Composition) src); + if (src instanceof org.hl7.fhir.instance.model.ConceptMap) + return convertConceptMap((org.hl7.fhir.instance.model.ConceptMap) src); + if (src instanceof org.hl7.fhir.instance.model.Condition) + return convertCondition((org.hl7.fhir.instance.model.Condition) src); + if (src instanceof org.hl7.fhir.instance.model.Conformance) + return convertConformance((org.hl7.fhir.instance.model.Conformance) src); + if (src instanceof org.hl7.fhir.instance.model.Contract) + return convertContract((org.hl7.fhir.instance.model.Contract) src); + if (src instanceof org.hl7.fhir.instance.model.DataElement) + return convertDataElement((org.hl7.fhir.instance.model.DataElement) src); + if (src instanceof org.hl7.fhir.instance.model.DetectedIssue) + return convertDetectedIssue((org.hl7.fhir.instance.model.DetectedIssue) src); + if (src instanceof org.hl7.fhir.instance.model.Device) + return convertDevice((org.hl7.fhir.instance.model.Device) src); + if (src instanceof org.hl7.fhir.instance.model.DeviceComponent) + return convertDeviceComponent((org.hl7.fhir.instance.model.DeviceComponent) src); + if (src instanceof org.hl7.fhir.instance.model.DeviceMetric) + return convertDeviceMetric((org.hl7.fhir.instance.model.DeviceMetric) src); + if (src instanceof org.hl7.fhir.instance.model.DeviceUseStatement) + return convertDeviceUseStatement((org.hl7.fhir.instance.model.DeviceUseStatement) src); + if (src instanceof org.hl7.fhir.instance.model.DiagnosticReport) + return convertDiagnosticReport((org.hl7.fhir.instance.model.DiagnosticReport) src); + if (src instanceof org.hl7.fhir.instance.model.DocumentManifest) + return convertDocumentManifest((org.hl7.fhir.instance.model.DocumentManifest) src); + if (src instanceof org.hl7.fhir.instance.model.DocumentReference) + return convertDocumentReference((org.hl7.fhir.instance.model.DocumentReference) src); + if (src instanceof org.hl7.fhir.instance.model.Encounter) + return convertEncounter((org.hl7.fhir.instance.model.Encounter) src); + if (src instanceof org.hl7.fhir.instance.model.EnrollmentRequest) + return convertEnrollmentRequest((org.hl7.fhir.instance.model.EnrollmentRequest) src); + if (src instanceof org.hl7.fhir.instance.model.EnrollmentResponse) + return convertEnrollmentResponse((org.hl7.fhir.instance.model.EnrollmentResponse) src); + if (src instanceof org.hl7.fhir.instance.model.EpisodeOfCare) + return convertEpisodeOfCare((org.hl7.fhir.instance.model.EpisodeOfCare) src); + if (src instanceof org.hl7.fhir.instance.model.FamilyMemberHistory) + return convertFamilyMemberHistory((org.hl7.fhir.instance.model.FamilyMemberHistory) src); + if (src instanceof org.hl7.fhir.instance.model.Flag) + return convertFlag((org.hl7.fhir.instance.model.Flag) src); + if (src instanceof org.hl7.fhir.instance.model.Group) + return convertGroup((org.hl7.fhir.instance.model.Group) src); + if (src instanceof org.hl7.fhir.instance.model.HealthcareService) + return convertHealthcareService((org.hl7.fhir.instance.model.HealthcareService) src); + if (src instanceof org.hl7.fhir.instance.model.ImagingStudy) + return convertImagingStudy((org.hl7.fhir.instance.model.ImagingStudy) src); + if (src instanceof org.hl7.fhir.instance.model.Immunization) + return convertImmunization((org.hl7.fhir.instance.model.Immunization) src); + if (src instanceof org.hl7.fhir.instance.model.ImmunizationRecommendation) + return convertImmunizationRecommendation((org.hl7.fhir.instance.model.ImmunizationRecommendation) src); + if (src instanceof org.hl7.fhir.instance.model.ImplementationGuide) + return convertImplementationGuide((org.hl7.fhir.instance.model.ImplementationGuide) src); + if (src instanceof org.hl7.fhir.instance.model.List_) + return convertList((org.hl7.fhir.instance.model.List_) src); + if (src instanceof org.hl7.fhir.instance.model.Location) + return convertLocation((org.hl7.fhir.instance.model.Location) src); + if (src instanceof org.hl7.fhir.instance.model.Media) + return convertMedia((org.hl7.fhir.instance.model.Media) src); + if (src instanceof org.hl7.fhir.instance.model.Medication) + return convertMedication((org.hl7.fhir.instance.model.Medication) src); + if (src instanceof org.hl7.fhir.instance.model.MedicationDispense) + return convertMedicationDispense((org.hl7.fhir.instance.model.MedicationDispense) src); +// if (src instanceof org.hl7.fhir.instance.model.MedicationOrder) +// return convertMedicationOrder((org.hl7.fhir.instance.model.MedicationOrder) src); + if (src instanceof org.hl7.fhir.instance.model.MedicationStatement) + return convertMedicationStatement((org.hl7.fhir.instance.model.MedicationStatement) src); + if (src instanceof org.hl7.fhir.instance.model.MessageHeader) + return convertMessageHeader((org.hl7.fhir.instance.model.MessageHeader) src); + if (src instanceof org.hl7.fhir.instance.model.NamingSystem) + return convertNamingSystem((org.hl7.fhir.instance.model.NamingSystem) src); + if (src instanceof org.hl7.fhir.instance.model.Observation) + return convertObservation((org.hl7.fhir.instance.model.Observation) src); + if (src instanceof org.hl7.fhir.instance.model.OperationDefinition) + return convertOperationDefinition((org.hl7.fhir.instance.model.OperationDefinition) src); + if (src instanceof org.hl7.fhir.instance.model.OperationOutcome) + return convertOperationOutcome((org.hl7.fhir.instance.model.OperationOutcome) src); + if (src instanceof org.hl7.fhir.instance.model.Organization) + return convertOrganization((org.hl7.fhir.instance.model.Organization) src); + if (src instanceof org.hl7.fhir.instance.model.Patient) + return convertPatient((org.hl7.fhir.instance.model.Patient) src); + if (src instanceof org.hl7.fhir.instance.model.Person) + return convertPerson((org.hl7.fhir.instance.model.Person) src); + if (src instanceof org.hl7.fhir.instance.model.Practitioner) + return convertPractitioner((org.hl7.fhir.instance.model.Practitioner) src); + if (src instanceof org.hl7.fhir.instance.model.Procedure) + return convertProcedure((org.hl7.fhir.instance.model.Procedure) src); + if (src instanceof org.hl7.fhir.instance.model.ProcedureRequest) + return convertProcedureRequest((org.hl7.fhir.instance.model.ProcedureRequest) src); + if (src instanceof org.hl7.fhir.instance.model.Provenance) + return convertProvenance((org.hl7.fhir.instance.model.Provenance) src); + if (src instanceof org.hl7.fhir.instance.model.Questionnaire) + return convertQuestionnaire((org.hl7.fhir.instance.model.Questionnaire) src); + if (src instanceof org.hl7.fhir.instance.model.QuestionnaireResponse) + return convertQuestionnaireResponse((org.hl7.fhir.instance.model.QuestionnaireResponse) src); + if (src instanceof org.hl7.fhir.instance.model.ReferralRequest) + return convertReferralRequest((org.hl7.fhir.instance.model.ReferralRequest) src); + if (src instanceof org.hl7.fhir.instance.model.RelatedPerson) + return convertRelatedPerson((org.hl7.fhir.instance.model.RelatedPerson) src); + if (src instanceof org.hl7.fhir.instance.model.RiskAssessment) + return convertRiskAssessment((org.hl7.fhir.instance.model.RiskAssessment) src); + if (src instanceof org.hl7.fhir.instance.model.Schedule) + return convertSchedule((org.hl7.fhir.instance.model.Schedule) src); + if (src instanceof org.hl7.fhir.instance.model.SearchParameter) + return convertSearchParameter((org.hl7.fhir.instance.model.SearchParameter) src); + if (src instanceof org.hl7.fhir.instance.model.Slot) + return convertSlot((org.hl7.fhir.instance.model.Slot) src); + if (src instanceof org.hl7.fhir.instance.model.StructureDefinition) + return convertStructureDefinition((org.hl7.fhir.instance.model.StructureDefinition) src); + if (src instanceof org.hl7.fhir.instance.model.Subscription) + return convertSubscription((org.hl7.fhir.instance.model.Subscription) src); + if (src instanceof org.hl7.fhir.instance.model.Substance) + return convertSubstance((org.hl7.fhir.instance.model.Substance) src); + if (src instanceof org.hl7.fhir.instance.model.SupplyDelivery) + return convertSupplyDelivery((org.hl7.fhir.instance.model.SupplyDelivery) src); + if (src instanceof org.hl7.fhir.instance.model.SupplyRequest) + return convertSupplyRequest((org.hl7.fhir.instance.model.SupplyRequest) src); + if (src instanceof org.hl7.fhir.instance.model.TestScript) + return convertTestScript((org.hl7.fhir.instance.model.TestScript) src); + if (src instanceof org.hl7.fhir.instance.model.ValueSet) + return convertValueSet((org.hl7.fhir.instance.model.ValueSet) src); + throw new Error("Unknown resource "+src.fhirType()); + } + + public org.hl7.fhir.instance.model.Resource convertResource(org.hl7.fhir.r4.model.Resource src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.r4.model.Parameters) + return convertParameters((org.hl7.fhir.r4.model.Parameters) src); + if (src instanceof org.hl7.fhir.r4.model.Appointment) + return convertAppointment((org.hl7.fhir.r4.model.Appointment) src); + if (src instanceof org.hl7.fhir.r4.model.AppointmentResponse) + return convertAppointmentResponse((org.hl7.fhir.r4.model.AppointmentResponse) src); + if (src instanceof org.hl7.fhir.r4.model.AuditEvent) + return convertAuditEvent((org.hl7.fhir.r4.model.AuditEvent) src); + if (src instanceof org.hl7.fhir.r4.model.Basic) + return convertBasic((org.hl7.fhir.r4.model.Basic) src); + if (src instanceof org.hl7.fhir.r4.model.Binary) + return convertBinary((org.hl7.fhir.r4.model.Binary) src); + if (src instanceof org.hl7.fhir.r4.model.Bundle) + return convertBundle((org.hl7.fhir.r4.model.Bundle) src); + if (src instanceof org.hl7.fhir.r4.model.CarePlan) + return convertCarePlan((org.hl7.fhir.r4.model.CarePlan) src); + if (src instanceof org.hl7.fhir.r4.model.ClinicalImpression) + return convertClinicalImpression((org.hl7.fhir.r4.model.ClinicalImpression) src); + if (src instanceof org.hl7.fhir.r4.model.Communication) + return convertCommunication((org.hl7.fhir.r4.model.Communication) src); + if (src instanceof org.hl7.fhir.r4.model.CommunicationRequest) + return convertCommunicationRequest((org.hl7.fhir.r4.model.CommunicationRequest) src); + if (src instanceof org.hl7.fhir.r4.model.Composition) + return convertComposition((org.hl7.fhir.r4.model.Composition) src); + if (src instanceof org.hl7.fhir.r4.model.ConceptMap) + return convertConceptMap((org.hl7.fhir.r4.model.ConceptMap) src); + if (src instanceof org.hl7.fhir.r4.model.Condition) + return convertCondition((org.hl7.fhir.r4.model.Condition) src); + if (src instanceof org.hl7.fhir.r4.model.CapabilityStatement) + return convertConformance((org.hl7.fhir.r4.model.CapabilityStatement) src); + if (src instanceof org.hl7.fhir.r4.model.Contract) + return convertContract((org.hl7.fhir.r4.model.Contract) src); + if (src instanceof org.hl7.fhir.r4.model.DetectedIssue) + return convertDetectedIssue((org.hl7.fhir.r4.model.DetectedIssue) src); + if (src instanceof org.hl7.fhir.r4.model.Device) + return convertDevice((org.hl7.fhir.r4.model.Device) src); + if (src instanceof org.hl7.fhir.r4.model.DeviceComponent) + return convertDeviceComponent((org.hl7.fhir.r4.model.DeviceComponent) src); + if (src instanceof org.hl7.fhir.r4.model.DeviceMetric) + return convertDeviceMetric((org.hl7.fhir.r4.model.DeviceMetric) src); + if (src instanceof org.hl7.fhir.r4.model.DeviceUseStatement) + return convertDeviceUseStatement((org.hl7.fhir.r4.model.DeviceUseStatement) src); + if (src instanceof org.hl7.fhir.r4.model.DiagnosticReport) + return convertDiagnosticReport((org.hl7.fhir.r4.model.DiagnosticReport) src); + if (src instanceof org.hl7.fhir.r4.model.DocumentManifest) + return convertDocumentManifest((org.hl7.fhir.r4.model.DocumentManifest) src); + if (src instanceof org.hl7.fhir.r4.model.DocumentReference) + return convertDocumentReference((org.hl7.fhir.r4.model.DocumentReference) src); + if (src instanceof org.hl7.fhir.r4.model.Encounter) + return convertEncounter((org.hl7.fhir.r4.model.Encounter) src); + if (src instanceof org.hl7.fhir.r4.model.EnrollmentRequest) + return convertEnrollmentRequest((org.hl7.fhir.r4.model.EnrollmentRequest) src); + if (src instanceof org.hl7.fhir.r4.model.EnrollmentResponse) + return convertEnrollmentResponse((org.hl7.fhir.r4.model.EnrollmentResponse) src); + if (src instanceof org.hl7.fhir.r4.model.EpisodeOfCare) + return convertEpisodeOfCare((org.hl7.fhir.r4.model.EpisodeOfCare) src); + if (src instanceof org.hl7.fhir.r4.model.FamilyMemberHistory) + return convertFamilyMemberHistory((org.hl7.fhir.r4.model.FamilyMemberHistory) src); + if (src instanceof org.hl7.fhir.r4.model.Flag) + return convertFlag((org.hl7.fhir.r4.model.Flag) src); + if (src instanceof org.hl7.fhir.r4.model.Group) + return convertGroup((org.hl7.fhir.r4.model.Group) src); + if (src instanceof org.hl7.fhir.r4.model.HealthcareService) + return convertHealthcareService((org.hl7.fhir.r4.model.HealthcareService) src); + if (src instanceof org.hl7.fhir.r4.model.ImagingStudy) + return convertImagingStudy((org.hl7.fhir.r4.model.ImagingStudy) src); + if (src instanceof org.hl7.fhir.r4.model.Immunization) + return convertImmunization((org.hl7.fhir.r4.model.Immunization) src); + if (src instanceof org.hl7.fhir.r4.model.ImmunizationRecommendation) + return convertImmunizationRecommendation((org.hl7.fhir.r4.model.ImmunizationRecommendation) src); + if (src instanceof org.hl7.fhir.r4.model.ImplementationGuide) + return convertImplementationGuide((org.hl7.fhir.r4.model.ImplementationGuide) src); + if (src instanceof org.hl7.fhir.r4.model.ListResource) + return convertList((org.hl7.fhir.r4.model.ListResource) src); + if (src instanceof org.hl7.fhir.r4.model.Location) + return convertLocation((org.hl7.fhir.r4.model.Location) src); + if (src instanceof org.hl7.fhir.r4.model.Media) + return convertMedia((org.hl7.fhir.r4.model.Media) src); + if (src instanceof org.hl7.fhir.r4.model.Medication) + return convertMedication((org.hl7.fhir.r4.model.Medication) src); + if (src instanceof org.hl7.fhir.r4.model.MedicationDispense) + return convertMedicationDispense((org.hl7.fhir.r4.model.MedicationDispense) src); +// if (src instanceof org.hl7.fhir.r4.model.MedicationOrder) +// return convertMedicationOrder((org.hl7.fhir.r4.model.MedicationOrder) src); + if (src instanceof org.hl7.fhir.r4.model.MedicationStatement) + return convertMedicationStatement((org.hl7.fhir.r4.model.MedicationStatement) src); + if (src instanceof org.hl7.fhir.r4.model.MessageHeader) + return convertMessageHeader((org.hl7.fhir.r4.model.MessageHeader) src); + if (src instanceof org.hl7.fhir.r4.model.NamingSystem) + return convertNamingSystem((org.hl7.fhir.r4.model.NamingSystem) src); + if (src instanceof org.hl7.fhir.r4.model.Observation) + return convertObservation((org.hl7.fhir.r4.model.Observation) src); + if (src instanceof org.hl7.fhir.r4.model.OperationDefinition) + return convertOperationDefinition((org.hl7.fhir.r4.model.OperationDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.OperationOutcome) + return convertOperationOutcome((org.hl7.fhir.r4.model.OperationOutcome) src); + if (src instanceof org.hl7.fhir.r4.model.Organization) + return convertOrganization((org.hl7.fhir.r4.model.Organization) src); + if (src instanceof org.hl7.fhir.r4.model.Patient) + return convertPatient((org.hl7.fhir.r4.model.Patient) src); + if (src instanceof org.hl7.fhir.r4.model.Person) + return convertPerson((org.hl7.fhir.r4.model.Person) src); + if (src instanceof org.hl7.fhir.r4.model.Practitioner) + return convertPractitioner((org.hl7.fhir.r4.model.Practitioner) src); + if (src instanceof org.hl7.fhir.r4.model.Procedure) + return convertProcedure((org.hl7.fhir.r4.model.Procedure) src); + if (src instanceof org.hl7.fhir.r4.model.ProcedureRequest) + return convertProcedureRequest((org.hl7.fhir.r4.model.ProcedureRequest) src); + if (src instanceof org.hl7.fhir.r4.model.Provenance) + return convertProvenance((org.hl7.fhir.r4.model.Provenance) src); + if (src instanceof org.hl7.fhir.r4.model.Questionnaire) + return convertQuestionnaire((org.hl7.fhir.r4.model.Questionnaire) src); + if (src instanceof org.hl7.fhir.r4.model.QuestionnaireResponse) + return convertQuestionnaireResponse((org.hl7.fhir.r4.model.QuestionnaireResponse) src); + if (src instanceof org.hl7.fhir.r4.model.RelatedPerson) + return convertRelatedPerson((org.hl7.fhir.r4.model.RelatedPerson) src); + if (src instanceof org.hl7.fhir.r4.model.RiskAssessment) + return convertRiskAssessment((org.hl7.fhir.r4.model.RiskAssessment) src); + if (src instanceof org.hl7.fhir.r4.model.Schedule) + return convertSchedule((org.hl7.fhir.r4.model.Schedule) src); + if (src instanceof org.hl7.fhir.r4.model.SearchParameter) + return convertSearchParameter((org.hl7.fhir.r4.model.SearchParameter) src); + if (src instanceof org.hl7.fhir.r4.model.Slot) + return convertSlot((org.hl7.fhir.r4.model.Slot) src); + if (src instanceof org.hl7.fhir.r4.model.StructureDefinition) + return convertStructureDefinition((org.hl7.fhir.r4.model.StructureDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.Subscription) + return convertSubscription((org.hl7.fhir.r4.model.Subscription) src); + if (src instanceof org.hl7.fhir.r4.model.Substance) + return convertSubstance((org.hl7.fhir.r4.model.Substance) src); + if (src instanceof org.hl7.fhir.r4.model.SupplyDelivery) + return convertSupplyDelivery((org.hl7.fhir.r4.model.SupplyDelivery) src); + if (src instanceof org.hl7.fhir.r4.model.SupplyRequest) + return convertSupplyRequest((org.hl7.fhir.r4.model.SupplyRequest) src); + if (src instanceof org.hl7.fhir.r4.model.TestScript) + return convertTestScript((org.hl7.fhir.r4.model.TestScript) src); + if (src instanceof org.hl7.fhir.r4.model.ValueSet) + return convertValueSet((org.hl7.fhir.r4.model.ValueSet) src); + throw new Error("Unknown resource "+src.fhirType()); + } + +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_14_30.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_14_30.java index cc7301f54d1..36da74d31f3 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_14_30.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_14_30.java @@ -1,7241 +1,7262 @@ -package org.hl7.fhir.convertors; - -/* - Copyright (c) 2011+, HL7, Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without modification, - are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of HL7 nor the names of its contributors may be used to - endorse or promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - - */ - -// Generated on Mon, Aug 15, 2016 19:58+1000 for FHIR v1.7.0 - -import java.util.ArrayList; -import java.util.List; - -import org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent; -import org.hl7.fhir.dstu2016may.model.CodeableConcept; -import org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule; -import org.hl7.fhir.dstu3.conformance.ProfileUtilities; -import org.hl7.fhir.dstu3.model.CodeSystem; -import org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator; -import org.hl7.fhir.dstu3.model.ConceptMap; -import org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent; -import org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent; -import org.hl7.fhir.dstu3.model.ContactDetail; -import org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent; -import org.hl7.fhir.dstu3.model.Enumeration; -import org.hl7.fhir.dstu3.model.Timing.EventTiming; -import org.hl7.fhir.dstu3.model.UsageContext; -import org.hl7.fhir.exceptions.FHIRException; - -public class VersionConvertor_14_30 { - - private static void copyElement(org.hl7.fhir.dstu2016may.model.Element src, org.hl7.fhir.dstu3.model.Element tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - for (org.hl7.fhir.dstu2016may.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - private static void copyElement(org.hl7.fhir.dstu3.model.Element src, org.hl7.fhir.dstu2016may.model.Element tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - for (org.hl7.fhir.dstu3.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - private static void copyBackboneElement(org.hl7.fhir.dstu2016may.model.BackboneElement src, org.hl7.fhir.dstu3.model.BackboneElement tgt) throws FHIRException { - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Extension e : src.getModifierExtension()) { - tgt.addModifierExtension(convertExtension(e)); - } - } - - private static void copyBackboneElement(org.hl7.fhir.dstu3.model.BackboneElement src, org.hl7.fhir.dstu2016may.model.BackboneElement tgt) throws FHIRException { - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Extension e : src.getModifierExtension()) { - tgt.addModifierExtension(convertExtension(e)); - } - } - - public static org.hl7.fhir.dstu3.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.dstu2016may.model.Base64BinaryType src) throws FHIRException { - org.hl7.fhir.dstu3.model.Base64BinaryType tgt = new org.hl7.fhir.dstu3.model.Base64BinaryType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.dstu3.model.Base64BinaryType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.Base64BinaryType tgt = new org.hl7.fhir.dstu2016may.model.Base64BinaryType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.BooleanType convertBoolean(org.hl7.fhir.dstu2016may.model.BooleanType src) throws FHIRException { - org.hl7.fhir.dstu3.model.BooleanType tgt = new org.hl7.fhir.dstu3.model.BooleanType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.BooleanType convertBoolean(org.hl7.fhir.dstu3.model.BooleanType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.BooleanType tgt = new org.hl7.fhir.dstu2016may.model.BooleanType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeType convertCode(org.hl7.fhir.dstu2016may.model.CodeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.CodeType tgt = new org.hl7.fhir.dstu3.model.CodeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeType convertCode(org.hl7.fhir.dstu3.model.CodeType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.CodeType tgt = new org.hl7.fhir.dstu2016may.model.CodeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DateType convertDate(org.hl7.fhir.dstu2016may.model.DateType src) throws FHIRException { - org.hl7.fhir.dstu3.model.DateType tgt = new org.hl7.fhir.dstu3.model.DateType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.DateType convertDate(org.hl7.fhir.dstu3.model.DateType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.DateType tgt = new org.hl7.fhir.dstu2016may.model.DateType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DateTimeType convertDateTime(org.hl7.fhir.dstu2016may.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.DateTimeType tgt = new org.hl7.fhir.dstu3.model.DateTimeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.DateTimeType convertDateTime(org.hl7.fhir.dstu3.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.DateTimeType tgt = new org.hl7.fhir.dstu2016may.model.DateTimeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DecimalType convertDecimal(org.hl7.fhir.dstu2016may.model.DecimalType src) throws FHIRException { - org.hl7.fhir.dstu3.model.DecimalType tgt = new org.hl7.fhir.dstu3.model.DecimalType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.DecimalType convertDecimal(org.hl7.fhir.dstu3.model.DecimalType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.DecimalType tgt = new org.hl7.fhir.dstu2016may.model.DecimalType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.IdType convertId(org.hl7.fhir.dstu2016may.model.IdType src) throws FHIRException { - org.hl7.fhir.dstu3.model.IdType tgt = new org.hl7.fhir.dstu3.model.IdType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.IdType convertId(org.hl7.fhir.dstu3.model.IdType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.IdType tgt = new org.hl7.fhir.dstu2016may.model.IdType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.InstantType convertInstant(org.hl7.fhir.dstu2016may.model.InstantType src) throws FHIRException { - org.hl7.fhir.dstu3.model.InstantType tgt = new org.hl7.fhir.dstu3.model.InstantType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.InstantType convertInstant(org.hl7.fhir.dstu3.model.InstantType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.InstantType tgt = new org.hl7.fhir.dstu2016may.model.InstantType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.IntegerType convertInteger(org.hl7.fhir.dstu2016may.model.IntegerType src) throws FHIRException { - org.hl7.fhir.dstu3.model.IntegerType tgt = new org.hl7.fhir.dstu3.model.IntegerType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.IntegerType convertInteger(org.hl7.fhir.dstu3.model.IntegerType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.IntegerType tgt = new org.hl7.fhir.dstu2016may.model.IntegerType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MarkdownType convertMarkdown(org.hl7.fhir.dstu2016may.model.MarkdownType src) throws FHIRException { - org.hl7.fhir.dstu3.model.MarkdownType tgt = new org.hl7.fhir.dstu3.model.MarkdownType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.MarkdownType convertMarkdown(org.hl7.fhir.dstu3.model.MarkdownType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.MarkdownType tgt = new org.hl7.fhir.dstu2016may.model.MarkdownType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OidType convertOid(org.hl7.fhir.dstu2016may.model.OidType src) throws FHIRException { - org.hl7.fhir.dstu3.model.OidType tgt = new org.hl7.fhir.dstu3.model.OidType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OidType convertOid(org.hl7.fhir.dstu3.model.OidType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.OidType tgt = new org.hl7.fhir.dstu2016may.model.OidType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PositiveIntType convertPositiveInt(org.hl7.fhir.dstu2016may.model.PositiveIntType src) throws FHIRException { - org.hl7.fhir.dstu3.model.PositiveIntType tgt = new org.hl7.fhir.dstu3.model.PositiveIntType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.PositiveIntType convertPositiveInt(org.hl7.fhir.dstu3.model.PositiveIntType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.PositiveIntType tgt = new org.hl7.fhir.dstu2016may.model.PositiveIntType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StringType convertString(org.hl7.fhir.dstu2016may.model.StringType src) throws FHIRException { - org.hl7.fhir.dstu3.model.StringType tgt = new org.hl7.fhir.dstu3.model.StringType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StringType convertString(org.hl7.fhir.dstu3.model.StringType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.StringType tgt = new org.hl7.fhir.dstu2016may.model.StringType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TimeType convertTime(org.hl7.fhir.dstu2016may.model.TimeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.TimeType tgt = new org.hl7.fhir.dstu3.model.TimeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TimeType convertTime(org.hl7.fhir.dstu3.model.TimeType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.TimeType tgt = new org.hl7.fhir.dstu2016may.model.TimeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.dstu2016may.model.UnsignedIntType src) throws FHIRException { - org.hl7.fhir.dstu3.model.UnsignedIntType tgt = new org.hl7.fhir.dstu3.model.UnsignedIntType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.dstu3.model.UnsignedIntType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.UnsignedIntType tgt = new org.hl7.fhir.dstu2016may.model.UnsignedIntType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.UriType convertUri(org.hl7.fhir.dstu2016may.model.UriType src) throws FHIRException { - org.hl7.fhir.dstu3.model.UriType tgt = new org.hl7.fhir.dstu3.model.UriType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.UriType convertUri(org.hl7.fhir.dstu3.model.UriType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.UriType tgt = new org.hl7.fhir.dstu2016may.model.UriType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.UuidType convertUuid(org.hl7.fhir.dstu2016may.model.UuidType src) throws FHIRException { - org.hl7.fhir.dstu3.model.UuidType tgt = new org.hl7.fhir.dstu3.model.UuidType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.UuidType convertUuid(org.hl7.fhir.dstu3.model.UuidType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.UuidType tgt = new org.hl7.fhir.dstu2016may.model.UuidType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Extension convertExtension(org.hl7.fhir.dstu2016may.model.Extension src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Extension tgt = new org.hl7.fhir.dstu3.model.Extension(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Extension convertExtension(org.hl7.fhir.dstu3.model.Extension src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Extension tgt = new org.hl7.fhir.dstu2016may.model.Extension(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Narrative convertNarrative(org.hl7.fhir.dstu2016may.model.Narrative src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Narrative tgt = new org.hl7.fhir.dstu3.model.Narrative(); - copyElement(src, tgt); - tgt.setStatus(convertNarrativeStatus(src.getStatus())); - tgt.setDiv(src.getDiv()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Narrative convertNarrative(org.hl7.fhir.dstu3.model.Narrative src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Narrative tgt = new org.hl7.fhir.dstu2016may.model.Narrative(); - copyElement(src, tgt); - tgt.setStatus(convertNarrativeStatus(src.getStatus())); - tgt.setDiv(src.getDiv()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GENERATED: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.GENERATED; - case EXTENSIONS: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EXTENSIONS; - case ADDITIONAL: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.ADDITIONAL; - case EMPTY: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EMPTY; - default: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GENERATED: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.GENERATED; - case EXTENSIONS: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.EXTENSIONS; - case ADDITIONAL: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.ADDITIONAL; - case EMPTY: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.EMPTY; - default: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.Age convertAge(org.hl7.fhir.dstu2016may.model.Age src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Age tgt = new org.hl7.fhir.dstu3.model.Age(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Age convertAge(org.hl7.fhir.dstu3.model.Age src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Age tgt = new org.hl7.fhir.dstu2016may.model.Age(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - - public static org.hl7.fhir.dstu3.model.Annotation convertAnnotation(org.hl7.fhir.dstu2016may.model.Annotation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Annotation tgt = new org.hl7.fhir.dstu3.model.Annotation(); - copyElement(src, tgt); - tgt.setAuthor(convertType(src.getAuthor())); - if (src.hasTime()) - tgt.setTime(src.getTime()); - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Annotation convertAnnotation(org.hl7.fhir.dstu3.model.Annotation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Annotation tgt = new org.hl7.fhir.dstu2016may.model.Annotation(); - copyElement(src, tgt); - tgt.setAuthor(convertType(src.getAuthor())); - if (src.hasTime()) - tgt.setTime(src.getTime()); - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Attachment convertAttachment(org.hl7.fhir.dstu2016may.model.Attachment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Attachment tgt = new org.hl7.fhir.dstu3.model.Attachment(); - copyElement(src, tgt); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasData()) - tgt.setData(src.getData()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasSize()) - tgt.setSize(src.getSize()); - if (src.hasHash()) - tgt.setHash(src.getHash()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasCreation()) - tgt.setCreation(src.getCreation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Attachment convertAttachment(org.hl7.fhir.dstu3.model.Attachment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Attachment tgt = new org.hl7.fhir.dstu2016may.model.Attachment(); - copyElement(src, tgt); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasData()) - tgt.setData(src.getData()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasSize()) - tgt.setSize(src.getSize()); - if (src.hasHash()) - tgt.setHash(src.getHash()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasCreation()) - tgt.setCreation(src.getCreation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.dstu2016may.model.CodeableConcept src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CodeableConcept tgt = new org.hl7.fhir.dstu3.model.CodeableConcept(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCoding()) - tgt.addCoding(convertCoding(t)); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.dstu3.model.CodeableConcept src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeableConcept tgt = new org.hl7.fhir.dstu2016may.model.CodeableConcept(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCoding()) - tgt.addCoding(convertCoding(t)); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Coding convertCoding(org.hl7.fhir.dstu2016may.model.Coding src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Coding tgt = new org.hl7.fhir.dstu3.model.Coding(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasUserSelected()) - tgt.setUserSelected(src.getUserSelected()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Coding convertCoding(org.hl7.fhir.dstu3.model.Coding src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Coding tgt = new org.hl7.fhir.dstu2016may.model.Coding(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasUserSelected()) - tgt.setUserSelected(src.getUserSelected()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Count convertCount(org.hl7.fhir.dstu2016may.model.Count src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Count tgt = new org.hl7.fhir.dstu3.model.Count(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Count convertCount(org.hl7.fhir.dstu3.model.Count src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Count tgt = new org.hl7.fhir.dstu2016may.model.Count(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Distance convertDistance(org.hl7.fhir.dstu2016may.model.Distance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Distance tgt = new org.hl7.fhir.dstu3.model.Distance(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Distance convertDistance(org.hl7.fhir.dstu3.model.Distance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Distance tgt = new org.hl7.fhir.dstu2016may.model.Distance(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Duration convertDuration(org.hl7.fhir.dstu2016may.model.Duration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Duration tgt = new org.hl7.fhir.dstu3.model.Duration(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Duration convertDuration(org.hl7.fhir.dstu3.model.Duration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Duration tgt = new org.hl7.fhir.dstu2016may.model.Duration(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Money convertMoney(org.hl7.fhir.dstu2016may.model.Money src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Money tgt = new org.hl7.fhir.dstu3.model.Money(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Money convertMoney(org.hl7.fhir.dstu3.model.Money src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Money tgt = new org.hl7.fhir.dstu2016may.model.Money(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Identifier convertIdentifier(org.hl7.fhir.dstu2016may.model.Identifier src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Identifier tgt = new org.hl7.fhir.dstu3.model.Identifier(); - copyElement(src, tgt); - tgt.setUse(convertIdentifierUse(src.getUse())); - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setAssigner(convertReference(src.getAssigner())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Identifier convertIdentifier(org.hl7.fhir.dstu3.model.Identifier src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Identifier tgt = new org.hl7.fhir.dstu2016may.model.Identifier(); - copyElement(src, tgt); - tgt.setUse(convertIdentifierUse(src.getUse())); - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setAssigner(convertReference(src.getAssigner())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.USUAL; - case OFFICIAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.OFFICIAL; - case TEMP: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.TEMP; - case SECONDARY: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.SECONDARY; - default: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.dstu3.model.Identifier.IdentifierUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.USUAL; - case OFFICIAL: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.OFFICIAL; - case TEMP: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.TEMP; - case SECONDARY: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.SECONDARY; - default: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.NULL; - } - } - - - public static org.hl7.fhir.dstu3.model.Period convertPeriod(org.hl7.fhir.dstu2016may.model.Period src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Period tgt = new org.hl7.fhir.dstu3.model.Period(); - copyElement(src, tgt); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Period convertPeriod(org.hl7.fhir.dstu3.model.Period src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Period tgt = new org.hl7.fhir.dstu2016may.model.Period(); - copyElement(src, tgt); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Quantity convertQuantity(org.hl7.fhir.dstu2016may.model.Quantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Quantity tgt = new org.hl7.fhir.dstu3.model.Quantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Quantity convertQuantity(org.hl7.fhir.dstu3.model.Quantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Quantity tgt = new org.hl7.fhir.dstu2016may.model.Quantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LESS_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_THAN; - case LESS_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_OR_EQUAL; - case GREATER_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; - case GREATER_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_THAN; - default: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.dstu3.model.Quantity.QuantityComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LESS_THAN: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.LESS_THAN; - case LESS_OR_EQUAL: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.LESS_OR_EQUAL; - case GREATER_OR_EQUAL: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; - case GREATER_THAN: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.GREATER_THAN; - default: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.Range convertRange(org.hl7.fhir.dstu2016may.model.Range src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Range tgt = new org.hl7.fhir.dstu3.model.Range(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Range convertRange(org.hl7.fhir.dstu3.model.Range src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Range tgt = new org.hl7.fhir.dstu2016may.model.Range(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Ratio convertRatio(org.hl7.fhir.dstu2016may.model.Ratio src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Ratio tgt = new org.hl7.fhir.dstu3.model.Ratio(); - copyElement(src, tgt); - tgt.setNumerator(convertQuantity(src.getNumerator())); - tgt.setDenominator(convertQuantity(src.getDenominator())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Ratio convertRatio(org.hl7.fhir.dstu3.model.Ratio src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Ratio tgt = new org.hl7.fhir.dstu2016may.model.Ratio(); - copyElement(src, tgt); - tgt.setNumerator(convertQuantity(src.getNumerator())); - tgt.setDenominator(convertQuantity(src.getDenominator())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Reference convertReference(org.hl7.fhir.dstu2016may.model.Reference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Reference tgt = new org.hl7.fhir.dstu3.model.Reference(); - copyElement(src, tgt); - if (src.hasReference()) - tgt.setReference(src.getReference()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Reference convertReference(org.hl7.fhir.dstu3.model.Reference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Reference tgt = new org.hl7.fhir.dstu2016may.model.Reference(); - copyElement(src, tgt); - if (src.hasReference()) - tgt.setReference(src.getReference()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SampledData convertSampledData(org.hl7.fhir.dstu2016may.model.SampledData src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.SampledData tgt = new org.hl7.fhir.dstu3.model.SampledData(); - copyElement(src, tgt); - tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); - tgt.setPeriod(src.getPeriod()); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasLowerLimit()) - tgt.setLowerLimit(src.getLowerLimit()); - if (src.hasUpperLimit()) - tgt.setUpperLimit(src.getUpperLimit()); - tgt.setDimensions(src.getDimensions()); - tgt.setData(src.getData()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.SampledData convertSampledData(org.hl7.fhir.dstu3.model.SampledData src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.SampledData tgt = new org.hl7.fhir.dstu2016may.model.SampledData(); - copyElement(src, tgt); - tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); - tgt.setPeriod(src.getPeriod()); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasLowerLimit()) - tgt.setLowerLimit(src.getLowerLimit()); - if (src.hasUpperLimit()) - tgt.setUpperLimit(src.getUpperLimit()); - tgt.setDimensions(src.getDimensions()); - tgt.setData(src.getData()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Signature convertSignature(org.hl7.fhir.dstu2016may.model.Signature src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Signature tgt = new org.hl7.fhir.dstu3.model.Signature(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - tgt.setWhen(src.getWhen()); - tgt.setWho(convertType(src.getWho())); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Signature convertSignature(org.hl7.fhir.dstu3.model.Signature src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Signature tgt = new org.hl7.fhir.dstu2016may.model.Signature(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - tgt.setWhen(src.getWhen()); - tgt.setWho(convertType(src.getWho())); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Address convertAddress(org.hl7.fhir.dstu2016may.model.Address src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Address tgt = new org.hl7.fhir.dstu3.model.Address(); - copyElement(src, tgt); - tgt.setUse(convertAddressUse(src.getUse())); - tgt.setType(convertAddressType(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getLine()) - tgt.addLine(t.getValue()); - if (src.hasCity()) - tgt.setCity(src.getCity()); - if (src.hasDistrict()) - tgt.setDistrict(src.getDistrict()); - if (src.hasState()) - tgt.setState(src.getState()); - if (src.hasPostalCode()) - tgt.setPostalCode(src.getPostalCode()); - if (src.hasCountry()) - tgt.setCountry(src.getCountry()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Address convertAddress(org.hl7.fhir.dstu3.model.Address src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Address tgt = new org.hl7.fhir.dstu2016may.model.Address(); - copyElement(src, tgt); - tgt.setUse(convertAddressUse(src.getUse())); - tgt.setType(convertAddressType(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getLine()) - tgt.addLine(t.getValue()); - if (src.hasCity()) - tgt.setCity(src.getCity()); - if (src.hasDistrict()) - tgt.setDistrict(src.getDistrict()); - if (src.hasState()) - tgt.setState(src.getState()); - if (src.hasPostalCode()) - tgt.setPostalCode(src.getPostalCode()); - if (src.hasCountry()) - tgt.setCountry(src.getCountry()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Address.AddressUse convertAddressUse(org.hl7.fhir.dstu2016may.model.Address.AddressUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.dstu3.model.Address.AddressUse.HOME; - case WORK: return org.hl7.fhir.dstu3.model.Address.AddressUse.WORK; - case TEMP: return org.hl7.fhir.dstu3.model.Address.AddressUse.TEMP; - case OLD: return org.hl7.fhir.dstu3.model.Address.AddressUse.OLD; - default: return org.hl7.fhir.dstu3.model.Address.AddressUse.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Address.AddressUse convertAddressUse(org.hl7.fhir.dstu3.model.Address.AddressUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.HOME; - case WORK: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.WORK; - case TEMP: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.TEMP; - case OLD: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.OLD; - default: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.Address.AddressType convertAddressType(org.hl7.fhir.dstu2016may.model.Address.AddressType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case POSTAL: return org.hl7.fhir.dstu3.model.Address.AddressType.POSTAL; - case PHYSICAL: return org.hl7.fhir.dstu3.model.Address.AddressType.PHYSICAL; - case BOTH: return org.hl7.fhir.dstu3.model.Address.AddressType.BOTH; - default: return org.hl7.fhir.dstu3.model.Address.AddressType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Address.AddressType convertAddressType(org.hl7.fhir.dstu3.model.Address.AddressType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case POSTAL: return org.hl7.fhir.dstu2016may.model.Address.AddressType.POSTAL; - case PHYSICAL: return org.hl7.fhir.dstu2016may.model.Address.AddressType.PHYSICAL; - case BOTH: return org.hl7.fhir.dstu2016may.model.Address.AddressType.BOTH; - default: return org.hl7.fhir.dstu2016may.model.Address.AddressType.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ContactPoint convertContactPoint(org.hl7.fhir.dstu2016may.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactPoint tgt = new org.hl7.fhir.dstu3.model.ContactPoint(); - copyElement(src, tgt); - tgt.setSystem(convertContactPointSystem(src.getSystem())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setUse(convertContactPointUse(src.getUse())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ContactPoint convertContactPoint(org.hl7.fhir.dstu3.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ContactPoint tgt = new org.hl7.fhir.dstu2016may.model.ContactPoint(); - copyElement(src, tgt); - tgt.setSystem(convertContactPointSystem(src.getSystem())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setUse(convertContactPointUse(src.getUse())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHONE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PHONE; - case FAX: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.FAX; - case EMAIL: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.EMAIL; - case PAGER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PAGER; - case OTHER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.URL; - default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHONE: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.PHONE; - case FAX: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.FAX; - case EMAIL: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.EMAIL; - case PAGER: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.PAGER; - case URL: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.OTHER; - default: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.HOME; - case WORK: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.WORK; - case TEMP: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.TEMP; - case OLD: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.OLD; - case MOBILE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.MOBILE; - default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.HOME; - case WORK: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.WORK; - case TEMP: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.TEMP; - case OLD: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.OLD; - case MOBILE: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.MOBILE; - default: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition convertElementDefinition(org.hl7.fhir.dstu2016may.model.ElementDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition tgt = new org.hl7.fhir.dstu3.model.ElementDefinition(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - for (org.hl7.fhir.dstu2016may.model.Enumeration t : src.getRepresentation()) - tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); - if (src.hasName()) - tgt.setSliceName(src.getName()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); - if (src.hasShort()) - tgt.setShort(src.getShort()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasComments()) - tgt.setComment(src.getComments()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); - if (src.hasContentReference()) - tgt.setContentReference(src.getContentReference()); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent t : src.getType()) - tgt.addType(convertTypeRefComponent(t)); - tgt.setDefaultValue(convertType(src.getDefaultValue())); - if (src.hasMeaningWhenMissing()) - tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); - tgt.setFixed(convertType(src.getFixed())); - tgt.setPattern(convertType(src.getPattern())); - if (src.hasExample()) - tgt.addExample().setLabel("General").setValue(convertType(src.getExample())); - tgt.setMinValue(convertType(src.getMinValue())); - tgt.setMaxValue(convertType(src.getMaxValue())); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - for (org.hl7.fhir.dstu2016may.model.IdType t : src.getCondition()) - tgt.addCondition(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) - tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); - if (src.hasMustSupport()) - tgt.setMustSupport(src.getMustSupport()); - if (src.hasIsModifier()) - tgt.setIsModifier(src.getIsModifier()); - if (src.hasIsSummary()) - tgt.setIsSummary(src.getIsSummary()); - tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertElementDefinitionMappingComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition convertElementDefinition(org.hl7.fhir.dstu3.model.ElementDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getRepresentation()) - tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); - if (src.hasSliceName()) - tgt.setName(src.getSliceName()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - if (src.hasSlicing()) - tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); - if (src.hasShort()) - tgt.setShort(src.getShort()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasComment()) - tgt.setComments(src.getComment()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasBase()) - tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); - if (src.hasContentReference()) - tgt.setContentReference(src.getContentReference()); - for (org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent t : src.getType()) - tgt.addType(convertTypeRefComponent(t)); - tgt.setDefaultValue(convertType(src.getDefaultValue())); - if (src.hasMeaningWhenMissing()) - tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); - tgt.setFixed(convertType(src.getFixed())); - tgt.setPattern(convertType(src.getPattern())); - if (src.hasExample()) - tgt.setExample(convertType(src.getExample().get(0).getValue())); - tgt.setMinValue(convertType(src.getMinValue())); - tgt.setMaxValue(convertType(src.getMaxValue())); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - for (org.hl7.fhir.dstu3.model.IdType t : src.getCondition()) - tgt.addCondition(t.getValue()); - for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) - tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); - if (src.hasMustSupport()) - tgt.setMustSupport(src.getMustSupport()); - if (src.hasIsModifier()) - tgt.setIsModifier(src.getIsModifier()); - if (src.hasIsSummary()) - tgt.setIsSummary(src.getIsSummary()); - if (src.hasBinding()) - tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); - for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertElementDefinitionMappingComponent(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XMLATTR: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XMLATTR; - case XMLTEXT: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XMLTEXT; - case TYPEATTR: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.TYPEATTR; - case CDATEXT: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.CDATEXT; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XMLATTR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.XMLATTR; - case XMLTEXT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.XMLTEXT; - case TYPEATTR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.TYPEATTR; - case CDATEXT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.CDATEXT; - default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getDiscriminator()) - tgt.addDiscriminator(ProfileUtilities.interpretR2Discriminator(t.getValue())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasOrdered()) - tgt.setOrdered(src.getOrdered()); - tgt.setRules(convertSlicingRules(src.getRules())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent(); - copyElement(src, tgt); - for (ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) - tgt.addDiscriminator(ProfileUtilities.buildR2Discriminator(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasOrdered()) - tgt.setOrdered(src.getOrdered()); - tgt.setRules(convertSlicingRules(src.getRules())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLOSED: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.CLOSED; - case OPEN: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPEN; - case OPENATEND: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPENATEND; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLOSED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.CLOSED; - case OPEN: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.OPEN; - case OPENATEND: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.OPENATEND; - default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getProfile()) { - if (src.getCode().equals("Reference")) - tgt.setTargetProfile(t.getValueAsString()); - else - tgt.setProfile(t.getValueAsString()); - } - for (org.hl7.fhir.dstu2016may.model.Enumeration t : src.getAggregation()) - tgt.addAggregation(convertAggregationMode(t.getValue())); - tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasCode() && "Reference".equals(src.getCode())) - tgt.addProfile(src.getTargetProfile()); - else - tgt.addProfile(src.getProfile()); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getAggregation()) - tgt.addAggregation(convertAggregationMode(t.getValue())); - tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONTAINED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.CONTAINED; - case REFERENCED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.REFERENCED; - case BUNDLED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.BUNDLED; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONTAINED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.CONTAINED; - case REFERENCED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.REFERENCED; - case BUNDLED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.BUNDLED; - default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EITHER: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.EITHER; - case INDEPENDENT: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; - case SPECIFIC: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EITHER: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.EITHER; - case INDEPENDENT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; - case SPECIFIC: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; - default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent(); - copyElement(src, tgt); - tgt.setKey(src.getKey()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); - tgt.setHuman(src.getHuman()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - tgt.setXpath(src.getXpath()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent(); - copyElement(src, tgt); - tgt.setKey(src.getKey()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); - tgt.setHuman(src.getHuman()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - tgt.setXpath(src.getXpath()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ERROR: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.ERROR; - case WARNING: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.WARNING; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ERROR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.ERROR; - case WARNING: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.WARNING; - default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.REQUIRED; - case EXTENSIBLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXTENSIBLE; - case PREFERRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.PREFERRED; - case EXAMPLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXAMPLE; - default: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.dstu3.model.Enumerations.BindingStrength src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.REQUIRED; - case EXTENSIBLE: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.EXTENSIBLE; - case PREFERRED: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.PREFERRED; - case EXAMPLE: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.EXAMPLE; - default: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setMap(src.getMap()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setMap(src.getMap()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.HumanName convertHumanName(org.hl7.fhir.dstu2016may.model.HumanName src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.HumanName tgt = new org.hl7.fhir.dstu3.model.HumanName(); - copyElement(src, tgt); - tgt.setUse(convertNameUse(src.getUse())); - if (src.hasText()) - tgt.setText(src.getText()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getFamily()) - tgt.setFamily(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getGiven()) - tgt.addGiven(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getPrefix()) - tgt.addPrefix(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSuffix()) - tgt.addSuffix(t.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.HumanName convertHumanName(org.hl7.fhir.dstu3.model.HumanName src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.HumanName tgt = new org.hl7.fhir.dstu2016may.model.HumanName(); - copyElement(src, tgt); - tgt.setUse(convertNameUse(src.getUse())); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasFamily()) - tgt.addFamily(src.getFamily()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getGiven()) - tgt.addGiven(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getPrefix()) - tgt.addPrefix(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getSuffix()) - tgt.addSuffix(t.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.HumanName.NameUse convertNameUse(org.hl7.fhir.dstu2016may.model.HumanName.NameUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.USUAL; - case OFFICIAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OFFICIAL; - case TEMP: return org.hl7.fhir.dstu3.model.HumanName.NameUse.TEMP; - case NICKNAME: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NICKNAME; - case ANONYMOUS: return org.hl7.fhir.dstu3.model.HumanName.NameUse.ANONYMOUS; - case OLD: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OLD; - case MAIDEN: return org.hl7.fhir.dstu3.model.HumanName.NameUse.MAIDEN; - default: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.HumanName.NameUse convertNameUse(org.hl7.fhir.dstu3.model.HumanName.NameUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.USUAL; - case OFFICIAL: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.OFFICIAL; - case TEMP: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.TEMP; - case NICKNAME: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.NICKNAME; - case ANONYMOUS: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.ANONYMOUS; - case OLD: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.OLD; - case MAIDEN: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.MAIDEN; - default: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.Meta convertMeta(org.hl7.fhir.dstu2016may.model.Meta src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Meta tgt = new org.hl7.fhir.dstu3.model.Meta(); - copyElement(src, tgt); - if (src.hasVersionId()) - tgt.setVersionId(src.getVersionId()); - if (src.hasLastUpdated()) - tgt.setLastUpdated(src.getLastUpdated()); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getSecurity()) - tgt.addSecurity(convertCoding(t)); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Meta convertMeta(org.hl7.fhir.dstu3.model.Meta src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Meta tgt = new org.hl7.fhir.dstu2016may.model.Meta(); - copyElement(src, tgt); - if (src.hasVersionId()) - tgt.setVersionId(src.getVersionId()); - if (src.hasLastUpdated()) - tgt.setLastUpdated(src.getLastUpdated()); - for (org.hl7.fhir.dstu3.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurity()) - tgt.addSecurity(convertCoding(t)); - for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Timing convertTiming(org.hl7.fhir.dstu2016may.model.Timing src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Timing tgt = new org.hl7.fhir.dstu3.model.Timing(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.DateTimeType t : src.getEvent()) - tgt.addEvent(t.getValue()); - tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Timing convertTiming(org.hl7.fhir.dstu3.model.Timing src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Timing tgt = new org.hl7.fhir.dstu2016may.model.Timing(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.DateTimeType t : src.getEvent()) - tgt.addEvent(t.getValue()); - tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent(); - copyElement(src, tgt); - tgt.setBounds(convertType(src.getBounds())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - if (src.hasCountMax()) - tgt.setCountMax(src.getCountMax()); - if (src.hasDuration()) - tgt.setDuration(src.getDuration()); - if (src.hasDurationMax()) - tgt.setDurationMax(src.getDurationMax()); - tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); - if (src.hasFrequency()) - tgt.setFrequency(src.getFrequency()); - if (src.hasFrequencyMax()) - tgt.setFrequencyMax(src.getFrequencyMax()); - if (src.hasPeriod()) - tgt.setPeriod(src.getPeriod()); - if (src.hasPeriodMax()) - tgt.setPeriodMax(src.getPeriodMax()); - tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); - tgt.addWhen(convertEventTiming(src.getWhen())); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent(); - copyElement(src, tgt); - tgt.setBounds(convertType(src.getBounds())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - if (src.hasCountMax()) - tgt.setCountMax(src.getCountMax()); - if (src.hasDuration()) - tgt.setDuration(src.getDuration()); - if (src.hasDurationMax()) - tgt.setDurationMax(src.getDurationMax()); - tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); - if (src.hasFrequency()) - tgt.setFrequency(src.getFrequency()); - if (src.hasFrequencyMax()) - tgt.setFrequencyMax(src.getFrequencyMax()); - if (src.hasPeriod()) - tgt.setPeriod(src.getPeriod()); - if (src.hasPeriodMax()) - tgt.setPeriodMax(src.getPeriodMax()); - tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); - for (Enumeration t : src.getWhen()) - tgt.setWhen(convertEventTiming(t.getValue())); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case S: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.S; - case MIN: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MIN; - case H: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.H; - case D: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.D; - case WK: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.WK; - case MO: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MO; - case A: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.A; - default: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.dstu3.model.Timing.UnitsOfTime src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case S: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.S; - case MIN: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.MIN; - case H: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.H; - case D: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.D; - case WK: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.WK; - case MO: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.MO; - case A: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.A; - default: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.dstu2016may.model.Timing.EventTiming src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HS: return org.hl7.fhir.dstu3.model.Timing.EventTiming.HS; - case WAKE: return org.hl7.fhir.dstu3.model.Timing.EventTiming.WAKE; - case C: return org.hl7.fhir.dstu3.model.Timing.EventTiming.C; - case CM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CM; - case CD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CD; - case CV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CV; - case AC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.AC; - case ACM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACM; - case ACD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACD; - case ACV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACV; - case PC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PC; - case PCM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCM; - case PCD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCD; - case PCV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCV; - default: return org.hl7.fhir.dstu3.model.Timing.EventTiming.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.dstu3.model.Timing.EventTiming src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HS: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.HS; - case WAKE: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.WAKE; - case C: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.C; - case CM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CM; - case CD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CD; - case CV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CV; - case AC: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.AC; - case ACM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACM; - case ACD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACD; - case ACV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACV; - case PC: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PC; - case PCM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCM; - case PCD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCD; - case PCV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCV; - default: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.dstu2016may.model.SimpleQuantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.SimpleQuantity tgt = new org.hl7.fhir.dstu3.model.SimpleQuantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.dstu3.model.SimpleQuantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.SimpleQuantity tgt = new org.hl7.fhir.dstu2016may.model.SimpleQuantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Type convertType(org.hl7.fhir.dstu2016may.model.Type src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.dstu2016may.model.Base64BinaryType) - return convertBase64Binary((org.hl7.fhir.dstu2016may.model.Base64BinaryType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.BooleanType) - return convertBoolean((org.hl7.fhir.dstu2016may.model.BooleanType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.CodeType) - return convertCode((org.hl7.fhir.dstu2016may.model.CodeType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.DateType) - return convertDate((org.hl7.fhir.dstu2016may.model.DateType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.DateTimeType) - return convertDateTime((org.hl7.fhir.dstu2016may.model.DateTimeType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.DecimalType) - return convertDecimal((org.hl7.fhir.dstu2016may.model.DecimalType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.IdType) - return convertId((org.hl7.fhir.dstu2016may.model.IdType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.InstantType) - return convertInstant((org.hl7.fhir.dstu2016may.model.InstantType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.IntegerType) - return convertInteger((org.hl7.fhir.dstu2016may.model.IntegerType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.MarkdownType) - return convertMarkdown((org.hl7.fhir.dstu2016may.model.MarkdownType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.OidType) - return convertOid((org.hl7.fhir.dstu2016may.model.OidType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.PositiveIntType) - return convertPositiveInt((org.hl7.fhir.dstu2016may.model.PositiveIntType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.StringType) - return convertString((org.hl7.fhir.dstu2016may.model.StringType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.TimeType) - return convertTime((org.hl7.fhir.dstu2016may.model.TimeType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.UnsignedIntType) - return convertUnsignedInt((org.hl7.fhir.dstu2016may.model.UnsignedIntType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.UriType) - return convertUri((org.hl7.fhir.dstu2016may.model.UriType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.UuidType) - return convertUuid((org.hl7.fhir.dstu2016may.model.UuidType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Extension) - return convertExtension((org.hl7.fhir.dstu2016may.model.Extension) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Narrative) - return convertNarrative((org.hl7.fhir.dstu2016may.model.Narrative) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Age) - return convertAge((org.hl7.fhir.dstu2016may.model.Age) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Annotation) - return convertAnnotation((org.hl7.fhir.dstu2016may.model.Annotation) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Attachment) - return convertAttachment((org.hl7.fhir.dstu2016may.model.Attachment) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.CodeableConcept) - return convertCodeableConcept((org.hl7.fhir.dstu2016may.model.CodeableConcept) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Coding) - return convertCoding((org.hl7.fhir.dstu2016may.model.Coding) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Count) - return convertCount((org.hl7.fhir.dstu2016may.model.Count) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Distance) - return convertDistance((org.hl7.fhir.dstu2016may.model.Distance) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Duration) - return convertDuration((org.hl7.fhir.dstu2016may.model.Duration) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Identifier) - return convertIdentifier((org.hl7.fhir.dstu2016may.model.Identifier) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Money) - return convertMoney((org.hl7.fhir.dstu2016may.model.Money) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Period) - return convertPeriod((org.hl7.fhir.dstu2016may.model.Period) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Quantity) - return convertQuantity((org.hl7.fhir.dstu2016may.model.Quantity) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Range) - return convertRange((org.hl7.fhir.dstu2016may.model.Range) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Ratio) - return convertRatio((org.hl7.fhir.dstu2016may.model.Ratio) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Reference) - return convertReference((org.hl7.fhir.dstu2016may.model.Reference) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.SampledData) - return convertSampledData((org.hl7.fhir.dstu2016may.model.SampledData) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Signature) - return convertSignature((org.hl7.fhir.dstu2016may.model.Signature) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Address) - return convertAddress((org.hl7.fhir.dstu2016may.model.Address) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.ContactPoint) - return convertContactPoint((org.hl7.fhir.dstu2016may.model.ContactPoint) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.ElementDefinition) - return convertElementDefinition((org.hl7.fhir.dstu2016may.model.ElementDefinition) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.HumanName) - return convertHumanName((org.hl7.fhir.dstu2016may.model.HumanName) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Meta) - return convertMeta((org.hl7.fhir.dstu2016may.model.Meta) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Timing) - return convertTiming((org.hl7.fhir.dstu2016may.model.Timing) src); - throw new Error("Unknown type "+src.fhirType()); - } - - public static org.hl7.fhir.dstu2016may.model.Type convertType(org.hl7.fhir.dstu3.model.Type src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.dstu3.model.Base64BinaryType) - return convertBase64Binary((org.hl7.fhir.dstu3.model.Base64BinaryType) src); - if (src instanceof org.hl7.fhir.dstu3.model.BooleanType) - return convertBoolean((org.hl7.fhir.dstu3.model.BooleanType) src); - if (src instanceof org.hl7.fhir.dstu3.model.CodeType) - return convertCode((org.hl7.fhir.dstu3.model.CodeType) src); - if (src instanceof org.hl7.fhir.dstu3.model.DateType) - return convertDate((org.hl7.fhir.dstu3.model.DateType) src); - if (src instanceof org.hl7.fhir.dstu3.model.DateTimeType) - return convertDateTime((org.hl7.fhir.dstu3.model.DateTimeType) src); - if (src instanceof org.hl7.fhir.dstu3.model.DecimalType) - return convertDecimal((org.hl7.fhir.dstu3.model.DecimalType) src); - if (src instanceof org.hl7.fhir.dstu3.model.IdType) - return convertId((org.hl7.fhir.dstu3.model.IdType) src); - if (src instanceof org.hl7.fhir.dstu3.model.InstantType) - return convertInstant((org.hl7.fhir.dstu3.model.InstantType) src); - if (src instanceof org.hl7.fhir.dstu3.model.IntegerType) - return convertInteger((org.hl7.fhir.dstu3.model.IntegerType) src); - if (src instanceof org.hl7.fhir.dstu3.model.MarkdownType) - return convertMarkdown((org.hl7.fhir.dstu3.model.MarkdownType) src); - if (src instanceof org.hl7.fhir.dstu3.model.OidType) - return convertOid((org.hl7.fhir.dstu3.model.OidType) src); - if (src instanceof org.hl7.fhir.dstu3.model.PositiveIntType) - return convertPositiveInt((org.hl7.fhir.dstu3.model.PositiveIntType) src); - if (src instanceof org.hl7.fhir.dstu3.model.StringType) - return convertString((org.hl7.fhir.dstu3.model.StringType) src); - if (src instanceof org.hl7.fhir.dstu3.model.TimeType) - return convertTime((org.hl7.fhir.dstu3.model.TimeType) src); - if (src instanceof org.hl7.fhir.dstu3.model.UnsignedIntType) - return convertUnsignedInt((org.hl7.fhir.dstu3.model.UnsignedIntType) src); - if (src instanceof org.hl7.fhir.dstu3.model.UriType) - return convertUri((org.hl7.fhir.dstu3.model.UriType) src); - if (src instanceof org.hl7.fhir.dstu3.model.UuidType) - return convertUuid((org.hl7.fhir.dstu3.model.UuidType) src); - if (src instanceof org.hl7.fhir.dstu3.model.Extension) - return convertExtension((org.hl7.fhir.dstu3.model.Extension) src); - if (src instanceof org.hl7.fhir.dstu3.model.Narrative) - return convertNarrative((org.hl7.fhir.dstu3.model.Narrative) src); - if (src instanceof org.hl7.fhir.dstu3.model.Age) - return convertAge((org.hl7.fhir.dstu3.model.Age) src); - if (src instanceof org.hl7.fhir.dstu3.model.Annotation) - return convertAnnotation((org.hl7.fhir.dstu3.model.Annotation) src); - if (src instanceof org.hl7.fhir.dstu3.model.Attachment) - return convertAttachment((org.hl7.fhir.dstu3.model.Attachment) src); - if (src instanceof org.hl7.fhir.dstu3.model.CodeableConcept) - return convertCodeableConcept((org.hl7.fhir.dstu3.model.CodeableConcept) src); - if (src instanceof org.hl7.fhir.dstu3.model.Coding) - return convertCoding((org.hl7.fhir.dstu3.model.Coding) src); - if (src instanceof org.hl7.fhir.dstu3.model.Count) - return convertCount((org.hl7.fhir.dstu3.model.Count) src); - if (src instanceof org.hl7.fhir.dstu3.model.Distance) - return convertDistance((org.hl7.fhir.dstu3.model.Distance) src); - if (src instanceof org.hl7.fhir.dstu3.model.Duration) - return convertDuration((org.hl7.fhir.dstu3.model.Duration) src); - if (src instanceof org.hl7.fhir.dstu3.model.Identifier) - return convertIdentifier((org.hl7.fhir.dstu3.model.Identifier) src); - if (src instanceof org.hl7.fhir.dstu3.model.Money) - return convertMoney((org.hl7.fhir.dstu3.model.Money) src); - if (src instanceof org.hl7.fhir.dstu3.model.Period) - return convertPeriod((org.hl7.fhir.dstu3.model.Period) src); - if (src instanceof org.hl7.fhir.dstu3.model.Quantity) - return convertQuantity((org.hl7.fhir.dstu3.model.Quantity) src); - if (src instanceof org.hl7.fhir.dstu3.model.Range) - return convertRange((org.hl7.fhir.dstu3.model.Range) src); - if (src instanceof org.hl7.fhir.dstu3.model.Ratio) - return convertRatio((org.hl7.fhir.dstu3.model.Ratio) src); - if (src instanceof org.hl7.fhir.dstu3.model.Reference) - return convertReference((org.hl7.fhir.dstu3.model.Reference) src); - if (src instanceof org.hl7.fhir.dstu3.model.SampledData) - return convertSampledData((org.hl7.fhir.dstu3.model.SampledData) src); - if (src instanceof org.hl7.fhir.dstu3.model.Signature) - return convertSignature((org.hl7.fhir.dstu3.model.Signature) src); - if (src instanceof org.hl7.fhir.dstu3.model.Address) - return convertAddress((org.hl7.fhir.dstu3.model.Address) src); - if (src instanceof org.hl7.fhir.dstu3.model.ContactPoint) - return convertContactPoint((org.hl7.fhir.dstu3.model.ContactPoint) src); - if (src instanceof org.hl7.fhir.dstu3.model.ElementDefinition) - return convertElementDefinition((org.hl7.fhir.dstu3.model.ElementDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.HumanName) - return convertHumanName((org.hl7.fhir.dstu3.model.HumanName) src); - if (src instanceof org.hl7.fhir.dstu3.model.Meta) - return convertMeta((org.hl7.fhir.dstu3.model.Meta) src); - if (src instanceof org.hl7.fhir.dstu3.model.Timing) - return convertTiming((org.hl7.fhir.dstu3.model.Timing) src); - throw new Error("Unknown type "+src.fhirType()); - } - - private static void copyDomainResource(org.hl7.fhir.dstu2016may.model.DomainResource src, org.hl7.fhir.dstu3.model.DomainResource tgt) throws FHIRException { - copyResource(src, tgt); - tgt.setText(convertNarrative(src.getText())); - for (org.hl7.fhir.dstu2016may.model.Resource t : src.getContained()) - tgt.addContained(convertResource(t)); - for (org.hl7.fhir.dstu2016may.model.Extension t : src.getExtension()) - tgt.addExtension(convertExtension(t)); - for (org.hl7.fhir.dstu2016may.model.Extension t : src.getModifierExtension()) - tgt.addModifierExtension(convertExtension(t)); - } - private static void copyDomainResource(org.hl7.fhir.dstu3.model.DomainResource src, org.hl7.fhir.dstu2016may.model.DomainResource tgt) throws FHIRException { - copyResource(src, tgt); - if (src.hasText()) - tgt.setText(convertNarrative(src.getText())); - for (org.hl7.fhir.dstu3.model.Resource t : src.getContained()) - tgt.addContained(convertResource(t)); - for (org.hl7.fhir.dstu3.model.Extension t : src.getExtension()) - tgt.addExtension(convertExtension(t)); - for (org.hl7.fhir.dstu3.model.Extension t : src.getModifierExtension()) - tgt.addModifierExtension(convertExtension(t)); - } - public static org.hl7.fhir.dstu3.model.Parameters convertParameters(org.hl7.fhir.dstu2016may.model.Parameters src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Parameters tgt = new org.hl7.fhir.dstu3.model.Parameters(); - copyResource(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent t : src.getParameter()) - tgt.addParameter(convertParametersParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Parameters convertParameters(org.hl7.fhir.dstu3.model.Parameters src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Parameters tgt = new org.hl7.fhir.dstu2016may.model.Parameters(); - copyResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getParameter()) - tgt.addParameter(convertParametersParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - tgt.setResource(convertResource(src.getResource())); - for (org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent t : src.getPart()) - tgt.addPart(convertParametersParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - tgt.setResource(convertResource(src.getResource())); - for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getPart()) - tgt.addPart(convertParametersParameterComponent(t)); - return tgt; - } - - private static void copyResource(org.hl7.fhir.dstu2016may.model.Resource src, org.hl7.fhir.dstu3.model.Resource tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - tgt.setMeta(convertMeta(src.getMeta())); - if (src.hasImplicitRules()) - tgt.setImplicitRules(src.getImplicitRules()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - } - private static void copyResource(org.hl7.fhir.dstu3.model.Resource src, org.hl7.fhir.dstu2016may.model.Resource tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - if (src.hasMeta()) - tgt.setMeta(convertMeta(src.getMeta())); - if (src.hasImplicitRules()) - tgt.setImplicitRules(src.getImplicitRules()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - } - - public static org.hl7.fhir.dstu3.model.Binary convertBinary(org.hl7.fhir.dstu2016may.model.Binary src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Binary tgt = new org.hl7.fhir.dstu3.model.Binary(); - copyResource(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setContent(src.getContent()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Binary convertBinary(org.hl7.fhir.dstu3.model.Binary src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Binary tgt = new org.hl7.fhir.dstu2016may.model.Binary(); - copyResource(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setContent(src.getContent()); - return tgt; - } - - - public static org.hl7.fhir.dstu3.model.Bundle convertBundle(org.hl7.fhir.dstu2016may.model.Bundle src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle tgt = new org.hl7.fhir.dstu3.model.Bundle(); - copyResource(src, tgt); - tgt.setType(convertBundleType(src.getType())); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - for (org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent t : src.getEntry()) - tgt.addEntry(convertBundleEntryComponent(t)); - tgt.setSignature(convertSignature(src.getSignature())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle convertBundle(org.hl7.fhir.dstu3.model.Bundle src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle tgt = new org.hl7.fhir.dstu2016may.model.Bundle(); - copyResource(src, tgt); - tgt.setType(convertBundleType(src.getType())); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - for (org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent t : src.getEntry()) - tgt.addEntry(convertBundleEntryComponent(t)); - tgt.setSignature(convertSignature(src.getSignature())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Bundle.BundleType convertBundleType(org.hl7.fhir.dstu2016may.model.Bundle.BundleType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENT: return org.hl7.fhir.dstu3.model.Bundle.BundleType.DOCUMENT; - case MESSAGE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.MESSAGE; - case TRANSACTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTION; - case TRANSACTIONRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTIONRESPONSE; - case BATCH: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCH; - case BATCHRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCHRESPONSE; - case HISTORY: return org.hl7.fhir.dstu3.model.Bundle.BundleType.HISTORY; - case SEARCHSET: return org.hl7.fhir.dstu3.model.Bundle.BundleType.SEARCHSET; - case COLLECTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.COLLECTION; - default: return org.hl7.fhir.dstu3.model.Bundle.BundleType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Bundle.BundleType convertBundleType(org.hl7.fhir.dstu3.model.Bundle.BundleType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENT: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.DOCUMENT; - case MESSAGE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.MESSAGE; - case TRANSACTION: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.TRANSACTION; - case TRANSACTIONRESPONSE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.TRANSACTIONRESPONSE; - case BATCH: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.BATCH; - case BATCHRESPONSE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.BATCHRESPONSE; - case HISTORY: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.HISTORY; - case SEARCHSET: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.SEARCHSET; - case COLLECTION: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.COLLECTION; - default: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent(); - copyElement(src, tgt); - tgt.setRelation(src.getRelation()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent(); - copyElement(src, tgt); - tgt.setRelation(src.getRelation()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - if (src.hasFullUrl()) - tgt.setFullUrl(src.getFullUrl()); - tgt.setResource(convertResource(src.getResource())); - tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); - tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); - tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - if (src.hasFullUrl()) - tgt.setFullUrl(src.getFullUrl()); - tgt.setResource(convertResource(src.getResource())); - tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); - tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); - tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent(); - copyElement(src, tgt); - tgt.setMode(convertSearchEntryMode(src.getMode())); - if (src.hasScore()) - tgt.setScore(src.getScore()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent(); - copyElement(src, tgt); - tgt.setMode(convertSearchEntryMode(src.getMode())); - if (src.hasScore()) - tgt.setScore(src.getScore()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MATCH: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.MATCH; - case INCLUDE: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.INCLUDE; - case OUTCOME: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.OUTCOME; - default: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MATCH: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.MATCH; - case INCLUDE: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.INCLUDE; - case OUTCOME: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.OUTCOME; - default: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent(); - copyElement(src, tgt); - tgt.setMethod(convertHTTPVerb(src.getMethod())); - tgt.setUrl(src.getUrl()); - if (src.hasIfNoneMatch()) - tgt.setIfNoneMatch(src.getIfNoneMatch()); - if (src.hasIfModifiedSince()) - tgt.setIfModifiedSince(src.getIfModifiedSince()); - if (src.hasIfMatch()) - tgt.setIfMatch(src.getIfMatch()); - if (src.hasIfNoneExist()) - tgt.setIfNoneExist(src.getIfNoneExist()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent(); - copyElement(src, tgt); - tgt.setMethod(convertHTTPVerb(src.getMethod())); - tgt.setUrl(src.getUrl()); - if (src.hasIfNoneMatch()) - tgt.setIfNoneMatch(src.getIfNoneMatch()); - if (src.hasIfModifiedSince()) - tgt.setIfModifiedSince(src.getIfModifiedSince()); - if (src.hasIfMatch()) - tgt.setIfMatch(src.getIfMatch()); - if (src.hasIfNoneExist()) - tgt.setIfNoneExist(src.getIfNoneExist()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GET: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.GET; - case POST: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.POST; - case PUT: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.PUT; - case DELETE: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.DELETE; - default: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.dstu3.model.Bundle.HTTPVerb src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GET: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.GET; - case POST: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.POST; - case PUT: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.PUT; - case DELETE: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.DELETE; - default: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent(); - copyElement(src, tgt); - tgt.setStatus(src.getStatus()); - if (src.hasLocation()) - tgt.setLocation(src.getLocation()); - if (src.hasEtag()) - tgt.setEtag(src.getEtag()); - if (src.hasLastModified()) - tgt.setLastModified(src.getLastModified()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent(); - copyElement(src, tgt); - tgt.setStatus(src.getStatus()); - if (src.hasLocation()) - tgt.setLocation(src.getLocation()); - if (src.hasEtag()) - tgt.setEtag(src.getEtag()); - if (src.hasLastModified()) - tgt.setLastModified(src.getLastModified()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus convertConformanceResourceStatus(org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.RETIRED; - default: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.NULL; - } - } - - public static org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus convertConformanceResourceStatus(org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.RETIRED; - default: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.CodeSystem convertCodeSystem(org.hl7.fhir.dstu2016may.model.CodeSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CodeSystem tgt = new org.hl7.fhir.dstu3.model.CodeSystem(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent t : src.getContact()) - tgt.addContact(convertCodeSystemContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasCaseSensitive()) - tgt.setCaseSensitive(src.getCaseSensitive()); - if (src.hasValueSet()) - tgt.setValueSet(src.getValueSet()); - if (src.hasCompositional()) - tgt.setCompositional(src.getCompositional()); - if (src.hasVersionNeeded()) - tgt.setVersionNeeded(src.getVersionNeeded()); - tgt.setContent(convertCodeSystemContentMode(src.getContent())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) - tgt.addFilter(convertCodeSystemFilterComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent t : src.getProperty()) - tgt.addProperty(convertPropertyComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - - private static boolean isJurisdiction(CodeableConcept t) { - return t.hasCoding() && ("http://unstats.un.org/unsd/methods/m49/m49.htm".equals(t.getCoding().get(0).getSystem()) || "urn:iso:std:iso:3166".equals(t.getCoding().get(0).getSystem()) - || "https://www.usps.com/".equals(t.getCoding().get(0).getSystem())); - } - - public static org.hl7.fhir.dstu3.model.UsageContext convertCodeableConceptToUsageContext(org.hl7.fhir.dstu2016may.model.CodeableConcept t) throws FHIRException { - org.hl7.fhir.dstu3.model.UsageContext result = new org.hl7.fhir.dstu3.model.UsageContext(); - // todo: set type.. - result.setValue(convertCodeableConcept(t)); - return result; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem convertCodeSystem(org.hl7.fhir.dstu3.model.CodeSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertCodeSystemContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasCaseSensitive()) - tgt.setCaseSensitive(src.getCaseSensitive()); - if (src.hasValueSet()) - tgt.setValueSet(src.getValueSet()); - if (src.hasCompositional()) - tgt.setCompositional(src.getCompositional()); - if (src.hasVersionNeeded()) - tgt.setVersionNeeded(src.getVersionNeeded()); - tgt.setContent(convertCodeSystemContentMode(src.getContent())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - for (org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) - tgt.addFilter(convertCodeSystemFilterComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent t : src.getProperty()) - tgt.addProperty(convertPropertyComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTPRESENT: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; - case EXAMPLAR: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.EXAMPLE; - case FRAGMENT: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.FRAGMENT; - case COMPLETE: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.COMPLETE; - default: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.NULL; - } -} - - private static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTPRESENT: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; - case EXAMPLE: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.EXAMPLAR; - case FRAGMENT: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.FRAGMENT; - case COMPLETE: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.COMPLETE; - default: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.NULL; - } -} - - public static org.hl7.fhir.dstu3.model.ContactDetail convertCodeSystemContactComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent convertCodeSystemContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getOperator()) - try { - tgt.addOperator(CodeSystem.FilterOperator.fromCode(t.getValue())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (Enumeration t : src.getOperator()) - tgt.addOperator(t.getValue().toCode()); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent convertPropertyComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setType(convertPropertyType(src.getType())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent convertPropertyComponent(org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setType(convertPropertyType(src.getType())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODE: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.CODE; - case CODING: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.CODING; - case STRING: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.STRING; - case INTEGER: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.INTEGER; - case BOOLEAN: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.BOOLEAN; - case DATETIME: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.DATETIME; - default: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.NULL; - } -} - - private static org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODE: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.CODE; - case CODING: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.CODING; - case STRING: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.STRING; - case INTEGER: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.INTEGER; - case BOOLEAN: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.BOOLEAN; - case DATETIME: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.DATETIME; - default: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.NULL; - } -} - - public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); - for (ConceptDefinitionPropertyComponent t : src.getProperty()) - tgt.addProperty(convertConceptPropertyComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent t : src.getProperty()) - tgt.addProperty(convertConceptPropertyComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu2016may.model.CompartmentDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu3.model.CompartmentDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent t : src.getContact()) - tgt.addContact(convertCompartmentDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - tgt.setCode(convertCompartmentType(src.getCode())); - tgt.setSearch(src.getSearch()); - for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) - tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu3.model.CompartmentDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertCompartmentDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - tgt.setCode(convertCompartmentType(src.getCode())); - tgt.setSearch(src.getSearch()); - for (org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) - tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.PATIENT; - case ENCOUNTER: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.ENCOUNTER; - case RELATEDPERSON: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; - case PRACTITIONER: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.DEVICE; - default: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.NULL; - } -} - - private static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.PATIENT; - case ENCOUNTER: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.ENCOUNTER; - case RELATEDPERSON: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; - case PRACTITIONER: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.DEVICE; - default: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.NULL; - } -} - - public static org.hl7.fhir.dstu3.model.ContactDetail convertCompartmentDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent convertCompartmentDefinitionContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getParam()) - tgt.addParam(t.getValue()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getParam()) - tgt.addParam(t.getValue()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - - public static org.hl7.fhir.dstu3.model.ConceptMap convertConceptMap(org.hl7.fhir.dstu2016may.model.ConceptMap src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ConceptMap tgt = new org.hl7.fhir.dstu3.model.ConceptMap(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent t : src.getContact()) - tgt.addContact(convertConceptMapContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - tgt.setSource(convertType(src.getSource())); - tgt.setTarget(convertType(src.getTarget())); - for (org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent t : src.getElement()) { - List ws = convertSourceElementComponent(t); - for (SourceElementComponentWrapper w : ws) - getGroup(tgt, w.source, w.target).addElement(w.comp); - } - return tgt; - } - - private static ConceptMapGroupComponent getGroup(ConceptMap map, String srcs, String tgts) { - for (ConceptMapGroupComponent grp : map.getGroup()) { - if (grp.getSource().equals(srcs) && grp.getTarget().equals(tgts)) - return grp; - } - ConceptMapGroupComponent grp = map.addGroup(); - grp.setSource(srcs); - grp.setTarget(tgts); - return grp; - } - - - public static org.hl7.fhir.dstu2016may.model.ConceptMap convertConceptMap(org.hl7.fhir.dstu3.model.ConceptMap src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ConceptMap tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertConceptMapContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - tgt.setSource(convertType(src.getSource())); - tgt.setTarget(convertType(src.getTarget())); - for (org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g : src.getGroup()) - for (org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent t : g.getElement()) - tgt.addElement(convertSourceElementComponent(t, g)); - return tgt; - } - - - public static org.hl7.fhir.dstu3.model.ContactDetail convertConceptMapContactComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent convertConceptMapContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - private static class SourceElementComponentWrapper { - public SourceElementComponentWrapper(SourceElementComponent comp, String source, String target) { - super(); - this.source = source; - this.target = target; - this.comp = comp; - } - private String source; - private String target; - private org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent comp; - - } - public static List convertSourceElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent src) throws FHIRException { - List res = new ArrayList(); - if (src == null || src.isEmpty()) - return res; - for (org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent t : src.getTarget()) { - org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - tgt.addTarget(convertTargetElementComponent(t)); - res.add(new SourceElementComponentWrapper(tgt, src.getSystem(), t.getSystem())); - } - return res; - } - - public static org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent src, org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent(); - copyElement(src, tgt); - if (g.hasSource()) - tgt.setSystem(g.getSource()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent t : src.getTarget()) - tgt.addTarget(convertTargetElementComponent(t, g)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); - if (src.hasComments()) - tgt.setComment(src.getComments()); - for (org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) - tgt.addDependsOn(convertOtherElementComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent t : src.getProduct()) - tgt.addProduct(convertOtherElementComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent src, org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent(); - copyElement(src, tgt); - if (g.hasTarget()) - tgt.setSystem(g.getTarget()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); - if (src.hasComment()) - tgt.setComments(src.getComment()); - for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) - tgt.addDependsOn(convertOtherElementComponent(t)); - for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getProduct()) - tgt.addProduct(convertOtherElementComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUIVALENT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; - case EQUAL: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUAL; - case WIDER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.WIDER; - case SUBSUMES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SUBSUMES; - case NARROWER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NARROWER; - case SPECIALIZES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; - case INEXACT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.INEXACT; - case UNMATCHED: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.UNMATCHED; - case DISJOINT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.DISJOINT; - default: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NULL; - } - } - - public static org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUIVALENT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; - case EQUAL: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.EQUAL; - case WIDER: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.WIDER; - case SUBSUMES: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.SUBSUMES; - case NARROWER: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.NARROWER; - case SPECIALIZES: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; - case INEXACT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.INEXACT; - case UNMATCHED: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.UNMATCHED; - case DISJOINT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.DISJOINT; - default: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getElement()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent(); - copyElement(src, tgt); - tgt.setElement(src.getProperty()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - - public static org.hl7.fhir.dstu3.model.CapabilityStatement convertConformance(org.hl7.fhir.dstu2016may.model.Conformance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent t : src.getContact()) - tgt.addContact(convertConformanceContactComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - tgt.setKind(convertConformanceStatementKind(src.getKind())); - tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); - tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); - tgt.setFhirVersion(src.getFhirVersion()); - tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getFormat()) - tgt.addFormat(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent t : src.getRest()) - tgt.addRest(convertConformanceRestComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent t : src.getMessaging()) - tgt.addMessaging(convertConformanceMessagingComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent t : src.getDocument()) - tgt.addDocument(convertConformanceDocumentComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance convertConformance(org.hl7.fhir.dstu3.model.CapabilityStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance tgt = new org.hl7.fhir.dstu2016may.model.Conformance(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertConformanceContactComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - tgt.setKind(convertConformanceStatementKind(src.getKind())); - tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); - tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); - tgt.setFhirVersion(src.getFhirVersion()); - tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getFormat()) - tgt.addFormat(t.getValue()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) - tgt.addRest(convertConformanceRestComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) - tgt.addMessaging(convertConformanceMessagingComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) - tgt.addDocument(convertConformanceDocumentComponent(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind convertConformanceStatementKind(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; - case CAPABILITY: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; - case REQUIREMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind convertConformanceStatementKind(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.INSTANCE; - case CAPABILITY: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.CAPABILITY; - case REQUIREMENTS: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.REQUIREMENTS; - default: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NO: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NO; - case EXTENSIONS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; - case ELEMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.ELEMENTS; - case BOTH: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.BOTH; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NO: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.NO; - case EXTENSIONS: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.EXTENSIONS; - case ELEMENTS: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.ELEMENTS; - case BOTH: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.BOTH; - default: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertConformanceContactComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent convertConformanceContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasReleaseDate()) - tgt.setReleaseDate(src.getReleaseDate()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasReleaseDate()) - tgt.setReleaseDate(src.getReleaseDate()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent convertConformanceRestComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent(); - copyElement(src, tgt); - tgt.setMode(convertRestfulConformanceMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent t : src.getResource()) - tgt.addResource(convertConformanceRestResourceComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertSystemInteractionComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent t : src.getOperation()) - tgt.addOperation(convertConformanceRestOperationComponent(t)); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getCompartment()) - tgt.addCompartment(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent convertConformanceRestComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent(); - copyElement(src, tgt); - tgt.setMode(convertRestfulConformanceMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) - tgt.addResource(convertConformanceRestResourceComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertSystemInteractionComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) - tgt.addOperation(convertConformanceRestOperationComponent(t)); - for (org.hl7.fhir.dstu3.model.UriType t : src.getCompartment()) - tgt.addCompartment(t.getValue()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode convertRestfulConformanceMode(org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLIENT: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; - case SERVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.SERVER; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode convertRestfulConformanceMode(org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLIENT: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.CLIENT; - case SERVER: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.SERVER; - default: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); - copyElement(src, tgt); - if (src.hasCors()) - tgt.setCors(src.getCors()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getService()) - tgt.addService(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent t : src.getCertificate()) - tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent(); - copyElement(src, tgt); - if (src.hasCors()) - tgt.setCors(src.getCors()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getService()) - tgt.addService(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) - tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - for (org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertResourceInteractionComponent(t)); - tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); - if (src.hasReadHistory()) - tgt.setReadHistory(src.getReadHistory()); - if (src.hasUpdateCreate()) - tgt.setUpdateCreate(src.getUpdateCreate()); - if (src.hasConditionalCreate()) - tgt.setConditionalCreate(src.getConditionalCreate()); - if (src.hasConditionalUpdate()) - tgt.setConditionalUpdate(src.getConditionalUpdate()); - tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSearchInclude()) - tgt.addSearchInclude(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSearchRevInclude()) - tgt.addSearchRevInclude(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertResourceInteractionComponent(t)); - tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); - if (src.hasReadHistory()) - tgt.setReadHistory(src.getReadHistory()); - if (src.hasUpdateCreate()) - tgt.setUpdateCreate(src.getUpdateCreate()); - if (src.hasConditionalCreate()) - tgt.setConditionalCreate(src.getConditionalCreate()); - if (src.hasConditionalUpdate()) - tgt.setConditionalUpdate(src.getConditionalUpdate()); - tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); - for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchInclude()) - tgt.addSearchInclude(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchRevInclude()) - tgt.addSearchRevInclude(t.getValue()); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOVERSION: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; - case VERSIONED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; - case VERSIONEDUPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOVERSION: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.NOVERSION; - case VERSIONED: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.VERSIONED; - case VERSIONEDUPDATE: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.VERSIONEDUPDATE; - default: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; - case SINGLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; - case MULTIPLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.NOTSUPPORTED; - case SINGLE: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.SINGLE; - case MULTIPLE: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.MULTIPLE; - default: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertTypeRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertTypeRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case READ: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.READ; - case VREAD: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.VREAD; - case UPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; - case DELETE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.DELETE; - case HISTORYINSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; - case HISTORYTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; - case CREATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.CREATE; - case SEARCHTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case READ: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.READ; - case VREAD: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.VREAD; - case UPDATE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.UPDATE; - case DELETE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.DELETE; - case HISTORYINSTANCE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.HISTORYINSTANCE; - case HISTORYTYPE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.HISTORYTYPE; - case CREATE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.CREATE; - case SEARCHTYPE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.SEARCHTYPE; - default: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NUMBER: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NUMBER; - case DATE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.DATE; - case STRING: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.STRING; - case TOKEN: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.TOKEN; - case REFERENCE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.REFERENCE; - case COMPOSITE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.COMPOSITE; - case QUANTITY: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.QUANTITY; - case URI: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.URI; - default: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NULL; - } - } - - public static org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.dstu3.model.Enumerations.SearchParamType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NUMBER: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.NUMBER; - case DATE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.DATE; - case STRING: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.STRING; - case TOKEN: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.TOKEN; - case REFERENCE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.REFERENCE; - case COMPOSITE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.COMPOSITE; - case QUANTITY: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.QUANTITY; - case URI: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.URI; - default: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - tgt.setType(convertSearchParamType(src.getType())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - tgt.setType(convertSearchParamType(src.getType())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertSystemRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertSystemRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TRANSACTION: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; - case SEARCHSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; - case HISTORYSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TRANSACTION: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.TRANSACTION; - case SEARCHSYSTEM: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.SEARCHSYSTEM; - case HISTORYSYSTEM: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.HISTORYSYSTEM; - default: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent t : src.getEndpoint()) - tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); - if (src.hasReliableCache()) - tgt.setReliableCache(src.getReliableCache()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent t : src.getEvent()) - tgt.addEvent(convertConformanceMessagingEventComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) - tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); - if (src.hasReliableCache()) - tgt.setReliableCache(src.getReliableCache()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) - tgt.addEvent(convertConformanceMessagingEventComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); - copyElement(src, tgt); - tgt.setProtocol(convertCoding(src.getProtocol())); - tgt.setAddress(src.getAddress()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent(); - copyElement(src, tgt); - tgt.setProtocol(convertCoding(src.getProtocol())); - tgt.setAddress(src.getAddress()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); - copyElement(src, tgt); - tgt.setCode(convertCoding(src.getCode())); - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - tgt.setMode(convertConformanceEventMode(src.getMode())); - tgt.setFocus(src.getFocus()); - tgt.setRequest(convertReference(src.getRequest())); - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent(); - copyElement(src, tgt); - tgt.setCode(convertCoding(src.getCode())); - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - tgt.setMode(convertConformanceEventMode(src.getMode())); - tgt.setFocus(src.getFocus()); - tgt.setRequest(convertReference(src.getRequest())); - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode convertConformanceEventMode(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SENDER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.SENDER; - case RECEIVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.RECEIVER; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode convertConformanceEventMode(org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SENDER: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.SENDER; - case RECEIVER: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.RECEIVER; - default: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent(); - copyElement(src, tgt); - tgt.setMode(convertDocumentMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent(); - copyElement(src, tgt); - tgt.setMode(convertDocumentMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRODUCER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.PRODUCER; - case CONSUMER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.CONSUMER; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode convertDocumentMode(org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRODUCER: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.PRODUCER; - case CONSUMER: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.CONSUMER; - default: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.NULL; - } - } - - - public static org.hl7.fhir.dstu3.model.DataElement convertDataElement(org.hl7.fhir.dstu2016may.model.DataElement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DataElement tgt = new org.hl7.fhir.dstu3.model.DataElement(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent t : src.getContact()) - tgt.addContact(convertDataElementContactComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - tgt.setStringency(convertDataElementStringency(src.getStringency())); - for (org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent t : src.getMapping()) - tgt.addMapping(convertDataElementMappingComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.DataElement convertDataElement(org.hl7.fhir.dstu3.model.DataElement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.DataElement tgt = new org.hl7.fhir.dstu2016may.model.DataElement(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertDataElementContactComponent(t)); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - tgt.setStringency(convertDataElementStringency(src.getStringency())); - for (org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent t : src.getMapping()) - tgt.addMapping(convertDataElementMappingComponent(t)); - for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPARABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.COMPARABLE; - case FULLYSPECIFIED: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FULLYSPECIFIED; - case EQUIVALENT: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.EQUIVALENT; - case CONVERTABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.CONVERTABLE; - case SCALEABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.SCALEABLE; - case FLEXIBLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FLEXIBLE; - default: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.dstu3.model.DataElement.DataElementStringency src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPARABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.COMPARABLE; - case FULLYSPECIFIED: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.FULLYSPECIFIED; - case EQUIVALENT: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.EQUIVALENT; - case CONVERTABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.CONVERTABLE; - case SCALEABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.SCALEABLE; - case FLEXIBLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.FLEXIBLE; - default: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertDataElementContactComponent(org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent convertDataElementContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent tgt = new org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.dstu2016may.model.ImplementationGuide src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent t : src.getContact()) - tgt.addContact(convertImplementationGuideContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) - tgt.addDependency(convertImplementationGuideDependencyComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) - tgt.addPackage(convertImplementationGuidePackageComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) - tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getBinary()) - tgt.addBinary(t.getValue()); - tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.dstu3.model.ImplementationGuide src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertImplementationGuideContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) - tgt.addDependency(convertImplementationGuideDependencyComponent(t)); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) - tgt.addPackage(convertImplementationGuidePackageComponent(t)); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) - tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); - for (org.hl7.fhir.dstu3.model.UriType t : src.getBinary()) - tgt.addBinary(t.getValue()); - tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertImplementationGuideContactComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent convertImplementationGuideContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent(); - copyElement(src, tgt); - tgt.setType(convertGuideDependencyType(src.getType())); - tgt.setUri(src.getUri()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent(); - copyElement(src, tgt); - tgt.setType(convertGuideDependencyType(src.getType())); - tgt.setUri(src.getUri()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REFERENCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.REFERENCE; - case INCLUSION: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.INCLUSION; - default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REFERENCE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.REFERENCE; - case INCLUSION: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.INCLUSION; - default: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) - tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) - tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); - copyElement(src, tgt); - tgt.setExample(src.getExample()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAcronym()) - tgt.setAcronym(src.getAcronym()); - tgt.setSource(convertType(src.getSource())); - if (src.hasExampleFor()) - tgt.setExampleFor(convertReference(src.getExampleFor())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); - copyElement(src, tgt); - tgt.setExample(src.getExample()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAcronym()) - tgt.setAcronym(src.getAcronym()); - tgt.setSource(convertType(src.getSource())); - if (src.hasExampleFor()) - tgt.setExampleFor(convertReference(src.getExampleFor())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent(); - copyElement(src, tgt); - tgt.setSource(src.getSource()); - tgt.setTitle(src.getName()); - tgt.setKind(convertGuidePageKind(src.getKind())); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getType()) - tgt.addType(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getPackage()) - tgt.addPackage(t.getValue()); - if (src.hasFormat()) - tgt.setFormat(src.getFormat()); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) - tgt.addPage(convertImplementationGuidePageComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent(); - copyElement(src, tgt); - tgt.setSource(src.getSource()); - tgt.setName(src.getTitle()); - tgt.setKind(convertGuidePageKind(src.getKind())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getType()) - tgt.addType(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getPackage()) - tgt.addPackage(t.getValue()); - if (src.hasFormat()) - tgt.setFormat(src.getFormat()); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) - tgt.addPage(convertImplementationGuidePageComponent(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PAGE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.PAGE; - case EXAMPLE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.EXAMPLE; - case LIST: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.LIST; - case INCLUDE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.INCLUDE; - case DIRECTORY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DIRECTORY; - case DICTIONARY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DICTIONARY; - case TOC: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.TOC; - case RESOURCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.RESOURCE; - default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PAGE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.PAGE; - case EXAMPLE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.EXAMPLE; - case LIST: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.LIST; - case INCLUDE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.INCLUDE; - case DIRECTORY: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.DIRECTORY; - case DICTIONARY: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.DICTIONARY; - case TOC: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.TOC; - case RESOURCE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.RESOURCE; - default: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.NamingSystem convertNamingSystem(org.hl7.fhir.dstu2016may.model.NamingSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.NamingSystem tgt = new org.hl7.fhir.dstu3.model.NamingSystem(); - copyDomainResource(src, tgt); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertNamingSystemType(src.getKind())); - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent t : src.getContact()) - tgt.addContact(convertNamingSystemContactComponent(t)); - if (src.hasResponsible()) - tgt.setResponsible(src.getResponsible()); - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - for (org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) - tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); - tgt.setReplacedBy(convertReference(src.getReplacedBy())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.NamingSystem convertNamingSystem(org.hl7.fhir.dstu3.model.NamingSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.NamingSystem tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem(); - copyDomainResource(src, tgt); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertNamingSystemType(src.getKind())); - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertNamingSystemContactComponent(t)); - if (src.hasResponsible()) - tgt.setResponsible(src.getResponsible()); - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - for (org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) - tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); - tgt.setReplacedBy(convertReference(src.getReplacedBy())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODESYSTEM: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.CODESYSTEM; - case IDENTIFIER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.IDENTIFIER; - case ROOT: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.ROOT; - default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODESYSTEM: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.CODESYSTEM; - case IDENTIFIER: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.IDENTIFIER; - case ROOT: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.ROOT; - default: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertNamingSystemContactComponent(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent convertNamingSystemContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent(); - copyElement(src, tgt); - tgt.setType(convertNamingSystemIdentifierType(src.getType())); - tgt.setValue(src.getValue()); - if (src.hasPreferred()) - tgt.setPreferred(src.getPreferred()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent(); - copyElement(src, tgt); - tgt.setType(convertNamingSystemIdentifierType(src.getType())); - tgt.setValue(src.getValue()); - if (src.hasPreferred()) - tgt.setPreferred(src.getPreferred()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OID; - case UUID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.UUID; - case URI: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.URI; - case OTHER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OTHER; - default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OID: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.OID; - case UUID: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.UUID; - case URI: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.URI; - case OTHER: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.OTHER; - default: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.dstu2016may.model.OperationDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.OperationDefinition tgt = new org.hl7.fhir.dstu3.model.OperationDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertOperationKind(src.getKind())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent t : src.getContact()) - tgt.addContact(convertOperationDefinitionContactComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasIdempotent()) - tgt.setIdempotent(src.getIdempotent()); - tgt.setCode(src.getCode()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - tgt.setBase(convertReference(src.getBase())); - tgt.setSystem(src.getSystem()); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getType()) - tgt.addResource(t.getValue()); - tgt.setType(tgt.hasResource()); - tgt.setInstance(src.getInstance()); - for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) - tgt.addParameter(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.dstu3.model.OperationDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationDefinition tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertOperationKind(src.getKind())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertOperationDefinitionContactComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasIdempotent()) - tgt.setIdempotent(src.getIdempotent()); - tgt.setCode(src.getCode()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - tgt.setBase(convertReference(src.getBase())); - tgt.setSystem(src.getSystem()); - if (src.getType()) - for (org.hl7.fhir.dstu3.model.CodeType t : src.getResource()) - tgt.addType(t.getValue()); - tgt.setInstance(src.getInstance()); - for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) - tgt.addParameter(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OPERATION: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.OPERATION; - case QUERY: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.QUERY; - default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OPERATION: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.OPERATION; - case QUERY: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.QUERY; - default: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertOperationDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent convertOperationDefinitionContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setUse(convertOperationParameterUse(src.getUse())); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasType()) - tgt.setType(src.getType()); - tgt.setSearchType(convertSearchParamType(src.getSearchType())); - tgt.setProfile(convertReference(src.getProfile())); - tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); - for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) - tgt.addPart(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setUse(convertOperationParameterUse(src.getUse())); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasType()) - tgt.setType(src.getType()); - tgt.setSearchType(convertSearchParamType(src.getSearchType())); - tgt.setProfile(convertReference(src.getProfile())); - tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); - for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) - tgt.addPart(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.IN; - case OUT: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.OUT; - default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.IN; - case OUT: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.OUT; - default: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.dstu2016may.model.OperationOutcome src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.OperationOutcome tgt = new org.hl7.fhir.dstu3.model.OperationOutcome(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) - tgt.addIssue(convertOperationOutcomeIssueComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.dstu3.model.OperationOutcome src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationOutcome tgt = new org.hl7.fhir.dstu2016may.model.OperationOutcome(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) - tgt.addIssue(convertOperationOutcomeIssueComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent(); - copyElement(src, tgt); - tgt.setSeverity(convertIssueSeverity(src.getSeverity())); - tgt.setCode(convertIssueType(src.getCode())); - tgt.setDetails(convertCodeableConcept(src.getDetails())); - if (src.hasDiagnostics()) - tgt.setDiagnostics(src.getDiagnostics()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getLocation()) - tgt.addLocation(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getExpression()) - tgt.addExpression(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent(); - copyElement(src, tgt); - tgt.setSeverity(convertIssueSeverity(src.getSeverity())); - tgt.setCode(convertIssueType(src.getCode())); - tgt.setDetails(convertCodeableConcept(src.getDetails())); - if (src.hasDiagnostics()) - tgt.setDiagnostics(src.getDiagnostics()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getLocation()) - tgt.addLocation(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getExpression()) - tgt.addExpression(t.getValue()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FATAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.FATAL; - case ERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.ERROR; - case WARNING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.WARNING; - case INFORMATION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.INFORMATION; - default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FATAL: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.FATAL; - case ERROR: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.ERROR; - case WARNING: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.WARNING; - case INFORMATION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.INFORMATION; - default: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVALID; - case STRUCTURE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.STRUCTURE; - case REQUIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.REQUIRED; - case VALUE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.VALUE; - case INVARIANT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVARIANT; - case SECURITY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SECURITY; - case LOGIN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOGIN; - case UNKNOWN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.UNKNOWN; - case EXPIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXPIRED; - case FORBIDDEN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.FORBIDDEN; - case SUPPRESSED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SUPPRESSED; - case PROCESSING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.PROCESSING; - case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTSUPPORTED; - case DUPLICATE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.DUPLICATE; - case NOTFOUND: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTFOUND; - case TOOLONG: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOLONG; - case CODEINVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CODEINVALID; - case EXTENSION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXTENSION; - case TOOCOSTLY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOCOSTLY; - case BUSINESSRULE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.BUSINESSRULE; - case CONFLICT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CONFLICT; - case INCOMPLETE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INCOMPLETE; - case TRANSIENT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TRANSIENT; - case LOCKERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOCKERROR; - case NOSTORE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOSTORE; - case EXCEPTION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXCEPTION; - case TIMEOUT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TIMEOUT; - case THROTTLED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.THROTTLED; - case INFORMATIONAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INFORMATIONAL; - default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.dstu3.model.OperationOutcome.IssueType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INVALID: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INVALID; - case STRUCTURE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.STRUCTURE; - case REQUIRED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.REQUIRED; - case VALUE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.VALUE; - case INVARIANT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INVARIANT; - case SECURITY: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.SECURITY; - case LOGIN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.LOGIN; - case UNKNOWN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.UNKNOWN; - case EXPIRED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXPIRED; - case FORBIDDEN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.FORBIDDEN; - case SUPPRESSED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.SUPPRESSED; - case PROCESSING: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.PROCESSING; - case NOTSUPPORTED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOTSUPPORTED; - case DUPLICATE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.DUPLICATE; - case NOTFOUND: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOTFOUND; - case TOOLONG: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TOOLONG; - case CODEINVALID: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.CODEINVALID; - case EXTENSION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXTENSION; - case TOOCOSTLY: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TOOCOSTLY; - case BUSINESSRULE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.BUSINESSRULE; - case CONFLICT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.CONFLICT; - case INCOMPLETE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INCOMPLETE; - case TRANSIENT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TRANSIENT; - case LOCKERROR: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.LOCKERROR; - case NOSTORE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOSTORE; - case EXCEPTION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXCEPTION; - case TIMEOUT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TIMEOUT; - case THROTTLED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.THROTTLED; - case INFORMATIONAL: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INFORMATIONAL; - default: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NULL; - } - } - - - public static org.hl7.fhir.dstu3.model.Questionnaire convertQuestionnaire(org.hl7.fhir.dstu2016may.model.Questionnaire src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Questionnaire tgt = new org.hl7.fhir.dstu3.model.Questionnaire(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addContact(convertQuestionnaireContactComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getConcept()) - tgt.addCode(convertCoding(t)); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getSubjectType()) - tgt.addSubjectType(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Questionnaire convertQuestionnaire(org.hl7.fhir.dstu3.model.Questionnaire src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Questionnaire tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (ContactDetail t : src.getContact()) - for (org.hl7.fhir.dstu3.model.ContactPoint t1 : t.getTelecom()) - tgt.addTelecom(convertContactPoint(t1)); - for (UsageContext t : src.getUseContext()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) - tgt.addConcept(convertCoding(t)); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getSubjectType()) - tgt.addSubjectType(t.getValue()); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertQuestionnaireContactComponent(org.hl7.fhir.dstu2016may.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - tgt.addTelecom(convertContactPoint(src)); - return tgt; - } - - - private static org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus convertQuestionnaireStatus(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.DRAFT; - case PUBLISHED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.RETIRED; - default: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus convertQuestionnaireStatus(org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.PUBLISHED; - case RETIRED: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.RETIRED; - default: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getConcept()) - tgt.addCode(convertCoding(t)); - if (src.hasPrefix()) - tgt.setPrefix(src.getPrefix()); - if (src.hasText()) - tgt.setText(src.getText()); - tgt.setType(convertQuestionnaireItemType(src.getType())); - for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) - tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasRepeats()) - tgt.setRepeats(src.getRepeats()); - if (src.hasReadOnly()) - tgt.setReadOnly(src.getReadOnly()); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - tgt.setOptions(convertReference(src.getOptions())); - for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) - tgt.addOption(convertQuestionnaireItemOptionComponent(t)); - tgt.setInitial(convertType(src.getInitial())); - for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) - tgt.addConcept(convertCoding(t)); - if (src.hasPrefix()) - tgt.setPrefix(src.getPrefix()); - if (src.hasText()) - tgt.setText(src.getText()); - tgt.setType(convertQuestionnaireItemType(src.getType())); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) - tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasRepeats()) - tgt.setRepeats(src.getRepeats()); - if (src.hasReadOnly()) - tgt.setReadOnly(src.getReadOnly()); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - tgt.setOptions(convertReference(src.getOptions())); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) - tgt.addOption(convertQuestionnaireItemOptionComponent(t)); - tgt.setInitial(convertType(src.getInitial())); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GROUP: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.GROUP; - case DISPLAY: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DISPLAY; - case QUESTION: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.QUESTION; - case BOOLEAN: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.BOOLEAN; - case DECIMAL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DECIMAL; - case INTEGER: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.INTEGER; - case DATE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATE; - case DATETIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATETIME; - case INSTANT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATETIME; - case TIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TIME; - case STRING: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.STRING; - case TEXT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TEXT; - case URL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.URL; - case CHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.CHOICE; - case OPENCHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; - case ATTACHMENT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; - case REFERENCE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.REFERENCE; - case QUANTITY: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.QUANTITY; - default: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GROUP: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.GROUP; - case DISPLAY: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DISPLAY; - case QUESTION: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.QUESTION; - case BOOLEAN: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.BOOLEAN; - case DECIMAL: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DECIMAL; - case INTEGER: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.INTEGER; - case DATE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DATE; - case DATETIME: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DATETIME; - case TIME: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.TIME; - case STRING: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.STRING; - case TEXT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.TEXT; - case URL: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.URL; - case CHOICE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.CHOICE; - case OPENCHOICE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; - case ATTACHMENT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; - case REFERENCE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.REFERENCE; - case QUANTITY: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.QUANTITY; - default: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); - copyElement(src, tgt); - tgt.setQuestion(src.getQuestion()); - if (src.hasAnswered()) - tgt.setHasAnswer(src.getAnswered()); - tgt.setAnswer(convertType(src.getAnswer())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); - copyElement(src, tgt); - tgt.setQuestion(src.getQuestion()); - if (src.hasHasAnswer()) - tgt.setAnswered(src.getHasAnswer()); - tgt.setAnswer(convertType(src.getAnswer())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.QuestionnaireResponse tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); - tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasAuthored()) - tgt.setAuthored(src.getAuthored()); - tgt.setSource(convertReference(src.getSource())); - for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.dstu3.model.QuestionnaireResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.QuestionnaireResponse tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); - tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasAuthored()) - tgt.setAuthored(src.getAuthored()); - tgt.setSource(convertReference(src.getSource())); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; - case AMENDED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; - default: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; - case AMENDED: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; - default: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - if (src.hasText()) - tgt.setText(src.getText()); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) - tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); - for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - if (src.hasText()) - tgt.setText(src.getText()); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) - tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SearchParameter convertSearchParameter(org.hl7.fhir.dstu2016may.model.SearchParameter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.SearchParameter tgt = new org.hl7.fhir.dstu3.model.SearchParameter(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent t : src.getContact()) - tgt.addContact(convertSearchParameterContactComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - tgt.setCode(src.getCode()); - tgt.addBase(src.getBase()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDescription(src.getDescription()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasXpath()) - tgt.setXpath(src.getXpath()); - tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getTarget()) - tgt.addTarget(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.SearchParameter convertSearchParameter(org.hl7.fhir.dstu3.model.SearchParameter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.SearchParameter tgt = new org.hl7.fhir.dstu2016may.model.SearchParameter(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertSearchParameterContactComponent(t)); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getBase()) - tgt.setBase(t.asStringValue()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDescription(src.getDescription()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasXpath()) - tgt.setXpath(src.getXpath()); - tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getTarget()) - tgt.addTarget(t.getValue()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NORMAL: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NORMAL; - case PHONETIC: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.PHONETIC; - case NEARBY: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NEARBY; - case DISTANCE: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.DISTANCE; - case OTHER: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.OTHER; - default: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NORMAL: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NORMAL; - case PHONETIC: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.PHONETIC; - case NEARBY: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NEARBY; - case DISTANCE: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.DISTANCE; - case OTHER: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.OTHER; - default: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertSearchParameterContactComponent(org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent convertSearchParameterContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent tgt = new org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.dstu2016may.model.StructureDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition tgt = new org.hl7.fhir.dstu3.model.StructureDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - if (src.hasDisplay()) - tgt.setTitle(src.getDisplay()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent t : src.getContact()) - tgt.addContact(convertStructureDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCode()) - tgt.addKeyword(convertCoding(t)); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertStructureDefinitionMappingComponent(t)); - tgt.setKind(convertStructureDefinitionKind(src.getKind())); - tgt.setAbstract(src.getAbstract()); - tgt.setContextType(convertExtensionContext(src.getContextType())); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getContext()) - tgt.addContext(t.getValue()); - if (src.getDerivation() == TypeDerivationRule.CONSTRAINT) - tgt.setType(src.getBaseType()); - else - tgt.setType(src.getId()); - if (src.hasBaseDefinition()) - tgt.setBaseDefinition(src.getBaseDefinition()); - tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); - if (src.hasSnapshot()) { - tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); - tgt.getSnapshot().getElementFirstRep().getType().clear(); - } - if (src.hasDifferential()) { - tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); - tgt.getDifferential().getElementFirstRep().getType().clear(); - } - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.dstu3.model.StructureDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.StructureDefinition tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setDisplay(src.getTitle()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertStructureDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getKeyword()) - tgt.addCode(convertCoding(t)); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertStructureDefinitionMappingComponent(t)); - tgt.setKind(convertStructureDefinitionKind(src.getKind())); - tgt.setAbstract(src.getAbstract()); - tgt.setContextType(convertExtensionContext(src.getContextType())); - for (org.hl7.fhir.dstu3.model.StringType t : src.getContext()) - tgt.addContext(t.getValue()); - if (src.hasBaseDefinition()) - tgt.setBaseDefinition(src.getBaseDefinition()); - if (src.hasType() && src.getDerivation() == org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.CONSTRAINT) - tgt.setBaseType(src.getType()); - tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); - if (src.hasSnapshot()) - tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); - tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DATATYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; - case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.RESOURCE; - case LOGICAL: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.LOGICAL; - default: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRIMITIVETYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.DATATYPE; - case COMPLEXTYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.DATATYPE; - case RESOURCE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.RESOURCE; - case LOGICAL: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.LOGICAL; - default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.RESOURCE; - case DATATYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.DATATYPE; - case EXTENSION: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.EXTENSION; - default: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESOURCE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.RESOURCE; - case DATATYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.DATATYPE; - case EXTENSION: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.EXTENSION; - default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SPECIALIZATION: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; - case CONSTRAINT: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; - default: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SPECIALIZATION: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; - case CONSTRAINT: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; - default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertStructureDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent convertStructureDefinitionContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComments()) - tgt.setComment(src.getComments()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComment()) - tgt.setComments(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript convertTestScript(org.hl7.fhir.dstu2016may.model.TestScript src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript tgt = new org.hl7.fhir.dstu3.model.TestScript(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent t : src.getContact()) - tgt.addContact(convertTestScriptContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) - tgt.addOrigin(convertTestScriptOriginComponent(t)); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) - tgt.addDestination(convertTestScriptDestinationComponent(t)); - tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) - tgt.addFixture(convertTestScriptFixtureComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent t : src.getVariable()) - tgt.addVariable(convertTestScriptVariableComponent(t)); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent t : src.getRule()) - tgt.addRule(convertTestScriptRuleComponent(t)); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) - tgt.addRuleset(convertTestScriptRulesetComponent(t)); - tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent t : src.getTest()) - tgt.addTest(convertTestScriptTestComponent(t)); - tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript convertTestScript(org.hl7.fhir.dstu3.model.TestScript src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript tgt = new org.hl7.fhir.dstu2016may.model.TestScript(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertTestScriptContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) - tgt.addOrigin(convertTestScriptOriginComponent(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) - tgt.addDestination(convertTestScriptDestinationComponent(t)); - tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) - tgt.addFixture(convertTestScriptFixtureComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent t : src.getVariable()) - tgt.addVariable(convertTestScriptVariableComponent(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent t : src.getRule()) - tgt.addRule(convertTestScriptRuleComponent(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) - tgt.addRuleset(convertTestScriptRulesetComponent(t)); - tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent t : src.getTest()) - tgt.addTest(convertTestScriptTestComponent(t)); - tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertTestScriptContactComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent convertTestScriptContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent(); - copyElement(src, tgt); - tgt.setIndex(src.getIndex()); - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent(); - copyElement(src, tgt); - tgt.setIndex(src.getIndex()); - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent(); - copyElement(src, tgt); - tgt.setIndex(src.getIndex()); - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent(); - copyElement(src, tgt); - tgt.setIndex(src.getIndex()); - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) - tgt.addLink(convertTestScriptMetadataLinkComponent(t)); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) - tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) - tgt.addLink(convertTestScriptMetadataLinkComponent(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) - tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent(); - copyElement(src, tgt); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasValidated()) - tgt.setValidated(src.getValidated()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.IntegerType t : src.getOrigin()) - tgt.addOrigin(t.getValue()); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getLink()) - tgt.addLink(t.getValue()); - tgt.setCapabilities(convertReference(src.getConformance())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent(); - copyElement(src, tgt); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasValidated()) - tgt.setValidated(src.getValidated()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.IntegerType t : src.getOrigin()) - tgt.addOrigin(t.getValue()); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - for (org.hl7.fhir.dstu3.model.UriType t : src.getLink()) - tgt.addLink(t.getValue()); - tgt.setConformance(convertReference(src.getCapabilities())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent(); - copyElement(src, tgt); - if (src.hasAutocreate()) - tgt.setAutocreate(src.getAutocreate()); - if (src.hasAutodelete()) - tgt.setAutodelete(src.getAutodelete()); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent(); - copyElement(src, tgt); - if (src.hasAutocreate()) - tgt.setAutocreate(src.getAutocreate()); - if (src.hasAutodelete()) - tgt.setAutodelete(src.getAutodelete()); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDefaultValue()) - tgt.setDefaultValue(src.getDefaultValue()); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDefaultValue()) - tgt.setDefaultValue(src.getDefaultValue()); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent(); - copyElement(src, tgt); - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent t : src.getParam()) - tgt.addParam(convertTestScriptRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent(); - copyElement(src, tgt); - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent t : src.getParam()) - tgt.addParam(convertTestScriptRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent convertTestScriptRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent convertTestScriptRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent(); - copyElement(src, tgt); - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent t : src.getRule()) - tgt.addRule(convertTestScriptRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent(); - copyElement(src, tgt); - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent t : src.getRule()) - tgt.addRule(convertTestScriptRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent convertTestScriptRulesetRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertTestScriptRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent convertTestScriptRulesetRuleComponent(org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertTestScriptRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent convertTestScriptRulesetRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent convertTestScriptRulesetRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent(); - copyElement(src, tgt); - tgt.setType(convertCoding(src.getType())); - if (src.hasResource()) - tgt.setResource(src.getResource()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setAccept(convertContentType(src.getAccept())); - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - if (src.hasEncodeRequestUrl()) - tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); - if (src.hasOrigin()) - tgt.setOrigin(src.getOrigin()); - if (src.hasParams()) - tgt.setParams(src.getParams()); - for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) - tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); - if (src.hasResponseId()) - tgt.setResponseId(src.getResponseId()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasTargetId()) - tgt.setTargetId(src.getTargetId()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent(); - copyElement(src, tgt); - if (src.hasResource()) - tgt.setResource(src.getResource()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setAccept(convertContentType(src.getAccept())); - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - if (src.hasEncodeRequestUrl()) - tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); - if (src.hasOrigin()) - tgt.setOrigin(src.getOrigin()); - if (src.hasParams()) - tgt.setParams(src.getParams()); - for (org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) - tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); - if (src.hasResponseId()) - tgt.setResponseId(src.getResponseId()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasTargetId()) - tgt.setTargetId(src.getTargetId()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.TestScript.ContentType convertContentType(org.hl7.fhir.dstu2016may.model.TestScript.ContentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XML: return org.hl7.fhir.dstu3.model.TestScript.ContentType.XML; - case JSON: return org.hl7.fhir.dstu3.model.TestScript.ContentType.JSON; - default: return org.hl7.fhir.dstu3.model.TestScript.ContentType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.TestScript.ContentType convertContentType(org.hl7.fhir.dstu3.model.TestScript.ContentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XML: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.XML; - case JSON: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.JSON; - default: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent(); - copyElement(src, tgt); - tgt.setField(src.getField()); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent(); - copyElement(src, tgt); - tgt.setField(src.getField()); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setDirection(convertAssertionDirectionType(src.getDirection())); - if (src.hasCompareToSourceId()) - tgt.setCompareToSourceId(src.getCompareToSourceId()); - if (src.hasCompareToSourcePath()) - tgt.setCompareToSourcePath(src.getCompareToSourcePath()); - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasMinimumId()) - tgt.setMinimumId(src.getMinimumId()); - if (src.hasNavigationLinks()) - tgt.setNavigationLinks(src.getNavigationLinks()); - tgt.setOperator(convertAssertionOperatorType(src.getOperator())); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasResource()) - tgt.setResource(src.getResource()); - tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); - if (src.hasResponseCode()) - tgt.setResponseCode(src.getResponseCode()); - tgt.setRule(convertSetupActionAssertRuleComponent(src.getRule())); - tgt.setRuleset(convertSetupActionAssertRulesetComponent(src.getRuleset())); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasValidateProfileId()) - tgt.setValidateProfileId(src.getValidateProfileId()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasWarningOnly()) - tgt.setWarningOnly(src.getWarningOnly()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setDirection(convertAssertionDirectionType(src.getDirection())); - if (src.hasCompareToSourceId()) - tgt.setCompareToSourceId(src.getCompareToSourceId()); - if (src.hasCompareToSourcePath()) - tgt.setCompareToSourcePath(src.getCompareToSourcePath()); - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasMinimumId()) - tgt.setMinimumId(src.getMinimumId()); - if (src.hasNavigationLinks()) - tgt.setNavigationLinks(src.getNavigationLinks()); - tgt.setOperator(convertAssertionOperatorType(src.getOperator())); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasResource()) - tgt.setResource(src.getResource()); - tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); - if (src.hasResponseCode()) - tgt.setResponseCode(src.getResponseCode()); - tgt.setRule(convertSetupActionAssertRuleComponent(src.getRule())); - tgt.setRuleset(convertSetupActionAssertRulesetComponent(src.getRuleset())); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasValidateProfileId()) - tgt.setValidateProfileId(src.getValidateProfileId()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasWarningOnly()) - tgt.setWarningOnly(src.getWarningOnly()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent convertSetupActionAssertRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent t : src.getParam()) - tgt.addParam(convertSetupActionAssertRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent convertSetupActionAssertRuleComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent t : src.getParam()) - tgt.addParam(convertSetupActionAssertRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent convertSetupActionAssertRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent convertSetupActionAssertRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent convertSetupActionAssertRulesetComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent t : src.getRule()) - tgt.addRule(convertSetupActionAssertRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent convertSetupActionAssertRulesetComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent t : src.getRule()) - tgt.addRule(convertSetupActionAssertRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent convertSetupActionAssertRulesetRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertSetupActionAssertRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent convertSetupActionAssertRulesetRuleComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertSetupActionAssertRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent convertSetupActionAssertRulesetRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent convertSetupActionAssertRulesetRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESPONSE: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.RESPONSE; - case REQUEST: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.REQUEST; - default: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESPONSE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.RESPONSE; - case REQUEST: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.REQUEST; - default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EQUALS; - case NOTEQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEQUALS; - case IN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.IN; - case NOTIN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTIN; - case GREATERTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.GREATERTHAN; - case LESSTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.LESSTHAN; - case EMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EMPTY; - case NOTEMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEMPTY; - case CONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.CONTAINS; - case NOTCONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTCONTAINS; - default: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUALS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.EQUALS; - case NOTEQUALS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTEQUALS; - case IN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.IN; - case NOTIN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTIN; - case GREATERTHAN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.GREATERTHAN; - case LESSTHAN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.LESSTHAN; - case EMPTY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.EMPTY; - case NOTEMPTY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTEMPTY; - case CONTAINS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.CONTAINS; - case NOTCONTAINS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTCONTAINS; - default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OKAY: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.OKAY; - case CREATED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CREATED; - case NOCONTENT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOCONTENT; - case NOTMODIFIED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTMODIFIED; - case BAD: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.BAD; - case FORBIDDEN: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.FORBIDDEN; - case NOTFOUND: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTFOUND; - case METHODNOTALLOWED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; - case CONFLICT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CONFLICT; - case GONE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.GONE; - case PRECONDITIONFAILED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; - case UNPROCESSABLE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; - default: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OKAY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.OKAY; - case CREATED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.CREATED; - case NOCONTENT: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOCONTENT; - case NOTMODIFIED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOTMODIFIED; - case BAD: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.BAD; - case FORBIDDEN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.FORBIDDEN; - case NOTFOUND: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOTFOUND; - case METHODNOTALLOWED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; - case CONFLICT: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.CONFLICT; - case GONE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.GONE; - case PRECONDITIONFAILED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; - case UNPROCESSABLE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; - default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NULL; - } - } - - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.TestScript.TestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.dstu3.model.TestScript.TestActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet convertValueSet(org.hl7.fhir.dstu2016may.model.ValueSet src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet tgt = new org.hl7.fhir.dstu3.model.ValueSet(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.addIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent t : src.getContact()) - tgt.addContact(convertValueSetContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasImmutable()) - tgt.setImmutable(src.getImmutable()); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasExtensible()) - tgt.setExtensible(src.getExtensible()); - tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); - if (src.hasLockedDate()) - tgt.getCompose().setLockedDate(src.getLockedDate()); - tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet convertValueSet(org.hl7.fhir.dstu3.model.ValueSet src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet tgt = new org.hl7.fhir.dstu2016may.model.ValueSet(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.setIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertValueSetContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.getCompose().hasLockedDate()) - tgt.setLockedDate(src.getCompose().getLockedDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasImmutable()) - tgt.setImmutable(src.getImmutable()); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasExtensible()) - tgt.setExtensible(src.getExtensible()); - tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); - if (src.hasExpansion()) - tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertValueSetContactComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent convertValueSetContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getImport()) - tgt.addInclude().addValueSet(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent t : src.getInclude()) - tgt.addInclude(convertConceptSetComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent t : src.getExclude()) - tgt.addExclude(convertConceptSetComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getInclude()) { - for (org.hl7.fhir.dstu3.model.UriType ti : t.getValueSet()) - tgt.addImport(ti.getValue()); - tgt.addInclude(convertConceptSetComponent(t)); - } - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getExclude()) - tgt.addExclude(convertConceptSetComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) - tgt.addConcept(convertConceptReferenceComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) - tgt.addFilter(convertConceptSetFilterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) - tgt.addConcept(convertConceptReferenceComponent(t)); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) - tgt.addFilter(convertConceptSetFilterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getProperty()); - tgt.setOp(convertFilterOperator(src.getOp())); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getProperty()); - tgt.setOp(convertFilterOperator(src.getOp())); - tgt.setValue(src.getValue()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISA; - case ISNOTA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.REGEX; - case IN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NOTIN; - default: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.dstu3.model.ValueSet.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.ISA; - case ISNOTA: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.REGEX; - case IN: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.NOTIN; - default: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.NULL; - } - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setTimestamp(src.getTimestamp()); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) - tgt.addParameter(convertValueSetExpansionParameterComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setTimestamp(src.getTimestamp()); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) - tgt.addParameter(convertValueSetExpansionParameterComponent(t)); - for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasAbstract()) - tgt.setAbstract(src.getAbstract()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasAbstract()) - tgt.setAbstract(src.getAbstract()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - -/* public static org.hl7.fhir.dstu3.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.dstu2016may.model.VisionPrescription src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.VisionPrescription tgt = new org.hl7.fhir.dstu3.model.VisionPrescription(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setDateWritten(src.getDateWritten()); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setPrescriber(convertReference(src.getPrescriber())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) - tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.dstu3.model.VisionPrescription src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.VisionPrescription tgt = new org.hl7.fhir.dstu2016may.model.VisionPrescription(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setDateWritten(src.getDateWritten()); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setPrescriber(convertReference(src.getPrescriber())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) - tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent(); - copyElement(src, tgt); - tgt.setProduct(convertCoding(src.getProduct())); - tgt.setEye(convertVisionEyes(src.getEye())); - tgt.setSphere(src.getSphere()); - tgt.setCylinder(src.getCylinder()); - tgt.setAxis(src.getAxis()); - tgt.setPrism(src.getPrism()); - tgt.setBase(convertVisionBase(src.getBase())); - tgt.setAdd(src.getAdd()); - tgt.setPower(src.getPower()); - tgt.setBackCurve(src.getBackCurve()); - tgt.setDiameter(src.getDiameter()); - tgt.setDuration(convertSimpleQuantity(src.getDuration())); - tgt.setColor(src.getColor()); - tgt.setBrand(src.getBrand()); - tgt.setNotes(src.getNotes()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent(); - copyElement(src, tgt); - tgt.setProduct(convertCoding(src.getProduct())); - tgt.setEye(convertVisionEyes(src.getEye())); - tgt.setSphere(src.getSphere()); - tgt.setCylinder(src.getCylinder()); - tgt.setAxis(src.getAxis()); - tgt.setPrism(src.getPrism()); - tgt.setBase(convertVisionBase(src.getBase())); - tgt.setAdd(src.getAdd()); - tgt.setPower(src.getPower()); - tgt.setBackCurve(src.getBackCurve()); - tgt.setDiameter(src.getDiameter()); - tgt.setDuration(convertSimpleQuantity(src.getDuration())); - tgt.setColor(src.getColor()); - tgt.setBrand(src.getBrand()); - tgt.setNotes(src.getNotes()); - return tgt; - } - - private static org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RIGHT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.RIGHT; - case LEFT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.LEFT; - default: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RIGHT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.RIGHT; - case LEFT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.LEFT; - default: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.NULL; - } - } - - private static org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UP: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.UP; - case DOWN: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.DOWN; - case IN: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.IN; - case OUT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.OUT; - default: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UP: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.UP; - case DOWN: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.DOWN; - case IN: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.IN; - case OUT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.OUT; - default: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.NULL; - } - } -*/ - public static org.hl7.fhir.dstu3.model.Resource convertResource(org.hl7.fhir.dstu2016may.model.Resource src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.dstu2016may.model.Parameters) - return convertParameters((org.hl7.fhir.dstu2016may.model.Parameters) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Bundle) - return convertBundle((org.hl7.fhir.dstu2016may.model.Bundle) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.CodeSystem) - return convertCodeSystem((org.hl7.fhir.dstu2016may.model.CodeSystem) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.CompartmentDefinition) - return convertCompartmentDefinition((org.hl7.fhir.dstu2016may.model.CompartmentDefinition) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.ConceptMap) - return convertConceptMap((org.hl7.fhir.dstu2016may.model.ConceptMap) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Conformance) - return convertConformance((org.hl7.fhir.dstu2016may.model.Conformance) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.DataElement) - return convertDataElement((org.hl7.fhir.dstu2016may.model.DataElement) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.ImplementationGuide) - return convertImplementationGuide((org.hl7.fhir.dstu2016may.model.ImplementationGuide) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.NamingSystem) - return convertNamingSystem((org.hl7.fhir.dstu2016may.model.NamingSystem) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.OperationDefinition) - return convertOperationDefinition((org.hl7.fhir.dstu2016may.model.OperationDefinition) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.OperationOutcome) - return convertOperationOutcome((org.hl7.fhir.dstu2016may.model.OperationOutcome) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Questionnaire) - return convertQuestionnaire((org.hl7.fhir.dstu2016may.model.Questionnaire) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.QuestionnaireResponse) - return convertQuestionnaireResponse((org.hl7.fhir.dstu2016may.model.QuestionnaireResponse) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.SearchParameter) - return convertSearchParameter((org.hl7.fhir.dstu2016may.model.SearchParameter) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.StructureDefinition) - return convertStructureDefinition((org.hl7.fhir.dstu2016may.model.StructureDefinition) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.TestScript) - return convertTestScript((org.hl7.fhir.dstu2016may.model.TestScript) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.ValueSet) - return convertValueSet((org.hl7.fhir.dstu2016may.model.ValueSet) src); -/* if (src instanceof org.hl7.fhir.dstu2016may.model.VisionPrescription) - return convertVisionPrescription((org.hl7.fhir.dstu2016may.model.VisionPrescription) src);*/ - throw new Error("Unknown resource "+src.fhirType()); - } - - public static org.hl7.fhir.dstu2016may.model.Resource convertResource(org.hl7.fhir.dstu3.model.Resource src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.dstu3.model.Parameters) - return convertParameters((org.hl7.fhir.dstu3.model.Parameters) src); - if (src instanceof org.hl7.fhir.dstu3.model.Bundle) - return convertBundle((org.hl7.fhir.dstu3.model.Bundle) src); - if (src instanceof org.hl7.fhir.dstu3.model.CodeSystem) - return convertCodeSystem((org.hl7.fhir.dstu3.model.CodeSystem) src); - if (src instanceof org.hl7.fhir.dstu3.model.CompartmentDefinition) - return convertCompartmentDefinition((org.hl7.fhir.dstu3.model.CompartmentDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.ConceptMap) - return convertConceptMap((org.hl7.fhir.dstu3.model.ConceptMap) src); - if (src instanceof org.hl7.fhir.dstu3.model.CapabilityStatement) - return convertConformance((org.hl7.fhir.dstu3.model.CapabilityStatement) src); - if (src instanceof org.hl7.fhir.dstu3.model.DataElement) - return convertDataElement((org.hl7.fhir.dstu3.model.DataElement) src); - if (src instanceof org.hl7.fhir.dstu3.model.ImplementationGuide) - return convertImplementationGuide((org.hl7.fhir.dstu3.model.ImplementationGuide) src); - if (src instanceof org.hl7.fhir.dstu3.model.NamingSystem) - return convertNamingSystem((org.hl7.fhir.dstu3.model.NamingSystem) src); - if (src instanceof org.hl7.fhir.dstu3.model.OperationDefinition) - return convertOperationDefinition((org.hl7.fhir.dstu3.model.OperationDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.OperationOutcome) - return convertOperationOutcome((org.hl7.fhir.dstu3.model.OperationOutcome) src); - if (src instanceof org.hl7.fhir.dstu3.model.Questionnaire) - return convertQuestionnaire((org.hl7.fhir.dstu3.model.Questionnaire) src); - if (src instanceof org.hl7.fhir.dstu3.model.QuestionnaireResponse) - return convertQuestionnaireResponse((org.hl7.fhir.dstu3.model.QuestionnaireResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.SearchParameter) - return convertSearchParameter((org.hl7.fhir.dstu3.model.SearchParameter) src); - if (src instanceof org.hl7.fhir.dstu3.model.StructureDefinition) - return convertStructureDefinition((org.hl7.fhir.dstu3.model.StructureDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.TestScript) - return convertTestScript((org.hl7.fhir.dstu3.model.TestScript) src); - if (src instanceof org.hl7.fhir.dstu3.model.ValueSet) - return convertValueSet((org.hl7.fhir.dstu3.model.ValueSet) src); -/* if (src instanceof org.hl7.fhir.dstu3.model.VisionPrescription) - return convertVisionPrescription((org.hl7.fhir.dstu3.model.VisionPrescription) src);*/ - throw new Error("Unknown resource "+src.fhirType()); - } - - -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + */ + +// Generated on Mon, Aug 15, 2016 19:58+1000 for FHIR v1.7.0 + +import java.util.ArrayList; +import java.util.List; + +import org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent; +import org.hl7.fhir.dstu2016may.model.CodeableConcept; +import org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule; +import org.hl7.fhir.dstu3.conformance.ProfileUtilities; +import org.hl7.fhir.dstu3.model.CodeSystem; +import org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator; +import org.hl7.fhir.dstu3.model.ConceptMap; +import org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent; +import org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent; +import org.hl7.fhir.dstu3.model.ContactDetail; +import org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent; +import org.hl7.fhir.dstu3.model.Enumeration; +import org.hl7.fhir.dstu3.model.Timing.EventTiming; +import org.hl7.fhir.dstu3.model.UsageContext; +import org.hl7.fhir.exceptions.FHIRException; + +public class VersionConvertor_14_30 { + + private static void copyElement(org.hl7.fhir.dstu2016may.model.Element src, org.hl7.fhir.dstu3.model.Element tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + for (org.hl7.fhir.dstu2016may.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + private static void copyElement(org.hl7.fhir.dstu3.model.Element src, org.hl7.fhir.dstu2016may.model.Element tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + for (org.hl7.fhir.dstu3.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + private static void copyBackboneElement(org.hl7.fhir.dstu2016may.model.BackboneElement src, org.hl7.fhir.dstu3.model.BackboneElement tgt) throws FHIRException { + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Extension e : src.getModifierExtension()) { + tgt.addModifierExtension(convertExtension(e)); + } + } + + private static void copyBackboneElement(org.hl7.fhir.dstu3.model.BackboneElement src, org.hl7.fhir.dstu2016may.model.BackboneElement tgt) throws FHIRException { + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Extension e : src.getModifierExtension()) { + tgt.addModifierExtension(convertExtension(e)); + } + } + + public static org.hl7.fhir.dstu3.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.dstu2016may.model.Base64BinaryType src) throws FHIRException { + org.hl7.fhir.dstu3.model.Base64BinaryType tgt = new org.hl7.fhir.dstu3.model.Base64BinaryType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.dstu3.model.Base64BinaryType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.Base64BinaryType tgt = new org.hl7.fhir.dstu2016may.model.Base64BinaryType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.BooleanType convertBoolean(org.hl7.fhir.dstu2016may.model.BooleanType src) throws FHIRException { + org.hl7.fhir.dstu3.model.BooleanType tgt = new org.hl7.fhir.dstu3.model.BooleanType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.BooleanType convertBoolean(org.hl7.fhir.dstu3.model.BooleanType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.BooleanType tgt = new org.hl7.fhir.dstu2016may.model.BooleanType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeType convertCode(org.hl7.fhir.dstu2016may.model.CodeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.CodeType tgt = new org.hl7.fhir.dstu3.model.CodeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeType convertCode(org.hl7.fhir.dstu3.model.CodeType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.CodeType tgt = new org.hl7.fhir.dstu2016may.model.CodeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DateType convertDate(org.hl7.fhir.dstu2016may.model.DateType src) throws FHIRException { + org.hl7.fhir.dstu3.model.DateType tgt = new org.hl7.fhir.dstu3.model.DateType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.DateType convertDate(org.hl7.fhir.dstu3.model.DateType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.DateType tgt = new org.hl7.fhir.dstu2016may.model.DateType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DateTimeType convertDateTime(org.hl7.fhir.dstu2016may.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.DateTimeType tgt = new org.hl7.fhir.dstu3.model.DateTimeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.DateTimeType convertDateTime(org.hl7.fhir.dstu3.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.DateTimeType tgt = new org.hl7.fhir.dstu2016may.model.DateTimeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DecimalType convertDecimal(org.hl7.fhir.dstu2016may.model.DecimalType src) throws FHIRException { + org.hl7.fhir.dstu3.model.DecimalType tgt = new org.hl7.fhir.dstu3.model.DecimalType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.DecimalType convertDecimal(org.hl7.fhir.dstu3.model.DecimalType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.DecimalType tgt = new org.hl7.fhir.dstu2016may.model.DecimalType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.IdType convertId(org.hl7.fhir.dstu2016may.model.IdType src) throws FHIRException { + org.hl7.fhir.dstu3.model.IdType tgt = new org.hl7.fhir.dstu3.model.IdType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.IdType convertId(org.hl7.fhir.dstu3.model.IdType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.IdType tgt = new org.hl7.fhir.dstu2016may.model.IdType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.InstantType convertInstant(org.hl7.fhir.dstu2016may.model.InstantType src) throws FHIRException { + org.hl7.fhir.dstu3.model.InstantType tgt = new org.hl7.fhir.dstu3.model.InstantType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.InstantType convertInstant(org.hl7.fhir.dstu3.model.InstantType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.InstantType tgt = new org.hl7.fhir.dstu2016may.model.InstantType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.IntegerType convertInteger(org.hl7.fhir.dstu2016may.model.IntegerType src) throws FHIRException { + org.hl7.fhir.dstu3.model.IntegerType tgt = new org.hl7.fhir.dstu3.model.IntegerType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.IntegerType convertInteger(org.hl7.fhir.dstu3.model.IntegerType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.IntegerType tgt = new org.hl7.fhir.dstu2016may.model.IntegerType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MarkdownType convertMarkdown(org.hl7.fhir.dstu2016may.model.MarkdownType src) throws FHIRException { + org.hl7.fhir.dstu3.model.MarkdownType tgt = new org.hl7.fhir.dstu3.model.MarkdownType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.MarkdownType convertMarkdown(org.hl7.fhir.dstu3.model.MarkdownType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.MarkdownType tgt = new org.hl7.fhir.dstu2016may.model.MarkdownType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OidType convertOid(org.hl7.fhir.dstu2016may.model.OidType src) throws FHIRException { + org.hl7.fhir.dstu3.model.OidType tgt = new org.hl7.fhir.dstu3.model.OidType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OidType convertOid(org.hl7.fhir.dstu3.model.OidType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.OidType tgt = new org.hl7.fhir.dstu2016may.model.OidType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PositiveIntType convertPositiveInt(org.hl7.fhir.dstu2016may.model.PositiveIntType src) throws FHIRException { + org.hl7.fhir.dstu3.model.PositiveIntType tgt = new org.hl7.fhir.dstu3.model.PositiveIntType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.PositiveIntType convertPositiveInt(org.hl7.fhir.dstu3.model.PositiveIntType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.PositiveIntType tgt = new org.hl7.fhir.dstu2016may.model.PositiveIntType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StringType convertString(org.hl7.fhir.dstu2016may.model.StringType src) throws FHIRException { + org.hl7.fhir.dstu3.model.StringType tgt = new org.hl7.fhir.dstu3.model.StringType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StringType convertString(org.hl7.fhir.dstu3.model.StringType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.StringType tgt = new org.hl7.fhir.dstu2016may.model.StringType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TimeType convertTime(org.hl7.fhir.dstu2016may.model.TimeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.TimeType tgt = new org.hl7.fhir.dstu3.model.TimeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TimeType convertTime(org.hl7.fhir.dstu3.model.TimeType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.TimeType tgt = new org.hl7.fhir.dstu2016may.model.TimeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.dstu2016may.model.UnsignedIntType src) throws FHIRException { + org.hl7.fhir.dstu3.model.UnsignedIntType tgt = new org.hl7.fhir.dstu3.model.UnsignedIntType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.dstu3.model.UnsignedIntType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.UnsignedIntType tgt = new org.hl7.fhir.dstu2016may.model.UnsignedIntType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.UriType convertUri(org.hl7.fhir.dstu2016may.model.UriType src) throws FHIRException { + org.hl7.fhir.dstu3.model.UriType tgt = new org.hl7.fhir.dstu3.model.UriType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.UriType convertUri(org.hl7.fhir.dstu3.model.UriType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.UriType tgt = new org.hl7.fhir.dstu2016may.model.UriType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.UuidType convertUuid(org.hl7.fhir.dstu2016may.model.UuidType src) throws FHIRException { + org.hl7.fhir.dstu3.model.UuidType tgt = new org.hl7.fhir.dstu3.model.UuidType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.UuidType convertUuid(org.hl7.fhir.dstu3.model.UuidType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.UuidType tgt = new org.hl7.fhir.dstu2016may.model.UuidType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Extension convertExtension(org.hl7.fhir.dstu2016may.model.Extension src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Extension tgt = new org.hl7.fhir.dstu3.model.Extension(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Extension convertExtension(org.hl7.fhir.dstu3.model.Extension src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Extension tgt = new org.hl7.fhir.dstu2016may.model.Extension(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Narrative convertNarrative(org.hl7.fhir.dstu2016may.model.Narrative src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Narrative tgt = new org.hl7.fhir.dstu3.model.Narrative(); + copyElement(src, tgt); + tgt.setStatus(convertNarrativeStatus(src.getStatus())); + tgt.setDiv(src.getDiv()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Narrative convertNarrative(org.hl7.fhir.dstu3.model.Narrative src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Narrative tgt = new org.hl7.fhir.dstu2016may.model.Narrative(); + copyElement(src, tgt); + tgt.setStatus(convertNarrativeStatus(src.getStatus())); + tgt.setDiv(src.getDiv()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GENERATED: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.GENERATED; + case EXTENSIONS: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EXTENSIONS; + case ADDITIONAL: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.ADDITIONAL; + case EMPTY: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EMPTY; + default: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GENERATED: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.GENERATED; + case EXTENSIONS: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.EXTENSIONS; + case ADDITIONAL: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.ADDITIONAL; + case EMPTY: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.EMPTY; + default: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.Age convertAge(org.hl7.fhir.dstu2016may.model.Age src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Age tgt = new org.hl7.fhir.dstu3.model.Age(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Age convertAge(org.hl7.fhir.dstu3.model.Age src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Age tgt = new org.hl7.fhir.dstu2016may.model.Age(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + + public static org.hl7.fhir.dstu3.model.Annotation convertAnnotation(org.hl7.fhir.dstu2016may.model.Annotation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Annotation tgt = new org.hl7.fhir.dstu3.model.Annotation(); + copyElement(src, tgt); + tgt.setAuthor(convertType(src.getAuthor())); + if (src.hasTime()) + tgt.setTime(src.getTime()); + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Annotation convertAnnotation(org.hl7.fhir.dstu3.model.Annotation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Annotation tgt = new org.hl7.fhir.dstu2016may.model.Annotation(); + copyElement(src, tgt); + tgt.setAuthor(convertType(src.getAuthor())); + if (src.hasTime()) + tgt.setTime(src.getTime()); + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Attachment convertAttachment(org.hl7.fhir.dstu2016may.model.Attachment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Attachment tgt = new org.hl7.fhir.dstu3.model.Attachment(); + copyElement(src, tgt); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasData()) + tgt.setData(src.getData()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasSize()) + tgt.setSize(src.getSize()); + if (src.hasHash()) + tgt.setHash(src.getHash()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasCreation()) + tgt.setCreation(src.getCreation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Attachment convertAttachment(org.hl7.fhir.dstu3.model.Attachment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Attachment tgt = new org.hl7.fhir.dstu2016may.model.Attachment(); + copyElement(src, tgt); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasData()) + tgt.setData(src.getData()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasSize()) + tgt.setSize(src.getSize()); + if (src.hasHash()) + tgt.setHash(src.getHash()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasCreation()) + tgt.setCreation(src.getCreation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.dstu2016may.model.CodeableConcept src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CodeableConcept tgt = new org.hl7.fhir.dstu3.model.CodeableConcept(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCoding()) + tgt.addCoding(convertCoding(t)); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.dstu3.model.CodeableConcept src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeableConcept tgt = new org.hl7.fhir.dstu2016may.model.CodeableConcept(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCoding()) + tgt.addCoding(convertCoding(t)); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Coding convertCoding(org.hl7.fhir.dstu2016may.model.Coding src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Coding tgt = new org.hl7.fhir.dstu3.model.Coding(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasUserSelected()) + tgt.setUserSelected(src.getUserSelected()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Coding convertCoding(org.hl7.fhir.dstu3.model.Coding src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Coding tgt = new org.hl7.fhir.dstu2016may.model.Coding(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasUserSelected()) + tgt.setUserSelected(src.getUserSelected()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Count convertCount(org.hl7.fhir.dstu2016may.model.Count src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Count tgt = new org.hl7.fhir.dstu3.model.Count(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Count convertCount(org.hl7.fhir.dstu3.model.Count src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Count tgt = new org.hl7.fhir.dstu2016may.model.Count(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Distance convertDistance(org.hl7.fhir.dstu2016may.model.Distance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Distance tgt = new org.hl7.fhir.dstu3.model.Distance(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Distance convertDistance(org.hl7.fhir.dstu3.model.Distance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Distance tgt = new org.hl7.fhir.dstu2016may.model.Distance(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Duration convertDuration(org.hl7.fhir.dstu2016may.model.Duration src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Duration tgt = new org.hl7.fhir.dstu3.model.Duration(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Duration convertDuration(org.hl7.fhir.dstu3.model.Duration src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Duration tgt = new org.hl7.fhir.dstu2016may.model.Duration(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Money convertMoney(org.hl7.fhir.dstu2016may.model.Money src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Money tgt = new org.hl7.fhir.dstu3.model.Money(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Money convertMoney(org.hl7.fhir.dstu3.model.Money src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Money tgt = new org.hl7.fhir.dstu2016may.model.Money(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Identifier convertIdentifier(org.hl7.fhir.dstu2016may.model.Identifier src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Identifier tgt = new org.hl7.fhir.dstu3.model.Identifier(); + copyElement(src, tgt); + tgt.setUse(convertIdentifierUse(src.getUse())); + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setAssigner(convertReference(src.getAssigner())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Identifier convertIdentifier(org.hl7.fhir.dstu3.model.Identifier src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Identifier tgt = new org.hl7.fhir.dstu2016may.model.Identifier(); + copyElement(src, tgt); + tgt.setUse(convertIdentifierUse(src.getUse())); + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setAssigner(convertReference(src.getAssigner())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.USUAL; + case OFFICIAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.OFFICIAL; + case TEMP: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.TEMP; + case SECONDARY: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.SECONDARY; + default: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.dstu3.model.Identifier.IdentifierUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.USUAL; + case OFFICIAL: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.OFFICIAL; + case TEMP: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.TEMP; + case SECONDARY: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.SECONDARY; + default: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.NULL; + } + } + + + public static org.hl7.fhir.dstu3.model.Period convertPeriod(org.hl7.fhir.dstu2016may.model.Period src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Period tgt = new org.hl7.fhir.dstu3.model.Period(); + copyElement(src, tgt); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Period convertPeriod(org.hl7.fhir.dstu3.model.Period src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Period tgt = new org.hl7.fhir.dstu2016may.model.Period(); + copyElement(src, tgt); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Quantity convertQuantity(org.hl7.fhir.dstu2016may.model.Quantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Quantity tgt = new org.hl7.fhir.dstu3.model.Quantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Quantity convertQuantity(org.hl7.fhir.dstu3.model.Quantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Quantity tgt = new org.hl7.fhir.dstu2016may.model.Quantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LESS_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_THAN; + case LESS_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_OR_EQUAL; + case GREATER_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; + case GREATER_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_THAN; + default: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.dstu3.model.Quantity.QuantityComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LESS_THAN: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.LESS_THAN; + case LESS_OR_EQUAL: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.LESS_OR_EQUAL; + case GREATER_OR_EQUAL: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; + case GREATER_THAN: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.GREATER_THAN; + default: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.Range convertRange(org.hl7.fhir.dstu2016may.model.Range src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Range tgt = new org.hl7.fhir.dstu3.model.Range(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Range convertRange(org.hl7.fhir.dstu3.model.Range src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Range tgt = new org.hl7.fhir.dstu2016may.model.Range(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Ratio convertRatio(org.hl7.fhir.dstu2016may.model.Ratio src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Ratio tgt = new org.hl7.fhir.dstu3.model.Ratio(); + copyElement(src, tgt); + tgt.setNumerator(convertQuantity(src.getNumerator())); + tgt.setDenominator(convertQuantity(src.getDenominator())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Ratio convertRatio(org.hl7.fhir.dstu3.model.Ratio src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Ratio tgt = new org.hl7.fhir.dstu2016may.model.Ratio(); + copyElement(src, tgt); + tgt.setNumerator(convertQuantity(src.getNumerator())); + tgt.setDenominator(convertQuantity(src.getDenominator())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Reference convertReference(org.hl7.fhir.dstu2016may.model.Reference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Reference tgt = new org.hl7.fhir.dstu3.model.Reference(); + copyElement(src, tgt); + if (src.hasReference()) + tgt.setReference(src.getReference()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Reference convertReference(org.hl7.fhir.dstu3.model.Reference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Reference tgt = new org.hl7.fhir.dstu2016may.model.Reference(); + copyElement(src, tgt); + if (src.hasReference()) + tgt.setReference(src.getReference()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SampledData convertSampledData(org.hl7.fhir.dstu2016may.model.SampledData src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.SampledData tgt = new org.hl7.fhir.dstu3.model.SampledData(); + copyElement(src, tgt); + tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); + tgt.setPeriod(src.getPeriod()); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasLowerLimit()) + tgt.setLowerLimit(src.getLowerLimit()); + if (src.hasUpperLimit()) + tgt.setUpperLimit(src.getUpperLimit()); + tgt.setDimensions(src.getDimensions()); + tgt.setData(src.getData()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.SampledData convertSampledData(org.hl7.fhir.dstu3.model.SampledData src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.SampledData tgt = new org.hl7.fhir.dstu2016may.model.SampledData(); + copyElement(src, tgt); + tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); + tgt.setPeriod(src.getPeriod()); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasLowerLimit()) + tgt.setLowerLimit(src.getLowerLimit()); + if (src.hasUpperLimit()) + tgt.setUpperLimit(src.getUpperLimit()); + tgt.setDimensions(src.getDimensions()); + tgt.setData(src.getData()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Signature convertSignature(org.hl7.fhir.dstu2016may.model.Signature src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Signature tgt = new org.hl7.fhir.dstu3.model.Signature(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + tgt.setWhen(src.getWhen()); + tgt.setWho(convertType(src.getWho())); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Signature convertSignature(org.hl7.fhir.dstu3.model.Signature src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Signature tgt = new org.hl7.fhir.dstu2016may.model.Signature(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + tgt.setWhen(src.getWhen()); + tgt.setWho(convertType(src.getWho())); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Address convertAddress(org.hl7.fhir.dstu2016may.model.Address src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Address tgt = new org.hl7.fhir.dstu3.model.Address(); + copyElement(src, tgt); + tgt.setUse(convertAddressUse(src.getUse())); + tgt.setType(convertAddressType(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getLine()) + tgt.addLine(t.getValue()); + if (src.hasCity()) + tgt.setCity(src.getCity()); + if (src.hasDistrict()) + tgt.setDistrict(src.getDistrict()); + if (src.hasState()) + tgt.setState(src.getState()); + if (src.hasPostalCode()) + tgt.setPostalCode(src.getPostalCode()); + if (src.hasCountry()) + tgt.setCountry(src.getCountry()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Address convertAddress(org.hl7.fhir.dstu3.model.Address src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Address tgt = new org.hl7.fhir.dstu2016may.model.Address(); + copyElement(src, tgt); + tgt.setUse(convertAddressUse(src.getUse())); + tgt.setType(convertAddressType(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getLine()) + tgt.addLine(t.getValue()); + if (src.hasCity()) + tgt.setCity(src.getCity()); + if (src.hasDistrict()) + tgt.setDistrict(src.getDistrict()); + if (src.hasState()) + tgt.setState(src.getState()); + if (src.hasPostalCode()) + tgt.setPostalCode(src.getPostalCode()); + if (src.hasCountry()) + tgt.setCountry(src.getCountry()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Address.AddressUse convertAddressUse(org.hl7.fhir.dstu2016may.model.Address.AddressUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.dstu3.model.Address.AddressUse.HOME; + case WORK: return org.hl7.fhir.dstu3.model.Address.AddressUse.WORK; + case TEMP: return org.hl7.fhir.dstu3.model.Address.AddressUse.TEMP; + case OLD: return org.hl7.fhir.dstu3.model.Address.AddressUse.OLD; + default: return org.hl7.fhir.dstu3.model.Address.AddressUse.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Address.AddressUse convertAddressUse(org.hl7.fhir.dstu3.model.Address.AddressUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.HOME; + case WORK: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.WORK; + case TEMP: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.TEMP; + case OLD: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.OLD; + default: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.Address.AddressType convertAddressType(org.hl7.fhir.dstu2016may.model.Address.AddressType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case POSTAL: return org.hl7.fhir.dstu3.model.Address.AddressType.POSTAL; + case PHYSICAL: return org.hl7.fhir.dstu3.model.Address.AddressType.PHYSICAL; + case BOTH: return org.hl7.fhir.dstu3.model.Address.AddressType.BOTH; + default: return org.hl7.fhir.dstu3.model.Address.AddressType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Address.AddressType convertAddressType(org.hl7.fhir.dstu3.model.Address.AddressType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case POSTAL: return org.hl7.fhir.dstu2016may.model.Address.AddressType.POSTAL; + case PHYSICAL: return org.hl7.fhir.dstu2016may.model.Address.AddressType.PHYSICAL; + case BOTH: return org.hl7.fhir.dstu2016may.model.Address.AddressType.BOTH; + default: return org.hl7.fhir.dstu2016may.model.Address.AddressType.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ContactPoint convertContactPoint(org.hl7.fhir.dstu2016may.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactPoint tgt = new org.hl7.fhir.dstu3.model.ContactPoint(); + copyElement(src, tgt); + tgt.setSystem(convertContactPointSystem(src.getSystem())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setUse(convertContactPointUse(src.getUse())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ContactPoint convertContactPoint(org.hl7.fhir.dstu3.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ContactPoint tgt = new org.hl7.fhir.dstu2016may.model.ContactPoint(); + copyElement(src, tgt); + tgt.setSystem(convertContactPointSystem(src.getSystem())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setUse(convertContactPointUse(src.getUse())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHONE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PHONE; + case FAX: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.FAX; + case EMAIL: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.EMAIL; + case PAGER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PAGER; + case OTHER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.URL; + default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHONE: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.PHONE; + case FAX: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.FAX; + case EMAIL: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.EMAIL; + case PAGER: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.PAGER; + case URL: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.OTHER; + default: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.HOME; + case WORK: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.WORK; + case TEMP: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.TEMP; + case OLD: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.OLD; + case MOBILE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.MOBILE; + default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.HOME; + case WORK: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.WORK; + case TEMP: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.TEMP; + case OLD: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.OLD; + case MOBILE: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.MOBILE; + default: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition convertElementDefinition(org.hl7.fhir.dstu2016may.model.ElementDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition tgt = new org.hl7.fhir.dstu3.model.ElementDefinition(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + for (org.hl7.fhir.dstu2016may.model.Enumeration t : src.getRepresentation()) + tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); + if (src.hasName()) + tgt.setSliceName(src.getName()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); + if (src.hasShort()) + tgt.setShort(src.getShort()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasComments()) + tgt.setComment(src.getComments()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); + if (src.hasContentReference()) + tgt.setContentReference(src.getContentReference()); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent t : src.getType()) + tgt.addType(convertTypeRefComponent(t)); + tgt.setDefaultValue(convertType(src.getDefaultValue())); + if (src.hasMeaningWhenMissing()) + tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); + tgt.setFixed(convertType(src.getFixed())); + tgt.setPattern(convertType(src.getPattern())); + if (src.hasExample()) + tgt.addExample().setLabel("General").setValue(convertType(src.getExample())); + tgt.setMinValue(convertType(src.getMinValue())); + tgt.setMaxValue(convertType(src.getMaxValue())); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + for (org.hl7.fhir.dstu2016may.model.IdType t : src.getCondition()) + tgt.addCondition(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) + tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); + if (src.hasMustSupport()) + tgt.setMustSupport(src.getMustSupport()); + if (src.hasIsModifier()) + tgt.setIsModifier(src.getIsModifier()); + if (src.hasIsSummary()) + tgt.setIsSummary(src.getIsSummary()); + tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertElementDefinitionMappingComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition convertElementDefinition(org.hl7.fhir.dstu3.model.ElementDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getRepresentation()) + tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); + if (src.hasSliceName()) + tgt.setName(src.getSliceName()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + if (src.hasSlicing()) + tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); + if (src.hasShort()) + tgt.setShort(src.getShort()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasComment()) + tgt.setComments(src.getComment()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasBase()) + tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); + if (src.hasContentReference()) + tgt.setContentReference(src.getContentReference()); + for (org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent t : src.getType()) + tgt.addType(convertTypeRefComponent(t)); + tgt.setDefaultValue(convertType(src.getDefaultValue())); + if (src.hasMeaningWhenMissing()) + tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); + tgt.setFixed(convertType(src.getFixed())); + tgt.setPattern(convertType(src.getPattern())); + if (src.hasExample()) + tgt.setExample(convertType(src.getExample().get(0).getValue())); + tgt.setMinValue(convertType(src.getMinValue())); + tgt.setMaxValue(convertType(src.getMaxValue())); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + for (org.hl7.fhir.dstu3.model.IdType t : src.getCondition()) + tgt.addCondition(t.getValue()); + for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) + tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); + if (src.hasMustSupport()) + tgt.setMustSupport(src.getMustSupport()); + if (src.hasIsModifier()) + tgt.setIsModifier(src.getIsModifier()); + if (src.hasIsSummary()) + tgt.setIsSummary(src.getIsSummary()); + if (src.hasBinding()) + tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); + for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertElementDefinitionMappingComponent(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XMLATTR: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XMLATTR; + case XMLTEXT: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XMLTEXT; + case TYPEATTR: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.TYPEATTR; + case CDATEXT: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.CDATEXT; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XMLATTR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.XMLATTR; + case XMLTEXT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.XMLTEXT; + case TYPEATTR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.TYPEATTR; + case CDATEXT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.CDATEXT; + default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getDiscriminator()) + tgt.addDiscriminator(ProfileUtilities.interpretR2Discriminator(t.getValue())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasOrdered()) + tgt.setOrdered(src.getOrdered()); + tgt.setRules(convertSlicingRules(src.getRules())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent(); + copyElement(src, tgt); + for (ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) + tgt.addDiscriminator(ProfileUtilities.buildR2Discriminator(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasOrdered()) + tgt.setOrdered(src.getOrdered()); + tgt.setRules(convertSlicingRules(src.getRules())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLOSED: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.CLOSED; + case OPEN: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPEN; + case OPENATEND: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPENATEND; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLOSED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.CLOSED; + case OPEN: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.OPEN; + case OPENATEND: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.OPENATEND; + default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getProfile()) { + if (src.getCode().equals("Reference")) + tgt.setTargetProfile(t.getValueAsString()); + else + tgt.setProfile(t.getValueAsString()); + } + for (org.hl7.fhir.dstu2016may.model.Enumeration t : src.getAggregation()) + tgt.addAggregation(convertAggregationMode(t.getValue())); + tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasCode() && "Reference".equals(src.getCode())) + tgt.addProfile(src.getTargetProfile()); + else + tgt.addProfile(src.getProfile()); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getAggregation()) + tgt.addAggregation(convertAggregationMode(t.getValue())); + tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONTAINED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.CONTAINED; + case REFERENCED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.REFERENCED; + case BUNDLED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.BUNDLED; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONTAINED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.CONTAINED; + case REFERENCED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.REFERENCED; + case BUNDLED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.BUNDLED; + default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EITHER: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.EITHER; + case INDEPENDENT: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; + case SPECIFIC: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EITHER: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.EITHER; + case INDEPENDENT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; + case SPECIFIC: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; + default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent(); + copyElement(src, tgt); + tgt.setKey(src.getKey()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); + tgt.setHuman(src.getHuman()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + tgt.setXpath(src.getXpath()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent(); + copyElement(src, tgt); + tgt.setKey(src.getKey()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); + tgt.setHuman(src.getHuman()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + tgt.setXpath(src.getXpath()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ERROR: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.ERROR; + case WARNING: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.WARNING; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ERROR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.ERROR; + case WARNING: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.WARNING; + default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.REQUIRED; + case EXTENSIBLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXTENSIBLE; + case PREFERRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.PREFERRED; + case EXAMPLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXAMPLE; + default: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.dstu3.model.Enumerations.BindingStrength src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.REQUIRED; + case EXTENSIBLE: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.EXTENSIBLE; + case PREFERRED: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.PREFERRED; + case EXAMPLE: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.EXAMPLE; + default: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setMap(src.getMap()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setMap(src.getMap()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.HumanName convertHumanName(org.hl7.fhir.dstu2016may.model.HumanName src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.HumanName tgt = new org.hl7.fhir.dstu3.model.HumanName(); + copyElement(src, tgt); + tgt.setUse(convertNameUse(src.getUse())); + if (src.hasText()) + tgt.setText(src.getText()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getFamily()) + tgt.setFamily(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getGiven()) + tgt.addGiven(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getPrefix()) + tgt.addPrefix(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSuffix()) + tgt.addSuffix(t.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.HumanName convertHumanName(org.hl7.fhir.dstu3.model.HumanName src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.HumanName tgt = new org.hl7.fhir.dstu2016may.model.HumanName(); + copyElement(src, tgt); + tgt.setUse(convertNameUse(src.getUse())); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasFamily()) + tgt.addFamily(src.getFamily()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getGiven()) + tgt.addGiven(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getPrefix()) + tgt.addPrefix(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getSuffix()) + tgt.addSuffix(t.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.HumanName.NameUse convertNameUse(org.hl7.fhir.dstu2016may.model.HumanName.NameUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.USUAL; + case OFFICIAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OFFICIAL; + case TEMP: return org.hl7.fhir.dstu3.model.HumanName.NameUse.TEMP; + case NICKNAME: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NICKNAME; + case ANONYMOUS: return org.hl7.fhir.dstu3.model.HumanName.NameUse.ANONYMOUS; + case OLD: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OLD; + case MAIDEN: return org.hl7.fhir.dstu3.model.HumanName.NameUse.MAIDEN; + default: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.HumanName.NameUse convertNameUse(org.hl7.fhir.dstu3.model.HumanName.NameUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.USUAL; + case OFFICIAL: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.OFFICIAL; + case TEMP: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.TEMP; + case NICKNAME: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.NICKNAME; + case ANONYMOUS: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.ANONYMOUS; + case OLD: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.OLD; + case MAIDEN: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.MAIDEN; + default: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.Meta convertMeta(org.hl7.fhir.dstu2016may.model.Meta src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Meta tgt = new org.hl7.fhir.dstu3.model.Meta(); + copyElement(src, tgt); + if (src.hasVersionId()) + tgt.setVersionId(src.getVersionId()); + if (src.hasLastUpdated()) + tgt.setLastUpdated(src.getLastUpdated()); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getSecurity()) + tgt.addSecurity(convertCoding(t)); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Meta convertMeta(org.hl7.fhir.dstu3.model.Meta src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Meta tgt = new org.hl7.fhir.dstu2016may.model.Meta(); + copyElement(src, tgt); + if (src.hasVersionId()) + tgt.setVersionId(src.getVersionId()); + if (src.hasLastUpdated()) + tgt.setLastUpdated(src.getLastUpdated()); + for (org.hl7.fhir.dstu3.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurity()) + tgt.addSecurity(convertCoding(t)); + for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Timing convertTiming(org.hl7.fhir.dstu2016may.model.Timing src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Timing tgt = new org.hl7.fhir.dstu3.model.Timing(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.DateTimeType t : src.getEvent()) + tgt.addEvent(t.getValue()); + tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Timing convertTiming(org.hl7.fhir.dstu3.model.Timing src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Timing tgt = new org.hl7.fhir.dstu2016may.model.Timing(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.DateTimeType t : src.getEvent()) + tgt.addEvent(t.getValue()); + tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent(); + copyElement(src, tgt); + tgt.setBounds(convertType(src.getBounds())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + if (src.hasCountMax()) + tgt.setCountMax(src.getCountMax()); + if (src.hasDuration()) + tgt.setDuration(src.getDuration()); + if (src.hasDurationMax()) + tgt.setDurationMax(src.getDurationMax()); + tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); + if (src.hasFrequency()) + tgt.setFrequency(src.getFrequency()); + if (src.hasFrequencyMax()) + tgt.setFrequencyMax(src.getFrequencyMax()); + if (src.hasPeriod()) + tgt.setPeriod(src.getPeriod()); + if (src.hasPeriodMax()) + tgt.setPeriodMax(src.getPeriodMax()); + tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); + tgt.addWhen(convertEventTiming(src.getWhen())); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent(); + copyElement(src, tgt); + tgt.setBounds(convertType(src.getBounds())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + if (src.hasCountMax()) + tgt.setCountMax(src.getCountMax()); + if (src.hasDuration()) + tgt.setDuration(src.getDuration()); + if (src.hasDurationMax()) + tgt.setDurationMax(src.getDurationMax()); + tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); + if (src.hasFrequency()) + tgt.setFrequency(src.getFrequency()); + if (src.hasFrequencyMax()) + tgt.setFrequencyMax(src.getFrequencyMax()); + if (src.hasPeriod()) + tgt.setPeriod(src.getPeriod()); + if (src.hasPeriodMax()) + tgt.setPeriodMax(src.getPeriodMax()); + tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); + for (Enumeration t : src.getWhen()) + tgt.setWhen(convertEventTiming(t.getValue())); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case S: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.S; + case MIN: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MIN; + case H: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.H; + case D: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.D; + case WK: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.WK; + case MO: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MO; + case A: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.A; + default: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.dstu3.model.Timing.UnitsOfTime src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case S: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.S; + case MIN: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.MIN; + case H: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.H; + case D: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.D; + case WK: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.WK; + case MO: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.MO; + case A: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.A; + default: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.dstu2016may.model.Timing.EventTiming src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HS: return org.hl7.fhir.dstu3.model.Timing.EventTiming.HS; + case WAKE: return org.hl7.fhir.dstu3.model.Timing.EventTiming.WAKE; + case C: return org.hl7.fhir.dstu3.model.Timing.EventTiming.C; + case CM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CM; + case CD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CD; + case CV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CV; + case AC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.AC; + case ACM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACM; + case ACD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACD; + case ACV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACV; + case PC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PC; + case PCM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCM; + case PCD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCD; + case PCV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCV; + default: return org.hl7.fhir.dstu3.model.Timing.EventTiming.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.dstu3.model.Timing.EventTiming src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HS: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.HS; + case WAKE: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.WAKE; + case C: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.C; + case CM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CM; + case CD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CD; + case CV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CV; + case AC: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.AC; + case ACM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACM; + case ACD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACD; + case ACV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACV; + case PC: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PC; + case PCM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCM; + case PCD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCD; + case PCV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCV; + default: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.dstu2016may.model.SimpleQuantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.SimpleQuantity tgt = new org.hl7.fhir.dstu3.model.SimpleQuantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.dstu3.model.SimpleQuantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.SimpleQuantity tgt = new org.hl7.fhir.dstu2016may.model.SimpleQuantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Type convertType(org.hl7.fhir.dstu2016may.model.Type src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.dstu2016may.model.Base64BinaryType) + return convertBase64Binary((org.hl7.fhir.dstu2016may.model.Base64BinaryType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.BooleanType) + return convertBoolean((org.hl7.fhir.dstu2016may.model.BooleanType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.CodeType) + return convertCode((org.hl7.fhir.dstu2016may.model.CodeType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.DateType) + return convertDate((org.hl7.fhir.dstu2016may.model.DateType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.DateTimeType) + return convertDateTime((org.hl7.fhir.dstu2016may.model.DateTimeType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.DecimalType) + return convertDecimal((org.hl7.fhir.dstu2016may.model.DecimalType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.IdType) + return convertId((org.hl7.fhir.dstu2016may.model.IdType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.InstantType) + return convertInstant((org.hl7.fhir.dstu2016may.model.InstantType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.IntegerType) + return convertInteger((org.hl7.fhir.dstu2016may.model.IntegerType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.MarkdownType) + return convertMarkdown((org.hl7.fhir.dstu2016may.model.MarkdownType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.OidType) + return convertOid((org.hl7.fhir.dstu2016may.model.OidType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.PositiveIntType) + return convertPositiveInt((org.hl7.fhir.dstu2016may.model.PositiveIntType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.StringType) + return convertString((org.hl7.fhir.dstu2016may.model.StringType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.TimeType) + return convertTime((org.hl7.fhir.dstu2016may.model.TimeType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.UnsignedIntType) + return convertUnsignedInt((org.hl7.fhir.dstu2016may.model.UnsignedIntType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.UriType) + return convertUri((org.hl7.fhir.dstu2016may.model.UriType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.UuidType) + return convertUuid((org.hl7.fhir.dstu2016may.model.UuidType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Extension) + return convertExtension((org.hl7.fhir.dstu2016may.model.Extension) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Narrative) + return convertNarrative((org.hl7.fhir.dstu2016may.model.Narrative) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Age) + return convertAge((org.hl7.fhir.dstu2016may.model.Age) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Annotation) + return convertAnnotation((org.hl7.fhir.dstu2016may.model.Annotation) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Attachment) + return convertAttachment((org.hl7.fhir.dstu2016may.model.Attachment) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.CodeableConcept) + return convertCodeableConcept((org.hl7.fhir.dstu2016may.model.CodeableConcept) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Coding) + return convertCoding((org.hl7.fhir.dstu2016may.model.Coding) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Count) + return convertCount((org.hl7.fhir.dstu2016may.model.Count) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Distance) + return convertDistance((org.hl7.fhir.dstu2016may.model.Distance) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Duration) + return convertDuration((org.hl7.fhir.dstu2016may.model.Duration) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Identifier) + return convertIdentifier((org.hl7.fhir.dstu2016may.model.Identifier) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Money) + return convertMoney((org.hl7.fhir.dstu2016may.model.Money) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Period) + return convertPeriod((org.hl7.fhir.dstu2016may.model.Period) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Quantity) + return convertQuantity((org.hl7.fhir.dstu2016may.model.Quantity) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Range) + return convertRange((org.hl7.fhir.dstu2016may.model.Range) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Ratio) + return convertRatio((org.hl7.fhir.dstu2016may.model.Ratio) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Reference) + return convertReference((org.hl7.fhir.dstu2016may.model.Reference) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.SampledData) + return convertSampledData((org.hl7.fhir.dstu2016may.model.SampledData) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Signature) + return convertSignature((org.hl7.fhir.dstu2016may.model.Signature) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Address) + return convertAddress((org.hl7.fhir.dstu2016may.model.Address) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.ContactPoint) + return convertContactPoint((org.hl7.fhir.dstu2016may.model.ContactPoint) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.ElementDefinition) + return convertElementDefinition((org.hl7.fhir.dstu2016may.model.ElementDefinition) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.HumanName) + return convertHumanName((org.hl7.fhir.dstu2016may.model.HumanName) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Meta) + return convertMeta((org.hl7.fhir.dstu2016may.model.Meta) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Timing) + return convertTiming((org.hl7.fhir.dstu2016may.model.Timing) src); + throw new Error("Unknown type "+src.fhirType()); + } + + public static org.hl7.fhir.dstu2016may.model.Type convertType(org.hl7.fhir.dstu3.model.Type src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.dstu3.model.Base64BinaryType) + return convertBase64Binary((org.hl7.fhir.dstu3.model.Base64BinaryType) src); + if (src instanceof org.hl7.fhir.dstu3.model.BooleanType) + return convertBoolean((org.hl7.fhir.dstu3.model.BooleanType) src); + if (src instanceof org.hl7.fhir.dstu3.model.CodeType) + return convertCode((org.hl7.fhir.dstu3.model.CodeType) src); + if (src instanceof org.hl7.fhir.dstu3.model.DateType) + return convertDate((org.hl7.fhir.dstu3.model.DateType) src); + if (src instanceof org.hl7.fhir.dstu3.model.DateTimeType) + return convertDateTime((org.hl7.fhir.dstu3.model.DateTimeType) src); + if (src instanceof org.hl7.fhir.dstu3.model.DecimalType) + return convertDecimal((org.hl7.fhir.dstu3.model.DecimalType) src); + if (src instanceof org.hl7.fhir.dstu3.model.IdType) + return convertId((org.hl7.fhir.dstu3.model.IdType) src); + if (src instanceof org.hl7.fhir.dstu3.model.InstantType) + return convertInstant((org.hl7.fhir.dstu3.model.InstantType) src); + if (src instanceof org.hl7.fhir.dstu3.model.IntegerType) + return convertInteger((org.hl7.fhir.dstu3.model.IntegerType) src); + if (src instanceof org.hl7.fhir.dstu3.model.MarkdownType) + return convertMarkdown((org.hl7.fhir.dstu3.model.MarkdownType) src); + if (src instanceof org.hl7.fhir.dstu3.model.OidType) + return convertOid((org.hl7.fhir.dstu3.model.OidType) src); + if (src instanceof org.hl7.fhir.dstu3.model.PositiveIntType) + return convertPositiveInt((org.hl7.fhir.dstu3.model.PositiveIntType) src); + if (src instanceof org.hl7.fhir.dstu3.model.StringType) + return convertString((org.hl7.fhir.dstu3.model.StringType) src); + if (src instanceof org.hl7.fhir.dstu3.model.TimeType) + return convertTime((org.hl7.fhir.dstu3.model.TimeType) src); + if (src instanceof org.hl7.fhir.dstu3.model.UnsignedIntType) + return convertUnsignedInt((org.hl7.fhir.dstu3.model.UnsignedIntType) src); + if (src instanceof org.hl7.fhir.dstu3.model.UriType) + return convertUri((org.hl7.fhir.dstu3.model.UriType) src); + if (src instanceof org.hl7.fhir.dstu3.model.UuidType) + return convertUuid((org.hl7.fhir.dstu3.model.UuidType) src); + if (src instanceof org.hl7.fhir.dstu3.model.Extension) + return convertExtension((org.hl7.fhir.dstu3.model.Extension) src); + if (src instanceof org.hl7.fhir.dstu3.model.Narrative) + return convertNarrative((org.hl7.fhir.dstu3.model.Narrative) src); + if (src instanceof org.hl7.fhir.dstu3.model.Age) + return convertAge((org.hl7.fhir.dstu3.model.Age) src); + if (src instanceof org.hl7.fhir.dstu3.model.Annotation) + return convertAnnotation((org.hl7.fhir.dstu3.model.Annotation) src); + if (src instanceof org.hl7.fhir.dstu3.model.Attachment) + return convertAttachment((org.hl7.fhir.dstu3.model.Attachment) src); + if (src instanceof org.hl7.fhir.dstu3.model.CodeableConcept) + return convertCodeableConcept((org.hl7.fhir.dstu3.model.CodeableConcept) src); + if (src instanceof org.hl7.fhir.dstu3.model.Coding) + return convertCoding((org.hl7.fhir.dstu3.model.Coding) src); + if (src instanceof org.hl7.fhir.dstu3.model.Count) + return convertCount((org.hl7.fhir.dstu3.model.Count) src); + if (src instanceof org.hl7.fhir.dstu3.model.Distance) + return convertDistance((org.hl7.fhir.dstu3.model.Distance) src); + if (src instanceof org.hl7.fhir.dstu3.model.Duration) + return convertDuration((org.hl7.fhir.dstu3.model.Duration) src); + if (src instanceof org.hl7.fhir.dstu3.model.Identifier) + return convertIdentifier((org.hl7.fhir.dstu3.model.Identifier) src); + if (src instanceof org.hl7.fhir.dstu3.model.Money) + return convertMoney((org.hl7.fhir.dstu3.model.Money) src); + if (src instanceof org.hl7.fhir.dstu3.model.Period) + return convertPeriod((org.hl7.fhir.dstu3.model.Period) src); + if (src instanceof org.hl7.fhir.dstu3.model.Quantity) + return convertQuantity((org.hl7.fhir.dstu3.model.Quantity) src); + if (src instanceof org.hl7.fhir.dstu3.model.Range) + return convertRange((org.hl7.fhir.dstu3.model.Range) src); + if (src instanceof org.hl7.fhir.dstu3.model.Ratio) + return convertRatio((org.hl7.fhir.dstu3.model.Ratio) src); + if (src instanceof org.hl7.fhir.dstu3.model.Reference) + return convertReference((org.hl7.fhir.dstu3.model.Reference) src); + if (src instanceof org.hl7.fhir.dstu3.model.SampledData) + return convertSampledData((org.hl7.fhir.dstu3.model.SampledData) src); + if (src instanceof org.hl7.fhir.dstu3.model.Signature) + return convertSignature((org.hl7.fhir.dstu3.model.Signature) src); + if (src instanceof org.hl7.fhir.dstu3.model.Address) + return convertAddress((org.hl7.fhir.dstu3.model.Address) src); + if (src instanceof org.hl7.fhir.dstu3.model.ContactPoint) + return convertContactPoint((org.hl7.fhir.dstu3.model.ContactPoint) src); + if (src instanceof org.hl7.fhir.dstu3.model.ElementDefinition) + return convertElementDefinition((org.hl7.fhir.dstu3.model.ElementDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.HumanName) + return convertHumanName((org.hl7.fhir.dstu3.model.HumanName) src); + if (src instanceof org.hl7.fhir.dstu3.model.Meta) + return convertMeta((org.hl7.fhir.dstu3.model.Meta) src); + if (src instanceof org.hl7.fhir.dstu3.model.Timing) + return convertTiming((org.hl7.fhir.dstu3.model.Timing) src); + throw new Error("Unknown type "+src.fhirType()); + } + + private static void copyDomainResource(org.hl7.fhir.dstu2016may.model.DomainResource src, org.hl7.fhir.dstu3.model.DomainResource tgt) throws FHIRException { + copyResource(src, tgt); + tgt.setText(convertNarrative(src.getText())); + for (org.hl7.fhir.dstu2016may.model.Resource t : src.getContained()) + tgt.addContained(convertResource(t)); + for (org.hl7.fhir.dstu2016may.model.Extension t : src.getExtension()) + tgt.addExtension(convertExtension(t)); + for (org.hl7.fhir.dstu2016may.model.Extension t : src.getModifierExtension()) + tgt.addModifierExtension(convertExtension(t)); + } + private static void copyDomainResource(org.hl7.fhir.dstu3.model.DomainResource src, org.hl7.fhir.dstu2016may.model.DomainResource tgt) throws FHIRException { + copyResource(src, tgt); + if (src.hasText()) + tgt.setText(convertNarrative(src.getText())); + for (org.hl7.fhir.dstu3.model.Resource t : src.getContained()) + tgt.addContained(convertResource(t)); + for (org.hl7.fhir.dstu3.model.Extension t : src.getExtension()) + tgt.addExtension(convertExtension(t)); + for (org.hl7.fhir.dstu3.model.Extension t : src.getModifierExtension()) + tgt.addModifierExtension(convertExtension(t)); + } + public static org.hl7.fhir.dstu3.model.Parameters convertParameters(org.hl7.fhir.dstu2016may.model.Parameters src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Parameters tgt = new org.hl7.fhir.dstu3.model.Parameters(); + copyResource(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent t : src.getParameter()) + tgt.addParameter(convertParametersParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Parameters convertParameters(org.hl7.fhir.dstu3.model.Parameters src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Parameters tgt = new org.hl7.fhir.dstu2016may.model.Parameters(); + copyResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getParameter()) + tgt.addParameter(convertParametersParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + tgt.setResource(convertResource(src.getResource())); + for (org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent t : src.getPart()) + tgt.addPart(convertParametersParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + tgt.setResource(convertResource(src.getResource())); + for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getPart()) + tgt.addPart(convertParametersParameterComponent(t)); + return tgt; + } + + private static void copyResource(org.hl7.fhir.dstu2016may.model.Resource src, org.hl7.fhir.dstu3.model.Resource tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + tgt.setMeta(convertMeta(src.getMeta())); + if (src.hasImplicitRules()) + tgt.setImplicitRules(src.getImplicitRules()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + } + private static void copyResource(org.hl7.fhir.dstu3.model.Resource src, org.hl7.fhir.dstu2016may.model.Resource tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + if (src.hasMeta()) + tgt.setMeta(convertMeta(src.getMeta())); + if (src.hasImplicitRules()) + tgt.setImplicitRules(src.getImplicitRules()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + } + + public static org.hl7.fhir.dstu3.model.Binary convertBinary(org.hl7.fhir.dstu2016may.model.Binary src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Binary tgt = new org.hl7.fhir.dstu3.model.Binary(); + copyResource(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setContent(src.getContent()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Binary convertBinary(org.hl7.fhir.dstu3.model.Binary src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Binary tgt = new org.hl7.fhir.dstu2016may.model.Binary(); + copyResource(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setContent(src.getContent()); + return tgt; + } + + + public static org.hl7.fhir.dstu3.model.Bundle convertBundle(org.hl7.fhir.dstu2016may.model.Bundle src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle tgt = new org.hl7.fhir.dstu3.model.Bundle(); + copyResource(src, tgt); + tgt.setType(convertBundleType(src.getType())); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + for (org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent t : src.getEntry()) + tgt.addEntry(convertBundleEntryComponent(t)); + tgt.setSignature(convertSignature(src.getSignature())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle convertBundle(org.hl7.fhir.dstu3.model.Bundle src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle tgt = new org.hl7.fhir.dstu2016may.model.Bundle(); + copyResource(src, tgt); + tgt.setType(convertBundleType(src.getType())); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + for (org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent t : src.getEntry()) + tgt.addEntry(convertBundleEntryComponent(t)); + tgt.setSignature(convertSignature(src.getSignature())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Bundle.BundleType convertBundleType(org.hl7.fhir.dstu2016may.model.Bundle.BundleType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENT: return org.hl7.fhir.dstu3.model.Bundle.BundleType.DOCUMENT; + case MESSAGE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.MESSAGE; + case TRANSACTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTION; + case TRANSACTIONRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTIONRESPONSE; + case BATCH: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCH; + case BATCHRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCHRESPONSE; + case HISTORY: return org.hl7.fhir.dstu3.model.Bundle.BundleType.HISTORY; + case SEARCHSET: return org.hl7.fhir.dstu3.model.Bundle.BundleType.SEARCHSET; + case COLLECTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.COLLECTION; + default: return org.hl7.fhir.dstu3.model.Bundle.BundleType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Bundle.BundleType convertBundleType(org.hl7.fhir.dstu3.model.Bundle.BundleType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENT: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.DOCUMENT; + case MESSAGE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.MESSAGE; + case TRANSACTION: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.TRANSACTION; + case TRANSACTIONRESPONSE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.TRANSACTIONRESPONSE; + case BATCH: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.BATCH; + case BATCHRESPONSE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.BATCHRESPONSE; + case HISTORY: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.HISTORY; + case SEARCHSET: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.SEARCHSET; + case COLLECTION: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.COLLECTION; + default: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent(); + copyElement(src, tgt); + tgt.setRelation(src.getRelation()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent(); + copyElement(src, tgt); + tgt.setRelation(src.getRelation()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + if (src.hasFullUrl()) + tgt.setFullUrl(src.getFullUrl()); + tgt.setResource(convertResource(src.getResource())); + tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); + tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); + tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + if (src.hasFullUrl()) + tgt.setFullUrl(src.getFullUrl()); + tgt.setResource(convertResource(src.getResource())); + tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); + tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); + tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent(); + copyElement(src, tgt); + tgt.setMode(convertSearchEntryMode(src.getMode())); + if (src.hasScore()) + tgt.setScore(src.getScore()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent(); + copyElement(src, tgt); + tgt.setMode(convertSearchEntryMode(src.getMode())); + if (src.hasScore()) + tgt.setScore(src.getScore()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MATCH: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.MATCH; + case INCLUDE: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.INCLUDE; + case OUTCOME: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.OUTCOME; + default: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MATCH: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.MATCH; + case INCLUDE: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.INCLUDE; + case OUTCOME: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.OUTCOME; + default: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent(); + copyElement(src, tgt); + tgt.setMethod(convertHTTPVerb(src.getMethod())); + tgt.setUrl(src.getUrl()); + if (src.hasIfNoneMatch()) + tgt.setIfNoneMatch(src.getIfNoneMatch()); + if (src.hasIfModifiedSince()) + tgt.setIfModifiedSince(src.getIfModifiedSince()); + if (src.hasIfMatch()) + tgt.setIfMatch(src.getIfMatch()); + if (src.hasIfNoneExist()) + tgt.setIfNoneExist(src.getIfNoneExist()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent(); + copyElement(src, tgt); + tgt.setMethod(convertHTTPVerb(src.getMethod())); + tgt.setUrl(src.getUrl()); + if (src.hasIfNoneMatch()) + tgt.setIfNoneMatch(src.getIfNoneMatch()); + if (src.hasIfModifiedSince()) + tgt.setIfModifiedSince(src.getIfModifiedSince()); + if (src.hasIfMatch()) + tgt.setIfMatch(src.getIfMatch()); + if (src.hasIfNoneExist()) + tgt.setIfNoneExist(src.getIfNoneExist()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GET: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.GET; + case POST: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.POST; + case PUT: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.PUT; + case DELETE: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.DELETE; + default: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.dstu3.model.Bundle.HTTPVerb src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GET: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.GET; + case POST: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.POST; + case PUT: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.PUT; + case DELETE: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.DELETE; + default: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent(); + copyElement(src, tgt); + tgt.setStatus(src.getStatus()); + if (src.hasLocation()) + tgt.setLocation(src.getLocation()); + if (src.hasEtag()) + tgt.setEtag(src.getEtag()); + if (src.hasLastModified()) + tgt.setLastModified(src.getLastModified()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent(); + copyElement(src, tgt); + tgt.setStatus(src.getStatus()); + if (src.hasLocation()) + tgt.setLocation(src.getLocation()); + if (src.hasEtag()) + tgt.setEtag(src.getEtag()); + if (src.hasLastModified()) + tgt.setLastModified(src.getLastModified()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus convertConformanceResourceStatus(org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.RETIRED; + default: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.NULL; + } + } + + public static org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus convertConformanceResourceStatus(org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.RETIRED; + default: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.CodeSystem convertCodeSystem(org.hl7.fhir.dstu2016may.model.CodeSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CodeSystem tgt = new org.hl7.fhir.dstu3.model.CodeSystem(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent t : src.getContact()) + tgt.addContact(convertCodeSystemContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasCaseSensitive()) + tgt.setCaseSensitive(src.getCaseSensitive()); + if (src.hasValueSet()) + tgt.setValueSet(src.getValueSet()); + if (src.hasCompositional()) + tgt.setCompositional(src.getCompositional()); + if (src.hasVersionNeeded()) + tgt.setVersionNeeded(src.getVersionNeeded()); + tgt.setContent(convertCodeSystemContentMode(src.getContent())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) + tgt.addFilter(convertCodeSystemFilterComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent t : src.getProperty()) + tgt.addProperty(convertPropertyComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + + private static boolean isJurisdiction(CodeableConcept t) { + return t.hasCoding() && ("http://unstats.un.org/unsd/methods/m49/m49.htm".equals(t.getCoding().get(0).getSystem()) || "urn:iso:std:iso:3166".equals(t.getCoding().get(0).getSystem()) + || "https://www.usps.com/".equals(t.getCoding().get(0).getSystem())); + } + + public static org.hl7.fhir.dstu3.model.UsageContext convertCodeableConceptToUsageContext(org.hl7.fhir.dstu2016may.model.CodeableConcept t) throws FHIRException { + org.hl7.fhir.dstu3.model.UsageContext result = new org.hl7.fhir.dstu3.model.UsageContext(); + // todo: set type.. + result.setValue(convertCodeableConcept(t)); + return result; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem convertCodeSystem(org.hl7.fhir.dstu3.model.CodeSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertCodeSystemContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasCaseSensitive()) + tgt.setCaseSensitive(src.getCaseSensitive()); + if (src.hasValueSet()) + tgt.setValueSet(src.getValueSet()); + if (src.hasCompositional()) + tgt.setCompositional(src.getCompositional()); + if (src.hasVersionNeeded()) + tgt.setVersionNeeded(src.getVersionNeeded()); + tgt.setContent(convertCodeSystemContentMode(src.getContent())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + for (org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) + tgt.addFilter(convertCodeSystemFilterComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent t : src.getProperty()) + tgt.addProperty(convertPropertyComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTPRESENT: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; + case EXAMPLAR: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.EXAMPLE; + case FRAGMENT: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.FRAGMENT; + case COMPLETE: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.COMPLETE; + default: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.NULL; + } +} + + private static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTPRESENT: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; + case EXAMPLE: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.EXAMPLAR; + case FRAGMENT: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.FRAGMENT; + case COMPLETE: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.COMPLETE; + default: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.NULL; + } +} + + public static org.hl7.fhir.dstu3.model.ContactDetail convertCodeSystemContactComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent convertCodeSystemContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getOperator()) + try { + tgt.addOperator(CodeSystem.FilterOperator.fromCode(t.getValue())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (Enumeration t : src.getOperator()) + tgt.addOperator(t.getValue().toCode()); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent convertPropertyComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setType(convertPropertyType(src.getType())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent convertPropertyComponent(org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setType(convertPropertyType(src.getType())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODE: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.CODE; + case CODING: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.CODING; + case STRING: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.STRING; + case INTEGER: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.INTEGER; + case BOOLEAN: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.BOOLEAN; + case DATETIME: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.DATETIME; + default: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.NULL; + } +} + + private static org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODE: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.CODE; + case CODING: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.CODING; + case STRING: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.STRING; + case INTEGER: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.INTEGER; + case BOOLEAN: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.BOOLEAN; + case DATETIME: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.DATETIME; + default: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.NULL; + } +} + + public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); + for (ConceptDefinitionPropertyComponent t : src.getProperty()) + tgt.addProperty(convertConceptPropertyComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent t : src.getProperty()) + tgt.addProperty(convertConceptPropertyComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu2016may.model.CompartmentDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu3.model.CompartmentDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent t : src.getContact()) + tgt.addContact(convertCompartmentDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + tgt.setCode(convertCompartmentType(src.getCode())); + tgt.setSearch(src.getSearch()); + for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) + tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu3.model.CompartmentDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertCompartmentDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + tgt.setCode(convertCompartmentType(src.getCode())); + tgt.setSearch(src.getSearch()); + for (org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) + tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.PATIENT; + case ENCOUNTER: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.ENCOUNTER; + case RELATEDPERSON: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; + case PRACTITIONER: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.DEVICE; + default: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.NULL; + } +} + + private static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.PATIENT; + case ENCOUNTER: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.ENCOUNTER; + case RELATEDPERSON: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; + case PRACTITIONER: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.DEVICE; + default: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.NULL; + } +} + + public static org.hl7.fhir.dstu3.model.ContactDetail convertCompartmentDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent convertCompartmentDefinitionContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getParam()) + tgt.addParam(t.getValue()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getParam()) + tgt.addParam(t.getValue()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + + public static org.hl7.fhir.dstu3.model.ConceptMap convertConceptMap(org.hl7.fhir.dstu2016may.model.ConceptMap src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ConceptMap tgt = new org.hl7.fhir.dstu3.model.ConceptMap(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent t : src.getContact()) + tgt.addContact(convertConceptMapContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + tgt.setSource(convertType(src.getSource())); + tgt.setTarget(convertType(src.getTarget())); + for (org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent t : src.getElement()) { + List ws = convertSourceElementComponent(t); + for (SourceElementComponentWrapper w : ws) + getGroup(tgt, w.source, w.target).addElement(w.comp); + } + return tgt; + } + + private static ConceptMapGroupComponent getGroup(ConceptMap map, String srcs, String tgts) { + for (ConceptMapGroupComponent grp : map.getGroup()) { + if (grp.getSource().equals(srcs) && grp.getTarget().equals(tgts)) + return grp; + } + ConceptMapGroupComponent grp = map.addGroup(); + grp.setSource(srcs); + grp.setTarget(tgts); + return grp; + } + + + public static org.hl7.fhir.dstu2016may.model.ConceptMap convertConceptMap(org.hl7.fhir.dstu3.model.ConceptMap src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ConceptMap tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertConceptMapContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + tgt.setSource(convertType(src.getSource())); + tgt.setTarget(convertType(src.getTarget())); + for (org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g : src.getGroup()) + for (org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent t : g.getElement()) + tgt.addElement(convertSourceElementComponent(t, g)); + return tgt; + } + + + public static org.hl7.fhir.dstu3.model.ContactDetail convertConceptMapContactComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent convertConceptMapContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + private static class SourceElementComponentWrapper { + public SourceElementComponentWrapper(SourceElementComponent comp, String source, String target) { + super(); + this.source = source; + this.target = target; + this.comp = comp; + } + private String source; + private String target; + private org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent comp; + + } + public static List convertSourceElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent src) throws FHIRException { + List res = new ArrayList(); + if (src == null || src.isEmpty()) + return res; + for (org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent t : src.getTarget()) { + org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + tgt.addTarget(convertTargetElementComponent(t)); + res.add(new SourceElementComponentWrapper(tgt, src.getSystem(), t.getSystem())); + } + return res; + } + + public static org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent src, org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent(); + copyElement(src, tgt); + if (g.hasSource()) + tgt.setSystem(g.getSource()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent t : src.getTarget()) + tgt.addTarget(convertTargetElementComponent(t, g)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); + if (src.hasComments()) + tgt.setComment(src.getComments()); + for (org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) + tgt.addDependsOn(convertOtherElementComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent t : src.getProduct()) + tgt.addProduct(convertOtherElementComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent src, org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent(); + copyElement(src, tgt); + if (g.hasTarget()) + tgt.setSystem(g.getTarget()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); + if (src.hasComment()) + tgt.setComments(src.getComment()); + for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) + tgt.addDependsOn(convertOtherElementComponent(t)); + for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getProduct()) + tgt.addProduct(convertOtherElementComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUIVALENT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; + case EQUAL: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUAL; + case WIDER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.WIDER; + case SUBSUMES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SUBSUMES; + case NARROWER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NARROWER; + case SPECIALIZES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; + case INEXACT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.INEXACT; + case UNMATCHED: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.UNMATCHED; + case DISJOINT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.DISJOINT; + default: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NULL; + } + } + + public static org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUIVALENT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; + case EQUAL: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.EQUAL; + case WIDER: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.WIDER; + case SUBSUMES: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.SUBSUMES; + case NARROWER: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.NARROWER; + case SPECIALIZES: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; + case INEXACT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.INEXACT; + case UNMATCHED: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.UNMATCHED; + case DISJOINT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.DISJOINT; + default: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getElement()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent(); + copyElement(src, tgt); + tgt.setElement(src.getProperty()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + + public static org.hl7.fhir.dstu3.model.CapabilityStatement convertConformance(org.hl7.fhir.dstu2016may.model.Conformance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent t : src.getContact()) + tgt.addContact(convertConformanceContactComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + tgt.setKind(convertConformanceStatementKind(src.getKind())); + tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); + tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); + tgt.setFhirVersion(src.getFhirVersion()); + tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getFormat()) + tgt.addFormat(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent t : src.getRest()) + tgt.addRest(convertConformanceRestComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent t : src.getMessaging()) + tgt.addMessaging(convertConformanceMessagingComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent t : src.getDocument()) + tgt.addDocument(convertConformanceDocumentComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance convertConformance(org.hl7.fhir.dstu3.model.CapabilityStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance tgt = new org.hl7.fhir.dstu2016may.model.Conformance(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertConformanceContactComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + tgt.setKind(convertConformanceStatementKind(src.getKind())); + tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); + tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); + tgt.setFhirVersion(src.getFhirVersion()); + tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getFormat()) + tgt.addFormat(t.getValue()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) + tgt.addRest(convertConformanceRestComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) + tgt.addMessaging(convertConformanceMessagingComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) + tgt.addDocument(convertConformanceDocumentComponent(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind convertConformanceStatementKind(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; + case CAPABILITY: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; + case REQUIREMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind convertConformanceStatementKind(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.INSTANCE; + case CAPABILITY: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.CAPABILITY; + case REQUIREMENTS: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.REQUIREMENTS; + default: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NO: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NO; + case EXTENSIONS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; + case ELEMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.ELEMENTS; + case BOTH: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.BOTH; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NO: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.NO; + case EXTENSIONS: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.EXTENSIONS; + case ELEMENTS: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.ELEMENTS; + case BOTH: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.BOTH; + default: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertConformanceContactComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent convertConformanceContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasReleaseDate()) + tgt.setReleaseDate(src.getReleaseDate()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasReleaseDate()) + tgt.setReleaseDate(src.getReleaseDate()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent convertConformanceRestComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent(); + copyElement(src, tgt); + tgt.setMode(convertRestfulConformanceMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent t : src.getResource()) + tgt.addResource(convertConformanceRestResourceComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertSystemInteractionComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent t : src.getOperation()) + tgt.addOperation(convertConformanceRestOperationComponent(t)); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getCompartment()) + tgt.addCompartment(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent convertConformanceRestComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent(); + copyElement(src, tgt); + tgt.setMode(convertRestfulConformanceMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) + tgt.addResource(convertConformanceRestResourceComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertSystemInteractionComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) + tgt.addOperation(convertConformanceRestOperationComponent(t)); + for (org.hl7.fhir.dstu3.model.UriType t : src.getCompartment()) + tgt.addCompartment(t.getValue()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode convertRestfulConformanceMode(org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLIENT: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; + case SERVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.SERVER; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode convertRestfulConformanceMode(org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLIENT: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.CLIENT; + case SERVER: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.SERVER; + default: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); + copyElement(src, tgt); + if (src.hasCors()) + tgt.setCors(src.getCors()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getService()) + tgt.addService(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent t : src.getCertificate()) + tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent(); + copyElement(src, tgt); + if (src.hasCors()) + tgt.setCors(src.getCors()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getService()) + tgt.addService(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) + tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + for (org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertResourceInteractionComponent(t)); + tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); + if (src.hasReadHistory()) + tgt.setReadHistory(src.getReadHistory()); + if (src.hasUpdateCreate()) + tgt.setUpdateCreate(src.getUpdateCreate()); + if (src.hasConditionalCreate()) + tgt.setConditionalCreate(src.getConditionalCreate()); + if (src.hasConditionalUpdate()) + tgt.setConditionalUpdate(src.getConditionalUpdate()); + tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSearchInclude()) + tgt.addSearchInclude(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSearchRevInclude()) + tgt.addSearchRevInclude(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertResourceInteractionComponent(t)); + tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); + if (src.hasReadHistory()) + tgt.setReadHistory(src.getReadHistory()); + if (src.hasUpdateCreate()) + tgt.setUpdateCreate(src.getUpdateCreate()); + if (src.hasConditionalCreate()) + tgt.setConditionalCreate(src.getConditionalCreate()); + if (src.hasConditionalUpdate()) + tgt.setConditionalUpdate(src.getConditionalUpdate()); + tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); + for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchInclude()) + tgt.addSearchInclude(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchRevInclude()) + tgt.addSearchRevInclude(t.getValue()); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOVERSION: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; + case VERSIONED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; + case VERSIONEDUPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOVERSION: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.NOVERSION; + case VERSIONED: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.VERSIONED; + case VERSIONEDUPDATE: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.VERSIONEDUPDATE; + default: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; + case SINGLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; + case MULTIPLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.NOTSUPPORTED; + case SINGLE: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.SINGLE; + case MULTIPLE: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.MULTIPLE; + default: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertTypeRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertTypeRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case READ: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.READ; + case VREAD: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.VREAD; + case UPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; + case DELETE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.DELETE; + case HISTORYINSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; + case HISTORYTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; + case CREATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.CREATE; + case SEARCHTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case READ: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.READ; + case VREAD: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.VREAD; + case UPDATE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.UPDATE; + case DELETE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.DELETE; + case HISTORYINSTANCE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.HISTORYINSTANCE; + case HISTORYTYPE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.HISTORYTYPE; + case CREATE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.CREATE; + case SEARCHTYPE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.SEARCHTYPE; + default: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NUMBER: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NUMBER; + case DATE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.DATE; + case STRING: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.STRING; + case TOKEN: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.TOKEN; + case REFERENCE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.REFERENCE; + case COMPOSITE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.COMPOSITE; + case QUANTITY: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.QUANTITY; + case URI: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.URI; + default: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NULL; + } + } + + public static org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.dstu3.model.Enumerations.SearchParamType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NUMBER: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.NUMBER; + case DATE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.DATE; + case STRING: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.STRING; + case TOKEN: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.TOKEN; + case REFERENCE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.REFERENCE; + case COMPOSITE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.COMPOSITE; + case QUANTITY: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.QUANTITY; + case URI: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.URI; + default: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + tgt.setType(convertSearchParamType(src.getType())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + tgt.setType(convertSearchParamType(src.getType())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertSystemRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertSystemRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TRANSACTION: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; + case SEARCHSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; + case HISTORYSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TRANSACTION: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.TRANSACTION; + case SEARCHSYSTEM: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.SEARCHSYSTEM; + case HISTORYSYSTEM: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.HISTORYSYSTEM; + default: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent t : src.getEndpoint()) + tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); + if (src.hasReliableCache()) + tgt.setReliableCache(src.getReliableCache()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent t : src.getEvent()) + tgt.addEvent(convertConformanceMessagingEventComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) + tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); + if (src.hasReliableCache()) + tgt.setReliableCache(src.getReliableCache()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) + tgt.addEvent(convertConformanceMessagingEventComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); + copyElement(src, tgt); + tgt.setProtocol(convertCoding(src.getProtocol())); + tgt.setAddress(src.getAddress()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent(); + copyElement(src, tgt); + tgt.setProtocol(convertCoding(src.getProtocol())); + tgt.setAddress(src.getAddress()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); + copyElement(src, tgt); + tgt.setCode(convertCoding(src.getCode())); + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + tgt.setMode(convertConformanceEventMode(src.getMode())); + tgt.setFocus(src.getFocus()); + tgt.setRequest(convertReference(src.getRequest())); + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent(); + copyElement(src, tgt); + tgt.setCode(convertCoding(src.getCode())); + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + tgt.setMode(convertConformanceEventMode(src.getMode())); + tgt.setFocus(src.getFocus()); + tgt.setRequest(convertReference(src.getRequest())); + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode convertConformanceEventMode(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SENDER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.SENDER; + case RECEIVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.RECEIVER; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode convertConformanceEventMode(org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SENDER: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.SENDER; + case RECEIVER: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.RECEIVER; + default: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent(); + copyElement(src, tgt); + tgt.setMode(convertDocumentMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent(); + copyElement(src, tgt); + tgt.setMode(convertDocumentMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRODUCER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.PRODUCER; + case CONSUMER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.CONSUMER; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode convertDocumentMode(org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRODUCER: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.PRODUCER; + case CONSUMER: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.CONSUMER; + default: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.NULL; + } + } + + + public static org.hl7.fhir.dstu3.model.DataElement convertDataElement(org.hl7.fhir.dstu2016may.model.DataElement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DataElement tgt = new org.hl7.fhir.dstu3.model.DataElement(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent t : src.getContact()) + tgt.addContact(convertDataElementContactComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + tgt.setStringency(convertDataElementStringency(src.getStringency())); + for (org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent t : src.getMapping()) + tgt.addMapping(convertDataElementMappingComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.DataElement convertDataElement(org.hl7.fhir.dstu3.model.DataElement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.DataElement tgt = new org.hl7.fhir.dstu2016may.model.DataElement(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertDataElementContactComponent(t)); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + tgt.setStringency(convertDataElementStringency(src.getStringency())); + for (org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent t : src.getMapping()) + tgt.addMapping(convertDataElementMappingComponent(t)); + for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPARABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.COMPARABLE; + case FULLYSPECIFIED: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FULLYSPECIFIED; + case EQUIVALENT: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.EQUIVALENT; + case CONVERTABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.CONVERTABLE; + case SCALEABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.SCALEABLE; + case FLEXIBLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FLEXIBLE; + default: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.dstu3.model.DataElement.DataElementStringency src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPARABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.COMPARABLE; + case FULLYSPECIFIED: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.FULLYSPECIFIED; + case EQUIVALENT: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.EQUIVALENT; + case CONVERTABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.CONVERTABLE; + case SCALEABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.SCALEABLE; + case FLEXIBLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.FLEXIBLE; + default: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertDataElementContactComponent(org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent convertDataElementContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent tgt = new org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.dstu2016may.model.ImplementationGuide src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent t : src.getContact()) + tgt.addContact(convertImplementationGuideContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) + tgt.addDependency(convertImplementationGuideDependencyComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) + tgt.addPackage(convertImplementationGuidePackageComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) + tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getBinary()) + tgt.addBinary(t.getValue()); + tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.dstu3.model.ImplementationGuide src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertImplementationGuideContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) + tgt.addDependency(convertImplementationGuideDependencyComponent(t)); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) + tgt.addPackage(convertImplementationGuidePackageComponent(t)); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) + tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); + for (org.hl7.fhir.dstu3.model.UriType t : src.getBinary()) + tgt.addBinary(t.getValue()); + tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertImplementationGuideContactComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent convertImplementationGuideContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent(); + copyElement(src, tgt); + tgt.setType(convertGuideDependencyType(src.getType())); + tgt.setUri(src.getUri()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent(); + copyElement(src, tgt); + tgt.setType(convertGuideDependencyType(src.getType())); + tgt.setUri(src.getUri()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REFERENCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.REFERENCE; + case INCLUSION: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.INCLUSION; + default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REFERENCE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.REFERENCE; + case INCLUSION: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.INCLUSION; + default: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) + tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) + tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); + copyElement(src, tgt); + tgt.setExample(src.getExample()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAcronym()) + tgt.setAcronym(src.getAcronym()); + tgt.setSource(convertType(src.getSource())); + if (src.hasExampleFor()) + tgt.setExampleFor(convertReference(src.getExampleFor())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); + copyElement(src, tgt); + tgt.setExample(src.getExample()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAcronym()) + tgt.setAcronym(src.getAcronym()); + tgt.setSource(convertType(src.getSource())); + if (src.hasExampleFor()) + tgt.setExampleFor(convertReference(src.getExampleFor())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent(); + copyElement(src, tgt); + tgt.setSource(src.getSource()); + tgt.setTitle(src.getName()); + tgt.setKind(convertGuidePageKind(src.getKind())); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getType()) + tgt.addType(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getPackage()) + tgt.addPackage(t.getValue()); + if (src.hasFormat()) + tgt.setFormat(src.getFormat()); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) + tgt.addPage(convertImplementationGuidePageComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent(); + copyElement(src, tgt); + tgt.setSource(src.getSource()); + tgt.setName(src.getTitle()); + tgt.setKind(convertGuidePageKind(src.getKind())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getType()) + tgt.addType(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getPackage()) + tgt.addPackage(t.getValue()); + if (src.hasFormat()) + tgt.setFormat(src.getFormat()); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) + tgt.addPage(convertImplementationGuidePageComponent(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PAGE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.PAGE; + case EXAMPLE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.EXAMPLE; + case LIST: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.LIST; + case INCLUDE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.INCLUDE; + case DIRECTORY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DIRECTORY; + case DICTIONARY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DICTIONARY; + case TOC: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.TOC; + case RESOURCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.RESOURCE; + default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PAGE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.PAGE; + case EXAMPLE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.EXAMPLE; + case LIST: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.LIST; + case INCLUDE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.INCLUDE; + case DIRECTORY: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.DIRECTORY; + case DICTIONARY: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.DICTIONARY; + case TOC: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.TOC; + case RESOURCE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.RESOURCE; + default: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.NamingSystem convertNamingSystem(org.hl7.fhir.dstu2016may.model.NamingSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.NamingSystem tgt = new org.hl7.fhir.dstu3.model.NamingSystem(); + copyDomainResource(src, tgt); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertNamingSystemType(src.getKind())); + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent t : src.getContact()) + tgt.addContact(convertNamingSystemContactComponent(t)); + if (src.hasResponsible()) + tgt.setResponsible(src.getResponsible()); + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + for (org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) + tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); + tgt.setReplacedBy(convertReference(src.getReplacedBy())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.NamingSystem convertNamingSystem(org.hl7.fhir.dstu3.model.NamingSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.NamingSystem tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem(); + copyDomainResource(src, tgt); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertNamingSystemType(src.getKind())); + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertNamingSystemContactComponent(t)); + if (src.hasResponsible()) + tgt.setResponsible(src.getResponsible()); + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + for (org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) + tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); + tgt.setReplacedBy(convertReference(src.getReplacedBy())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODESYSTEM: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.CODESYSTEM; + case IDENTIFIER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.IDENTIFIER; + case ROOT: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.ROOT; + default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODESYSTEM: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.CODESYSTEM; + case IDENTIFIER: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.IDENTIFIER; + case ROOT: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.ROOT; + default: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertNamingSystemContactComponent(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent convertNamingSystemContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent(); + copyElement(src, tgt); + tgt.setType(convertNamingSystemIdentifierType(src.getType())); + tgt.setValue(src.getValue()); + if (src.hasPreferred()) + tgt.setPreferred(src.getPreferred()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent(); + copyElement(src, tgt); + tgt.setType(convertNamingSystemIdentifierType(src.getType())); + tgt.setValue(src.getValue()); + if (src.hasPreferred()) + tgt.setPreferred(src.getPreferred()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OID; + case UUID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.UUID; + case URI: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.URI; + case OTHER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OTHER; + default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OID: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.OID; + case UUID: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.UUID; + case URI: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.URI; + case OTHER: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.OTHER; + default: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.dstu2016may.model.OperationDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.OperationDefinition tgt = new org.hl7.fhir.dstu3.model.OperationDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertOperationKind(src.getKind())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent t : src.getContact()) + tgt.addContact(convertOperationDefinitionContactComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasIdempotent()) + tgt.setIdempotent(src.getIdempotent()); + tgt.setCode(src.getCode()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + tgt.setBase(convertReference(src.getBase())); + tgt.setSystem(src.getSystem()); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getType()) + tgt.addResource(t.getValue()); + tgt.setType(tgt.hasResource()); + tgt.setInstance(src.getInstance()); + for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) + tgt.addParameter(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.dstu3.model.OperationDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationDefinition tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertOperationKind(src.getKind())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertOperationDefinitionContactComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasIdempotent()) + tgt.setIdempotent(src.getIdempotent()); + tgt.setCode(src.getCode()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + tgt.setBase(convertReference(src.getBase())); + tgt.setSystem(src.getSystem()); + if (src.getType()) + for (org.hl7.fhir.dstu3.model.CodeType t : src.getResource()) + tgt.addType(t.getValue()); + tgt.setInstance(src.getInstance()); + for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) + tgt.addParameter(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OPERATION: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.OPERATION; + case QUERY: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.QUERY; + default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OPERATION: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.OPERATION; + case QUERY: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.QUERY; + default: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertOperationDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent convertOperationDefinitionContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setUse(convertOperationParameterUse(src.getUse())); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasType()) + tgt.setType(src.getType()); + tgt.setSearchType(convertSearchParamType(src.getSearchType())); + tgt.setProfile(convertReference(src.getProfile())); + tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); + for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) + tgt.addPart(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setUse(convertOperationParameterUse(src.getUse())); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasType()) + tgt.setType(src.getType()); + tgt.setSearchType(convertSearchParamType(src.getSearchType())); + tgt.setProfile(convertReference(src.getProfile())); + tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); + for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) + tgt.addPart(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.IN; + case OUT: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.OUT; + default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.IN; + case OUT: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.OUT; + default: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.dstu2016may.model.OperationOutcome src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.OperationOutcome tgt = new org.hl7.fhir.dstu3.model.OperationOutcome(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) + tgt.addIssue(convertOperationOutcomeIssueComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.dstu3.model.OperationOutcome src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationOutcome tgt = new org.hl7.fhir.dstu2016may.model.OperationOutcome(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) + tgt.addIssue(convertOperationOutcomeIssueComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent(); + copyElement(src, tgt); + tgt.setSeverity(convertIssueSeverity(src.getSeverity())); + tgt.setCode(convertIssueType(src.getCode())); + tgt.setDetails(convertCodeableConcept(src.getDetails())); + if (src.hasDiagnostics()) + tgt.setDiagnostics(src.getDiagnostics()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getLocation()) + tgt.addLocation(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getExpression()) + tgt.addExpression(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent(); + copyElement(src, tgt); + tgt.setSeverity(convertIssueSeverity(src.getSeverity())); + tgt.setCode(convertIssueType(src.getCode())); + tgt.setDetails(convertCodeableConcept(src.getDetails())); + if (src.hasDiagnostics()) + tgt.setDiagnostics(src.getDiagnostics()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getLocation()) + tgt.addLocation(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getExpression()) + tgt.addExpression(t.getValue()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FATAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.FATAL; + case ERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.ERROR; + case WARNING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.WARNING; + case INFORMATION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.INFORMATION; + default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FATAL: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.FATAL; + case ERROR: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.ERROR; + case WARNING: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.WARNING; + case INFORMATION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.INFORMATION; + default: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVALID; + case STRUCTURE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.STRUCTURE; + case REQUIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.REQUIRED; + case VALUE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.VALUE; + case INVARIANT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVARIANT; + case SECURITY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SECURITY; + case LOGIN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOGIN; + case UNKNOWN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.UNKNOWN; + case EXPIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXPIRED; + case FORBIDDEN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.FORBIDDEN; + case SUPPRESSED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SUPPRESSED; + case PROCESSING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.PROCESSING; + case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTSUPPORTED; + case DUPLICATE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.DUPLICATE; + case NOTFOUND: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTFOUND; + case TOOLONG: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOLONG; + case CODEINVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CODEINVALID; + case EXTENSION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXTENSION; + case TOOCOSTLY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOCOSTLY; + case BUSINESSRULE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.BUSINESSRULE; + case CONFLICT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CONFLICT; + case INCOMPLETE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INCOMPLETE; + case TRANSIENT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TRANSIENT; + case LOCKERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOCKERROR; + case NOSTORE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOSTORE; + case EXCEPTION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXCEPTION; + case TIMEOUT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TIMEOUT; + case THROTTLED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.THROTTLED; + case INFORMATIONAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INFORMATIONAL; + default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.dstu3.model.OperationOutcome.IssueType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INVALID: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INVALID; + case STRUCTURE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.STRUCTURE; + case REQUIRED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.REQUIRED; + case VALUE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.VALUE; + case INVARIANT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INVARIANT; + case SECURITY: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.SECURITY; + case LOGIN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.LOGIN; + case UNKNOWN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.UNKNOWN; + case EXPIRED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXPIRED; + case FORBIDDEN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.FORBIDDEN; + case SUPPRESSED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.SUPPRESSED; + case PROCESSING: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.PROCESSING; + case NOTSUPPORTED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOTSUPPORTED; + case DUPLICATE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.DUPLICATE; + case NOTFOUND: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOTFOUND; + case TOOLONG: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TOOLONG; + case CODEINVALID: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.CODEINVALID; + case EXTENSION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXTENSION; + case TOOCOSTLY: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TOOCOSTLY; + case BUSINESSRULE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.BUSINESSRULE; + case CONFLICT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.CONFLICT; + case INCOMPLETE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INCOMPLETE; + case TRANSIENT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TRANSIENT; + case LOCKERROR: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.LOCKERROR; + case NOSTORE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOSTORE; + case EXCEPTION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXCEPTION; + case TIMEOUT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TIMEOUT; + case THROTTLED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.THROTTLED; + case INFORMATIONAL: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INFORMATIONAL; + default: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NULL; + } + } + + + public static org.hl7.fhir.dstu3.model.Questionnaire convertQuestionnaire(org.hl7.fhir.dstu2016may.model.Questionnaire src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Questionnaire tgt = new org.hl7.fhir.dstu3.model.Questionnaire(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addContact(convertQuestionnaireContactComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getConcept()) + tgt.addCode(convertCoding(t)); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getSubjectType()) + tgt.addSubjectType(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Questionnaire convertQuestionnaire(org.hl7.fhir.dstu3.model.Questionnaire src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Questionnaire tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (ContactDetail t : src.getContact()) + for (org.hl7.fhir.dstu3.model.ContactPoint t1 : t.getTelecom()) + tgt.addTelecom(convertContactPoint(t1)); + for (UsageContext t : src.getUseContext()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) + tgt.addConcept(convertCoding(t)); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getSubjectType()) + tgt.addSubjectType(t.getValue()); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertQuestionnaireContactComponent(org.hl7.fhir.dstu2016may.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + tgt.addTelecom(convertContactPoint(src)); + return tgt; + } + + + private static org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus convertQuestionnaireStatus(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.DRAFT; + case PUBLISHED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.RETIRED; + default: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus convertQuestionnaireStatus(org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.PUBLISHED; + case RETIRED: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.RETIRED; + default: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getConcept()) + tgt.addCode(convertCoding(t)); + if (src.hasPrefix()) + tgt.setPrefix(src.getPrefix()); + if (src.hasText()) + tgt.setText(src.getText()); + tgt.setType(convertQuestionnaireItemType(src.getType())); + for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) + tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasRepeats()) + tgt.setRepeats(src.getRepeats()); + if (src.hasReadOnly()) + tgt.setReadOnly(src.getReadOnly()); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + tgt.setOptions(convertReference(src.getOptions())); + for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) + tgt.addOption(convertQuestionnaireItemOptionComponent(t)); + tgt.setInitial(convertType(src.getInitial())); + for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) + tgt.addConcept(convertCoding(t)); + if (src.hasPrefix()) + tgt.setPrefix(src.getPrefix()); + if (src.hasText()) + tgt.setText(src.getText()); + tgt.setType(convertQuestionnaireItemType(src.getType())); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) + tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasRepeats()) + tgt.setRepeats(src.getRepeats()); + if (src.hasReadOnly()) + tgt.setReadOnly(src.getReadOnly()); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + tgt.setOptions(convertReference(src.getOptions())); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) + tgt.addOption(convertQuestionnaireItemOptionComponent(t)); + tgt.setInitial(convertType(src.getInitial())); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GROUP: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.GROUP; + case DISPLAY: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DISPLAY; + case QUESTION: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.QUESTION; + case BOOLEAN: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.BOOLEAN; + case DECIMAL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DECIMAL; + case INTEGER: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.INTEGER; + case DATE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATE; + case DATETIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATETIME; + case INSTANT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATETIME; + case TIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TIME; + case STRING: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.STRING; + case TEXT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TEXT; + case URL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.URL; + case CHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.CHOICE; + case OPENCHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; + case ATTACHMENT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; + case REFERENCE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.REFERENCE; + case QUANTITY: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.QUANTITY; + default: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GROUP: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.GROUP; + case DISPLAY: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DISPLAY; + case QUESTION: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.QUESTION; + case BOOLEAN: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.BOOLEAN; + case DECIMAL: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DECIMAL; + case INTEGER: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.INTEGER; + case DATE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DATE; + case DATETIME: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DATETIME; + case TIME: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.TIME; + case STRING: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.STRING; + case TEXT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.TEXT; + case URL: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.URL; + case CHOICE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.CHOICE; + case OPENCHOICE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; + case ATTACHMENT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; + case REFERENCE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.REFERENCE; + case QUANTITY: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.QUANTITY; + default: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); + copyElement(src, tgt); + tgt.setQuestion(src.getQuestion()); + if (src.hasAnswered()) + tgt.setHasAnswer(src.getAnswered()); + tgt.setAnswer(convertType(src.getAnswer())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); + copyElement(src, tgt); + tgt.setQuestion(src.getQuestion()); + if (src.hasHasAnswer()) + tgt.setAnswered(src.getHasAnswer()); + tgt.setAnswer(convertType(src.getAnswer())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.QuestionnaireResponse tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); + tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasAuthored()) + tgt.setAuthored(src.getAuthored()); + tgt.setSource(convertReference(src.getSource())); + for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.dstu3.model.QuestionnaireResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.QuestionnaireResponse tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); + tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasAuthored()) + tgt.setAuthored(src.getAuthored()); + tgt.setSource(convertReference(src.getSource())); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; + case AMENDED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; + default: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; + case AMENDED: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; + default: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + if (src.hasText()) + tgt.setText(src.getText()); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) + tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); + for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + if (src.hasText()) + tgt.setText(src.getText()); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) + tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SearchParameter convertSearchParameter(org.hl7.fhir.dstu2016may.model.SearchParameter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.SearchParameter tgt = new org.hl7.fhir.dstu3.model.SearchParameter(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent t : src.getContact()) + tgt.addContact(convertSearchParameterContactComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + tgt.setCode(src.getCode()); + tgt.addBase(src.getBase()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDescription(src.getDescription()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasXpath()) + tgt.setXpath(src.getXpath()); + tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getTarget()) + tgt.addTarget(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.SearchParameter convertSearchParameter(org.hl7.fhir.dstu3.model.SearchParameter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.SearchParameter tgt = new org.hl7.fhir.dstu2016may.model.SearchParameter(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertSearchParameterContactComponent(t)); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getBase()) + tgt.setBase(t.asStringValue()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDescription(src.getDescription()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasXpath()) + tgt.setXpath(src.getXpath()); + tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getTarget()) + tgt.addTarget(t.getValue()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NORMAL: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NORMAL; + case PHONETIC: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.PHONETIC; + case NEARBY: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NEARBY; + case DISTANCE: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.DISTANCE; + case OTHER: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.OTHER; + default: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NORMAL: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NORMAL; + case PHONETIC: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.PHONETIC; + case NEARBY: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NEARBY; + case DISTANCE: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.DISTANCE; + case OTHER: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.OTHER; + default: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertSearchParameterContactComponent(org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent convertSearchParameterContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent tgt = new org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.dstu2016may.model.StructureDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition tgt = new org.hl7.fhir.dstu3.model.StructureDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + if (src.hasDisplay()) + tgt.setTitle(src.getDisplay()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent t : src.getContact()) + tgt.addContact(convertStructureDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCode()) + tgt.addKeyword(convertCoding(t)); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertStructureDefinitionMappingComponent(t)); + tgt.setKind(convertStructureDefinitionKind(src.getKind())); + tgt.setAbstract(src.getAbstract()); + tgt.setContextType(convertExtensionContext(src.getContextType())); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getContext()) + tgt.addContext(t.getValue()); + if (src.getDerivation() == TypeDerivationRule.CONSTRAINT) + tgt.setType(src.getBaseType()); + else + tgt.setType(src.getId()); + if (src.hasBaseDefinition()) + tgt.setBaseDefinition(src.getBaseDefinition()); + tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); + if (src.hasSnapshot()) { + tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); + tgt.getSnapshot().getElementFirstRep().getType().clear(); + } + if (src.hasDifferential()) { + tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); + tgt.getDifferential().getElementFirstRep().getType().clear(); + } + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.dstu3.model.StructureDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.StructureDefinition tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setDisplay(src.getTitle()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertStructureDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getKeyword()) + tgt.addCode(convertCoding(t)); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertStructureDefinitionMappingComponent(t)); + tgt.setKind(convertStructureDefinitionKind(src.getKind())); + tgt.setAbstract(src.getAbstract()); + tgt.setContextType(convertExtensionContext(src.getContextType())); + for (org.hl7.fhir.dstu3.model.StringType t : src.getContext()) + tgt.addContext(t.getValue()); + if (src.hasBaseDefinition()) + tgt.setBaseDefinition(src.getBaseDefinition()); + if (src.hasType() && src.getDerivation() == org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.CONSTRAINT) + tgt.setBaseType(src.getType()); + tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); + if (src.hasSnapshot()) + tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); + tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DATATYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; + case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.RESOURCE; + case LOGICAL: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.LOGICAL; + default: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRIMITIVETYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.DATATYPE; + case COMPLEXTYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.DATATYPE; + case RESOURCE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.RESOURCE; + case LOGICAL: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.LOGICAL; + default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.RESOURCE; + case DATATYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.DATATYPE; + case EXTENSION: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.EXTENSION; + default: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESOURCE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.RESOURCE; + case DATATYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.DATATYPE; + case EXTENSION: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.EXTENSION; + default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SPECIALIZATION: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; + case CONSTRAINT: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; + default: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SPECIALIZATION: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; + case CONSTRAINT: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; + default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertStructureDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent convertStructureDefinitionContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComments()) + tgt.setComment(src.getComments()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComment()) + tgt.setComments(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript convertTestScript(org.hl7.fhir.dstu2016may.model.TestScript src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript tgt = new org.hl7.fhir.dstu3.model.TestScript(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent t : src.getContact()) + tgt.addContact(convertTestScriptContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) + tgt.addOrigin(convertTestScriptOriginComponent(t)); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) + tgt.addDestination(convertTestScriptDestinationComponent(t)); + tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) + tgt.addFixture(convertTestScriptFixtureComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent t : src.getVariable()) + tgt.addVariable(convertTestScriptVariableComponent(t)); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent t : src.getRule()) + tgt.addRule(convertTestScriptRuleComponent(t)); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) + tgt.addRuleset(convertTestScriptRulesetComponent(t)); + tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent t : src.getTest()) + tgt.addTest(convertTestScriptTestComponent(t)); + tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript convertTestScript(org.hl7.fhir.dstu3.model.TestScript src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript tgt = new org.hl7.fhir.dstu2016may.model.TestScript(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertTestScriptContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) + tgt.addOrigin(convertTestScriptOriginComponent(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) + tgt.addDestination(convertTestScriptDestinationComponent(t)); + tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) + tgt.addFixture(convertTestScriptFixtureComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent t : src.getVariable()) + tgt.addVariable(convertTestScriptVariableComponent(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent t : src.getRule()) + tgt.addRule(convertTestScriptRuleComponent(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) + tgt.addRuleset(convertTestScriptRulesetComponent(t)); + tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent t : src.getTest()) + tgt.addTest(convertTestScriptTestComponent(t)); + tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertTestScriptContactComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent convertTestScriptContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent(); + copyElement(src, tgt); + tgt.setIndex(src.getIndex()); + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent(); + copyElement(src, tgt); + tgt.setIndex(src.getIndex()); + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent(); + copyElement(src, tgt); + tgt.setIndex(src.getIndex()); + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent(); + copyElement(src, tgt); + tgt.setIndex(src.getIndex()); + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) + tgt.addLink(convertTestScriptMetadataLinkComponent(t)); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) + tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) + tgt.addLink(convertTestScriptMetadataLinkComponent(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) + tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent(); + copyElement(src, tgt); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasValidated()) + tgt.setValidated(src.getValidated()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.IntegerType t : src.getOrigin()) + tgt.addOrigin(t.getValue()); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getLink()) + tgt.addLink(t.getValue()); + tgt.setCapabilities(convertReference(src.getConformance())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent(); + copyElement(src, tgt); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasValidated()) + tgt.setValidated(src.getValidated()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.IntegerType t : src.getOrigin()) + tgt.addOrigin(t.getValue()); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + for (org.hl7.fhir.dstu3.model.UriType t : src.getLink()) + tgt.addLink(t.getValue()); + tgt.setConformance(convertReference(src.getCapabilities())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent(); + copyElement(src, tgt); + if (src.hasAutocreate()) + tgt.setAutocreate(src.getAutocreate()); + if (src.hasAutodelete()) + tgt.setAutodelete(src.getAutodelete()); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent(); + copyElement(src, tgt); + if (src.hasAutocreate()) + tgt.setAutocreate(src.getAutocreate()); + if (src.hasAutodelete()) + tgt.setAutodelete(src.getAutodelete()); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDefaultValue()) + tgt.setDefaultValue(src.getDefaultValue()); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDefaultValue()) + tgt.setDefaultValue(src.getDefaultValue()); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent(); + copyElement(src, tgt); + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent t : src.getParam()) + tgt.addParam(convertTestScriptRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent(); + copyElement(src, tgt); + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent t : src.getParam()) + tgt.addParam(convertTestScriptRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent convertTestScriptRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent convertTestScriptRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent(); + copyElement(src, tgt); + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent t : src.getRule()) + tgt.addRule(convertTestScriptRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent(); + copyElement(src, tgt); + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent t : src.getRule()) + tgt.addRule(convertTestScriptRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent convertTestScriptRulesetRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertTestScriptRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent convertTestScriptRulesetRuleComponent(org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertTestScriptRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent convertTestScriptRulesetRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent convertTestScriptRulesetRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent(); + copyElement(src, tgt); + tgt.setType(convertCoding(src.getType())); + if (src.hasResource()) + tgt.setResource(src.getResource()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setAccept(convertContentType(src.getAccept())); + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + if (src.hasEncodeRequestUrl()) + tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); + if (src.hasOrigin()) + tgt.setOrigin(src.getOrigin()); + if (src.hasParams()) + tgt.setParams(src.getParams()); + for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) + tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); + if (src.hasResponseId()) + tgt.setResponseId(src.getResponseId()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasTargetId()) + tgt.setTargetId(src.getTargetId()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent(); + copyElement(src, tgt); + if (src.hasResource()) + tgt.setResource(src.getResource()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setAccept(convertContentType(src.getAccept())); + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + if (src.hasEncodeRequestUrl()) + tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); + if (src.hasOrigin()) + tgt.setOrigin(src.getOrigin()); + if (src.hasParams()) + tgt.setParams(src.getParams()); + for (org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) + tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); + if (src.hasResponseId()) + tgt.setResponseId(src.getResponseId()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasTargetId()) + tgt.setTargetId(src.getTargetId()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.TestScript.ContentType convertContentType(org.hl7.fhir.dstu2016may.model.TestScript.ContentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XML: return org.hl7.fhir.dstu3.model.TestScript.ContentType.XML; + case JSON: return org.hl7.fhir.dstu3.model.TestScript.ContentType.JSON; + default: return org.hl7.fhir.dstu3.model.TestScript.ContentType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.TestScript.ContentType convertContentType(org.hl7.fhir.dstu3.model.TestScript.ContentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XML: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.XML; + case JSON: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.JSON; + default: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent(); + copyElement(src, tgt); + tgt.setField(src.getField()); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent(); + copyElement(src, tgt); + tgt.setField(src.getField()); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setDirection(convertAssertionDirectionType(src.getDirection())); + if (src.hasCompareToSourceId()) + tgt.setCompareToSourceId(src.getCompareToSourceId()); + if (src.hasCompareToSourcePath()) + tgt.setCompareToSourcePath(src.getCompareToSourcePath()); + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasMinimumId()) + tgt.setMinimumId(src.getMinimumId()); + if (src.hasNavigationLinks()) + tgt.setNavigationLinks(src.getNavigationLinks()); + tgt.setOperator(convertAssertionOperatorType(src.getOperator())); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasResource()) + tgt.setResource(src.getResource()); + tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); + if (src.hasResponseCode()) + tgt.setResponseCode(src.getResponseCode()); + tgt.setRule(convertSetupActionAssertRuleComponent(src.getRule())); + tgt.setRuleset(convertSetupActionAssertRulesetComponent(src.getRuleset())); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasValidateProfileId()) + tgt.setValidateProfileId(src.getValidateProfileId()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasWarningOnly()) + tgt.setWarningOnly(src.getWarningOnly()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setDirection(convertAssertionDirectionType(src.getDirection())); + if (src.hasCompareToSourceId()) + tgt.setCompareToSourceId(src.getCompareToSourceId()); + if (src.hasCompareToSourcePath()) + tgt.setCompareToSourcePath(src.getCompareToSourcePath()); + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasMinimumId()) + tgt.setMinimumId(src.getMinimumId()); + if (src.hasNavigationLinks()) + tgt.setNavigationLinks(src.getNavigationLinks()); + tgt.setOperator(convertAssertionOperatorType(src.getOperator())); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasResource()) + tgt.setResource(src.getResource()); + tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); + if (src.hasResponseCode()) + tgt.setResponseCode(src.getResponseCode()); + tgt.setRule(convertSetupActionAssertRuleComponent(src.getRule())); + tgt.setRuleset(convertSetupActionAssertRulesetComponent(src.getRuleset())); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasValidateProfileId()) + tgt.setValidateProfileId(src.getValidateProfileId()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasWarningOnly()) + tgt.setWarningOnly(src.getWarningOnly()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent convertSetupActionAssertRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent t : src.getParam()) + tgt.addParam(convertSetupActionAssertRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent convertSetupActionAssertRuleComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent t : src.getParam()) + tgt.addParam(convertSetupActionAssertRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent convertSetupActionAssertRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent convertSetupActionAssertRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent convertSetupActionAssertRulesetComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent t : src.getRule()) + tgt.addRule(convertSetupActionAssertRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent convertSetupActionAssertRulesetComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent t : src.getRule()) + tgt.addRule(convertSetupActionAssertRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent convertSetupActionAssertRulesetRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertSetupActionAssertRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent convertSetupActionAssertRulesetRuleComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertSetupActionAssertRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent convertSetupActionAssertRulesetRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent convertSetupActionAssertRulesetRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESPONSE: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.RESPONSE; + case REQUEST: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.REQUEST; + default: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESPONSE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.RESPONSE; + case REQUEST: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.REQUEST; + default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EQUALS; + case NOTEQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEQUALS; + case IN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.IN; + case NOTIN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTIN; + case GREATERTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.GREATERTHAN; + case LESSTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.LESSTHAN; + case EMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EMPTY; + case NOTEMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEMPTY; + case CONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.CONTAINS; + case NOTCONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTCONTAINS; + default: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUALS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.EQUALS; + case NOTEQUALS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTEQUALS; + case IN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.IN; + case NOTIN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTIN; + case GREATERTHAN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.GREATERTHAN; + case LESSTHAN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.LESSTHAN; + case EMPTY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.EMPTY; + case NOTEMPTY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTEMPTY; + case CONTAINS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.CONTAINS; + case NOTCONTAINS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTCONTAINS; + default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OKAY: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.OKAY; + case CREATED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CREATED; + case NOCONTENT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOCONTENT; + case NOTMODIFIED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTMODIFIED; + case BAD: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.BAD; + case FORBIDDEN: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.FORBIDDEN; + case NOTFOUND: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTFOUND; + case METHODNOTALLOWED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; + case CONFLICT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CONFLICT; + case GONE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.GONE; + case PRECONDITIONFAILED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; + case UNPROCESSABLE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; + default: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OKAY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.OKAY; + case CREATED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.CREATED; + case NOCONTENT: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOCONTENT; + case NOTMODIFIED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOTMODIFIED; + case BAD: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.BAD; + case FORBIDDEN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.FORBIDDEN; + case NOTFOUND: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOTFOUND; + case METHODNOTALLOWED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; + case CONFLICT: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.CONFLICT; + case GONE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.GONE; + case PRECONDITIONFAILED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; + case UNPROCESSABLE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; + default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NULL; + } + } + + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.TestScript.TestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.dstu3.model.TestScript.TestActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet convertValueSet(org.hl7.fhir.dstu2016may.model.ValueSet src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet tgt = new org.hl7.fhir.dstu3.model.ValueSet(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.addIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent t : src.getContact()) + tgt.addContact(convertValueSetContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasImmutable()) + tgt.setImmutable(src.getImmutable()); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasExtensible()) + tgt.setExtensible(src.getExtensible()); + tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); + if (src.hasLockedDate()) + tgt.getCompose().setLockedDate(src.getLockedDate()); + tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet convertValueSet(org.hl7.fhir.dstu3.model.ValueSet src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet tgt = new org.hl7.fhir.dstu2016may.model.ValueSet(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.setIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertValueSetContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.getCompose().hasLockedDate()) + tgt.setLockedDate(src.getCompose().getLockedDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasImmutable()) + tgt.setImmutable(src.getImmutable()); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasExtensible()) + tgt.setExtensible(src.getExtensible()); + tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); + if (src.hasExpansion()) + tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertValueSetContactComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent convertValueSetContactComponent(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getImport()) + tgt.addInclude().addValueSet(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent t : src.getInclude()) + tgt.addInclude(convertConceptSetComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent t : src.getExclude()) + tgt.addExclude(convertConceptSetComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getInclude()) { + for (org.hl7.fhir.dstu3.model.UriType ti : t.getValueSet()) + tgt.addImport(ti.getValue()); + tgt.addInclude(convertConceptSetComponent(t)); + } + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getExclude()) + tgt.addExclude(convertConceptSetComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) + tgt.addConcept(convertConceptReferenceComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) + tgt.addFilter(convertConceptSetFilterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) + tgt.addConcept(convertConceptReferenceComponent(t)); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) + tgt.addFilter(convertConceptSetFilterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getProperty()); + tgt.setOp(convertFilterOperator(src.getOp())); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getProperty()); + tgt.setOp(convertFilterOperator(src.getOp())); + tgt.setValue(src.getValue()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISA; + case ISNOTA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.REGEX; + case IN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NOTIN; + default: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.dstu3.model.ValueSet.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.ISA; + case ISNOTA: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.REGEX; + case IN: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.NOTIN; + default: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.NULL; + } + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setTimestamp(src.getTimestamp()); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) + tgt.addParameter(convertValueSetExpansionParameterComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setTimestamp(src.getTimestamp()); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) + tgt.addParameter(convertValueSetExpansionParameterComponent(t)); + for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasAbstract()) + tgt.setAbstract(src.getAbstract()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasAbstract()) + tgt.setAbstract(src.getAbstract()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + +/* public static org.hl7.fhir.dstu3.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.dstu2016may.model.VisionPrescription src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.VisionPrescription tgt = new org.hl7.fhir.dstu3.model.VisionPrescription(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setDateWritten(src.getDateWritten()); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setPrescriber(convertReference(src.getPrescriber())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) + tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.dstu3.model.VisionPrescription src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.VisionPrescription tgt = new org.hl7.fhir.dstu2016may.model.VisionPrescription(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setDateWritten(src.getDateWritten()); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setPrescriber(convertReference(src.getPrescriber())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) + tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent(); + copyElement(src, tgt); + tgt.setProduct(convertCoding(src.getProduct())); + tgt.setEye(convertVisionEyes(src.getEye())); + tgt.setSphere(src.getSphere()); + tgt.setCylinder(src.getCylinder()); + tgt.setAxis(src.getAxis()); + tgt.setPrism(src.getPrism()); + tgt.setBase(convertVisionBase(src.getBase())); + tgt.setAdd(src.getAdd()); + tgt.setPower(src.getPower()); + tgt.setBackCurve(src.getBackCurve()); + tgt.setDiameter(src.getDiameter()); + tgt.setDuration(convertSimpleQuantity(src.getDuration())); + tgt.setColor(src.getColor()); + tgt.setBrand(src.getBrand()); + tgt.setNotes(src.getNotes()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent(); + copyElement(src, tgt); + tgt.setProduct(convertCoding(src.getProduct())); + tgt.setEye(convertVisionEyes(src.getEye())); + tgt.setSphere(src.getSphere()); + tgt.setCylinder(src.getCylinder()); + tgt.setAxis(src.getAxis()); + tgt.setPrism(src.getPrism()); + tgt.setBase(convertVisionBase(src.getBase())); + tgt.setAdd(src.getAdd()); + tgt.setPower(src.getPower()); + tgt.setBackCurve(src.getBackCurve()); + tgt.setDiameter(src.getDiameter()); + tgt.setDuration(convertSimpleQuantity(src.getDuration())); + tgt.setColor(src.getColor()); + tgt.setBrand(src.getBrand()); + tgt.setNotes(src.getNotes()); + return tgt; + } + + private static org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RIGHT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.RIGHT; + case LEFT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.LEFT; + default: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RIGHT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.RIGHT; + case LEFT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.LEFT; + default: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.NULL; + } + } + + private static org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UP: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.UP; + case DOWN: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.DOWN; + case IN: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.IN; + case OUT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.OUT; + default: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UP: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.UP; + case DOWN: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.DOWN; + case IN: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.IN; + case OUT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.OUT; + default: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.NULL; + } + } +*/ + public static org.hl7.fhir.dstu3.model.Resource convertResource(org.hl7.fhir.dstu2016may.model.Resource src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.dstu2016may.model.Parameters) + return convertParameters((org.hl7.fhir.dstu2016may.model.Parameters) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Bundle) + return convertBundle((org.hl7.fhir.dstu2016may.model.Bundle) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.CodeSystem) + return convertCodeSystem((org.hl7.fhir.dstu2016may.model.CodeSystem) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.CompartmentDefinition) + return convertCompartmentDefinition((org.hl7.fhir.dstu2016may.model.CompartmentDefinition) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.ConceptMap) + return convertConceptMap((org.hl7.fhir.dstu2016may.model.ConceptMap) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Conformance) + return convertConformance((org.hl7.fhir.dstu2016may.model.Conformance) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.DataElement) + return convertDataElement((org.hl7.fhir.dstu2016may.model.DataElement) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.ImplementationGuide) + return convertImplementationGuide((org.hl7.fhir.dstu2016may.model.ImplementationGuide) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.NamingSystem) + return convertNamingSystem((org.hl7.fhir.dstu2016may.model.NamingSystem) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.OperationDefinition) + return convertOperationDefinition((org.hl7.fhir.dstu2016may.model.OperationDefinition) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.OperationOutcome) + return convertOperationOutcome((org.hl7.fhir.dstu2016may.model.OperationOutcome) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Questionnaire) + return convertQuestionnaire((org.hl7.fhir.dstu2016may.model.Questionnaire) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.QuestionnaireResponse) + return convertQuestionnaireResponse((org.hl7.fhir.dstu2016may.model.QuestionnaireResponse) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.SearchParameter) + return convertSearchParameter((org.hl7.fhir.dstu2016may.model.SearchParameter) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.StructureDefinition) + return convertStructureDefinition((org.hl7.fhir.dstu2016may.model.StructureDefinition) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.TestScript) + return convertTestScript((org.hl7.fhir.dstu2016may.model.TestScript) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.ValueSet) + return convertValueSet((org.hl7.fhir.dstu2016may.model.ValueSet) src); +/* if (src instanceof org.hl7.fhir.dstu2016may.model.VisionPrescription) + return convertVisionPrescription((org.hl7.fhir.dstu2016may.model.VisionPrescription) src);*/ + throw new Error("Unknown resource "+src.fhirType()); + } + + public static org.hl7.fhir.dstu2016may.model.Resource convertResource(org.hl7.fhir.dstu3.model.Resource src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.dstu3.model.Parameters) + return convertParameters((org.hl7.fhir.dstu3.model.Parameters) src); + if (src instanceof org.hl7.fhir.dstu3.model.Bundle) + return convertBundle((org.hl7.fhir.dstu3.model.Bundle) src); + if (src instanceof org.hl7.fhir.dstu3.model.CodeSystem) + return convertCodeSystem((org.hl7.fhir.dstu3.model.CodeSystem) src); + if (src instanceof org.hl7.fhir.dstu3.model.CompartmentDefinition) + return convertCompartmentDefinition((org.hl7.fhir.dstu3.model.CompartmentDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.ConceptMap) + return convertConceptMap((org.hl7.fhir.dstu3.model.ConceptMap) src); + if (src instanceof org.hl7.fhir.dstu3.model.CapabilityStatement) + return convertConformance((org.hl7.fhir.dstu3.model.CapabilityStatement) src); + if (src instanceof org.hl7.fhir.dstu3.model.DataElement) + return convertDataElement((org.hl7.fhir.dstu3.model.DataElement) src); + if (src instanceof org.hl7.fhir.dstu3.model.ImplementationGuide) + return convertImplementationGuide((org.hl7.fhir.dstu3.model.ImplementationGuide) src); + if (src instanceof org.hl7.fhir.dstu3.model.NamingSystem) + return convertNamingSystem((org.hl7.fhir.dstu3.model.NamingSystem) src); + if (src instanceof org.hl7.fhir.dstu3.model.OperationDefinition) + return convertOperationDefinition((org.hl7.fhir.dstu3.model.OperationDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.OperationOutcome) + return convertOperationOutcome((org.hl7.fhir.dstu3.model.OperationOutcome) src); + if (src instanceof org.hl7.fhir.dstu3.model.Questionnaire) + return convertQuestionnaire((org.hl7.fhir.dstu3.model.Questionnaire) src); + if (src instanceof org.hl7.fhir.dstu3.model.QuestionnaireResponse) + return convertQuestionnaireResponse((org.hl7.fhir.dstu3.model.QuestionnaireResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.SearchParameter) + return convertSearchParameter((org.hl7.fhir.dstu3.model.SearchParameter) src); + if (src instanceof org.hl7.fhir.dstu3.model.StructureDefinition) + return convertStructureDefinition((org.hl7.fhir.dstu3.model.StructureDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.TestScript) + return convertTestScript((org.hl7.fhir.dstu3.model.TestScript) src); + if (src instanceof org.hl7.fhir.dstu3.model.ValueSet) + return convertValueSet((org.hl7.fhir.dstu3.model.ValueSet) src); +/* if (src instanceof org.hl7.fhir.dstu3.model.VisionPrescription) + return convertVisionPrescription((org.hl7.fhir.dstu3.model.VisionPrescription) src);*/ + throw new Error("Unknown resource "+src.fhirType()); + } + + +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_14_40.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_14_40.java index 4346c7fa8b4..1e0955c7aac 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_14_40.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_14_40.java @@ -1,7246 +1,7267 @@ -package org.hl7.fhir.convertors; - -/* - Copyright (c) 2011+, HL7, Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without modification, - are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of HL7 nor the names of its contributors may be used to - endorse or promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - - */ - -// Generated on Mon, Aug 15, 2016 19:58+1000 for FHIR v1.7.0 - -import java.util.ArrayList; -import java.util.List; - -import org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent; -import org.hl7.fhir.dstu2016may.model.CodeableConcept; -import org.hl7.fhir.r4.conformance.ProfileUtilities; -import org.hl7.fhir.r4.model.CodeSystem; -import org.hl7.fhir.r4.model.CodeSystem.FilterOperator; -import org.hl7.fhir.r4.model.ConceptMap; -import org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent; -import org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent; -import org.hl7.fhir.r4.model.ContactDetail; -import org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent; -import org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind; -import org.hl7.fhir.r4.model.Enumeration; -import org.hl7.fhir.r4.model.Timing.EventTiming; -import org.hl7.fhir.r4.model.UsageContext; -import org.hl7.fhir.exceptions.FHIRException; - -public class VersionConvertor_14_40 { - - private static void copyElement(org.hl7.fhir.dstu2016may.model.Element src, org.hl7.fhir.r4.model.Element tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - for (org.hl7.fhir.dstu2016may.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - private static void copyElement(org.hl7.fhir.r4.model.Element src, org.hl7.fhir.dstu2016may.model.Element tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - for (org.hl7.fhir.r4.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - private static void copyBackboneElement(org.hl7.fhir.dstu2016may.model.BackboneElement src, org.hl7.fhir.r4.model.BackboneElement tgt) throws FHIRException { - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Extension e : src.getModifierExtension()) { - tgt.addModifierExtension(convertExtension(e)); - } - } - - private static void copyBackboneElement(org.hl7.fhir.r4.model.BackboneElement src, org.hl7.fhir.dstu2016may.model.BackboneElement tgt) throws FHIRException { - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Extension e : src.getModifierExtension()) { - tgt.addModifierExtension(convertExtension(e)); - } - } - - public static org.hl7.fhir.r4.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.dstu2016may.model.Base64BinaryType src) throws FHIRException { - org.hl7.fhir.r4.model.Base64BinaryType tgt = new org.hl7.fhir.r4.model.Base64BinaryType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.r4.model.Base64BinaryType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.Base64BinaryType tgt = new org.hl7.fhir.dstu2016may.model.Base64BinaryType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.BooleanType convertBoolean(org.hl7.fhir.dstu2016may.model.BooleanType src) throws FHIRException { - org.hl7.fhir.r4.model.BooleanType tgt = new org.hl7.fhir.r4.model.BooleanType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.BooleanType convertBoolean(org.hl7.fhir.r4.model.BooleanType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.BooleanType tgt = new org.hl7.fhir.dstu2016may.model.BooleanType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeType convertCode(org.hl7.fhir.dstu2016may.model.CodeType src) throws FHIRException { - org.hl7.fhir.r4.model.CodeType tgt = new org.hl7.fhir.r4.model.CodeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeType convertCode(org.hl7.fhir.r4.model.CodeType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.CodeType tgt = new org.hl7.fhir.dstu2016may.model.CodeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.DateType convertDate(org.hl7.fhir.dstu2016may.model.DateType src) throws FHIRException { - org.hl7.fhir.r4.model.DateType tgt = new org.hl7.fhir.r4.model.DateType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.DateType convertDate(org.hl7.fhir.r4.model.DateType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.DateType tgt = new org.hl7.fhir.dstu2016may.model.DateType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.DateTimeType convertDateTime(org.hl7.fhir.dstu2016may.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.r4.model.DateTimeType tgt = new org.hl7.fhir.r4.model.DateTimeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.DateTimeType convertDateTime(org.hl7.fhir.r4.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.DateTimeType tgt = new org.hl7.fhir.dstu2016may.model.DateTimeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.DecimalType convertDecimal(org.hl7.fhir.dstu2016may.model.DecimalType src) throws FHIRException { - org.hl7.fhir.r4.model.DecimalType tgt = new org.hl7.fhir.r4.model.DecimalType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.DecimalType convertDecimal(org.hl7.fhir.r4.model.DecimalType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.DecimalType tgt = new org.hl7.fhir.dstu2016may.model.DecimalType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.IdType convertId(org.hl7.fhir.dstu2016may.model.IdType src) throws FHIRException { - org.hl7.fhir.r4.model.IdType tgt = new org.hl7.fhir.r4.model.IdType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.IdType convertId(org.hl7.fhir.r4.model.IdType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.IdType tgt = new org.hl7.fhir.dstu2016may.model.IdType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.InstantType convertInstant(org.hl7.fhir.dstu2016may.model.InstantType src) throws FHIRException { - org.hl7.fhir.r4.model.InstantType tgt = new org.hl7.fhir.r4.model.InstantType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.InstantType convertInstant(org.hl7.fhir.r4.model.InstantType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.InstantType tgt = new org.hl7.fhir.dstu2016may.model.InstantType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.IntegerType convertInteger(org.hl7.fhir.dstu2016may.model.IntegerType src) throws FHIRException { - org.hl7.fhir.r4.model.IntegerType tgt = new org.hl7.fhir.r4.model.IntegerType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.IntegerType convertInteger(org.hl7.fhir.r4.model.IntegerType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.IntegerType tgt = new org.hl7.fhir.dstu2016may.model.IntegerType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.MarkdownType convertMarkdown(org.hl7.fhir.dstu2016may.model.MarkdownType src) throws FHIRException { - org.hl7.fhir.r4.model.MarkdownType tgt = new org.hl7.fhir.r4.model.MarkdownType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.MarkdownType convertMarkdown(org.hl7.fhir.r4.model.MarkdownType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.MarkdownType tgt = new org.hl7.fhir.dstu2016may.model.MarkdownType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.OidType convertOid(org.hl7.fhir.dstu2016may.model.OidType src) throws FHIRException { - org.hl7.fhir.r4.model.OidType tgt = new org.hl7.fhir.r4.model.OidType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OidType convertOid(org.hl7.fhir.r4.model.OidType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.OidType tgt = new org.hl7.fhir.dstu2016may.model.OidType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.PositiveIntType convertPositiveInt(org.hl7.fhir.dstu2016may.model.PositiveIntType src) throws FHIRException { - org.hl7.fhir.r4.model.PositiveIntType tgt = new org.hl7.fhir.r4.model.PositiveIntType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.PositiveIntType convertPositiveInt(org.hl7.fhir.r4.model.PositiveIntType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.PositiveIntType tgt = new org.hl7.fhir.dstu2016may.model.PositiveIntType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.StringType convertString(org.hl7.fhir.dstu2016may.model.StringType src) throws FHIRException { - org.hl7.fhir.r4.model.StringType tgt = new org.hl7.fhir.r4.model.StringType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StringType convertString(org.hl7.fhir.r4.model.StringType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.StringType tgt = new org.hl7.fhir.dstu2016may.model.StringType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.TimeType convertTime(org.hl7.fhir.dstu2016may.model.TimeType src) throws FHIRException { - org.hl7.fhir.r4.model.TimeType tgt = new org.hl7.fhir.r4.model.TimeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TimeType convertTime(org.hl7.fhir.r4.model.TimeType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.TimeType tgt = new org.hl7.fhir.dstu2016may.model.TimeType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.dstu2016may.model.UnsignedIntType src) throws FHIRException { - org.hl7.fhir.r4.model.UnsignedIntType tgt = new org.hl7.fhir.r4.model.UnsignedIntType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.r4.model.UnsignedIntType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.UnsignedIntType tgt = new org.hl7.fhir.dstu2016may.model.UnsignedIntType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.UriType convertUri(org.hl7.fhir.dstu2016may.model.UriType src) throws FHIRException { - org.hl7.fhir.r4.model.UriType tgt = new org.hl7.fhir.r4.model.UriType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.UriType convertUri(org.hl7.fhir.r4.model.UriType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.UriType tgt = new org.hl7.fhir.dstu2016may.model.UriType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.UuidType convertUuid(org.hl7.fhir.dstu2016may.model.UuidType src) throws FHIRException { - org.hl7.fhir.r4.model.UuidType tgt = new org.hl7.fhir.r4.model.UuidType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.UuidType convertUuid(org.hl7.fhir.r4.model.UuidType src) throws FHIRException { - org.hl7.fhir.dstu2016may.model.UuidType tgt = new org.hl7.fhir.dstu2016may.model.UuidType(); - if (src.hasValue()) - tgt.setValue(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.Extension convertExtension(org.hl7.fhir.dstu2016may.model.Extension src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Extension tgt = new org.hl7.fhir.r4.model.Extension(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Extension convertExtension(org.hl7.fhir.r4.model.Extension src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Extension tgt = new org.hl7.fhir.dstu2016may.model.Extension(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Narrative convertNarrative(org.hl7.fhir.dstu2016may.model.Narrative src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Narrative tgt = new org.hl7.fhir.r4.model.Narrative(); - copyElement(src, tgt); - tgt.setStatus(convertNarrativeStatus(src.getStatus())); - tgt.setDiv(src.getDiv()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Narrative convertNarrative(org.hl7.fhir.r4.model.Narrative src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Narrative tgt = new org.hl7.fhir.dstu2016may.model.Narrative(); - copyElement(src, tgt); - tgt.setStatus(convertNarrativeStatus(src.getStatus())); - tgt.setDiv(src.getDiv()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GENERATED: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.GENERATED; - case EXTENSIONS: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EXTENSIONS; - case ADDITIONAL: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.ADDITIONAL; - case EMPTY: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EMPTY; - default: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.r4.model.Narrative.NarrativeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GENERATED: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.GENERATED; - case EXTENSIONS: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.EXTENSIONS; - case ADDITIONAL: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.ADDITIONAL; - case EMPTY: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.EMPTY; - default: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.NULL; - } - } - - public static org.hl7.fhir.r4.model.Age convertAge(org.hl7.fhir.dstu2016may.model.Age src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Age tgt = new org.hl7.fhir.r4.model.Age(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Age convertAge(org.hl7.fhir.r4.model.Age src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Age tgt = new org.hl7.fhir.dstu2016may.model.Age(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - - public static org.hl7.fhir.r4.model.Annotation convertAnnotation(org.hl7.fhir.dstu2016may.model.Annotation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Annotation tgt = new org.hl7.fhir.r4.model.Annotation(); - copyElement(src, tgt); - tgt.setAuthor(convertType(src.getAuthor())); - if (src.hasTime()) - tgt.setTime(src.getTime()); - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Annotation convertAnnotation(org.hl7.fhir.r4.model.Annotation src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Annotation tgt = new org.hl7.fhir.dstu2016may.model.Annotation(); - copyElement(src, tgt); - tgt.setAuthor(convertType(src.getAuthor())); - if (src.hasTime()) - tgt.setTime(src.getTime()); - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Attachment convertAttachment(org.hl7.fhir.dstu2016may.model.Attachment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Attachment tgt = new org.hl7.fhir.r4.model.Attachment(); - copyElement(src, tgt); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasData()) - tgt.setData(src.getData()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasSize()) - tgt.setSize(src.getSize()); - if (src.hasHash()) - tgt.setHash(src.getHash()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasCreation()) - tgt.setCreation(src.getCreation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Attachment convertAttachment(org.hl7.fhir.r4.model.Attachment src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Attachment tgt = new org.hl7.fhir.dstu2016may.model.Attachment(); - copyElement(src, tgt); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasData()) - tgt.setData(src.getData()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasSize()) - tgt.setSize(src.getSize()); - if (src.hasHash()) - tgt.setHash(src.getHash()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasCreation()) - tgt.setCreation(src.getCreation()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.dstu2016may.model.CodeableConcept src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CodeableConcept tgt = new org.hl7.fhir.r4.model.CodeableConcept(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCoding()) - tgt.addCoding(convertCoding(t)); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.r4.model.CodeableConcept src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeableConcept tgt = new org.hl7.fhir.dstu2016may.model.CodeableConcept(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Coding t : src.getCoding()) - tgt.addCoding(convertCoding(t)); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Coding convertCoding(org.hl7.fhir.dstu2016may.model.Coding src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Coding tgt = new org.hl7.fhir.r4.model.Coding(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasUserSelected()) - tgt.setUserSelected(src.getUserSelected()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Coding convertCoding(org.hl7.fhir.r4.model.Coding src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Coding tgt = new org.hl7.fhir.dstu2016may.model.Coding(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasUserSelected()) - tgt.setUserSelected(src.getUserSelected()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Count convertCount(org.hl7.fhir.dstu2016may.model.Count src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Count tgt = new org.hl7.fhir.r4.model.Count(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Count convertCount(org.hl7.fhir.r4.model.Count src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Count tgt = new org.hl7.fhir.dstu2016may.model.Count(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Distance convertDistance(org.hl7.fhir.dstu2016may.model.Distance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Distance tgt = new org.hl7.fhir.r4.model.Distance(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Distance convertDistance(org.hl7.fhir.r4.model.Distance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Distance tgt = new org.hl7.fhir.dstu2016may.model.Distance(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Duration convertDuration(org.hl7.fhir.dstu2016may.model.Duration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Duration tgt = new org.hl7.fhir.r4.model.Duration(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Duration convertDuration(org.hl7.fhir.r4.model.Duration src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Duration tgt = new org.hl7.fhir.dstu2016may.model.Duration(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Money convertMoney(org.hl7.fhir.dstu2016may.model.Money src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Money tgt = new org.hl7.fhir.r4.model.Money(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Money convertMoney(org.hl7.fhir.r4.model.Money src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Money tgt = new org.hl7.fhir.dstu2016may.model.Money(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Identifier convertIdentifier(org.hl7.fhir.dstu2016may.model.Identifier src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Identifier tgt = new org.hl7.fhir.r4.model.Identifier(); - copyElement(src, tgt); - tgt.setUse(convertIdentifierUse(src.getUse())); - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setAssigner(convertReference(src.getAssigner())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Identifier convertIdentifier(org.hl7.fhir.r4.model.Identifier src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Identifier tgt = new org.hl7.fhir.dstu2016may.model.Identifier(); - copyElement(src, tgt); - tgt.setUse(convertIdentifierUse(src.getUse())); - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - tgt.setAssigner(convertReference(src.getAssigner())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.USUAL; - case OFFICIAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.OFFICIAL; - case TEMP: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.TEMP; - case SECONDARY: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.SECONDARY; - default: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.r4.model.Identifier.IdentifierUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.USUAL; - case OFFICIAL: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.OFFICIAL; - case TEMP: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.TEMP; - case SECONDARY: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.SECONDARY; - default: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.NULL; - } - } - - - public static org.hl7.fhir.r4.model.Period convertPeriod(org.hl7.fhir.dstu2016may.model.Period src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Period tgt = new org.hl7.fhir.r4.model.Period(); - copyElement(src, tgt); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Period convertPeriod(org.hl7.fhir.r4.model.Period src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Period tgt = new org.hl7.fhir.dstu2016may.model.Period(); - copyElement(src, tgt); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Quantity convertQuantity(org.hl7.fhir.dstu2016may.model.Quantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Quantity tgt = new org.hl7.fhir.r4.model.Quantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Quantity convertQuantity(org.hl7.fhir.r4.model.Quantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Quantity tgt = new org.hl7.fhir.dstu2016may.model.Quantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LESS_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_THAN; - case LESS_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_OR_EQUAL; - case GREATER_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; - case GREATER_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_THAN; - default: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.r4.model.Quantity.QuantityComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LESS_THAN: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.LESS_THAN; - case LESS_OR_EQUAL: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.LESS_OR_EQUAL; - case GREATER_OR_EQUAL: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; - case GREATER_THAN: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.GREATER_THAN; - default: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.NULL; - } - } - - public static org.hl7.fhir.r4.model.Range convertRange(org.hl7.fhir.dstu2016may.model.Range src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Range tgt = new org.hl7.fhir.r4.model.Range(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Range convertRange(org.hl7.fhir.r4.model.Range src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Range tgt = new org.hl7.fhir.dstu2016may.model.Range(); - copyElement(src, tgt); - tgt.setLow(convertSimpleQuantity(src.getLow())); - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Ratio convertRatio(org.hl7.fhir.dstu2016may.model.Ratio src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Ratio tgt = new org.hl7.fhir.r4.model.Ratio(); - copyElement(src, tgt); - tgt.setNumerator(convertQuantity(src.getNumerator())); - tgt.setDenominator(convertQuantity(src.getDenominator())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Ratio convertRatio(org.hl7.fhir.r4.model.Ratio src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Ratio tgt = new org.hl7.fhir.dstu2016may.model.Ratio(); - copyElement(src, tgt); - tgt.setNumerator(convertQuantity(src.getNumerator())); - tgt.setDenominator(convertQuantity(src.getDenominator())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Reference convertReference(org.hl7.fhir.dstu2016may.model.Reference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Reference tgt = new org.hl7.fhir.r4.model.Reference(); - copyElement(src, tgt); - if (src.hasReference()) - tgt.setReference(src.getReference()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Reference convertReference(org.hl7.fhir.r4.model.Reference src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Reference tgt = new org.hl7.fhir.dstu2016may.model.Reference(); - copyElement(src, tgt); - if (src.hasReference()) - tgt.setReference(src.getReference()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public static org.hl7.fhir.r4.model.SampledData convertSampledData(org.hl7.fhir.dstu2016may.model.SampledData src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.SampledData tgt = new org.hl7.fhir.r4.model.SampledData(); - copyElement(src, tgt); - tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); - tgt.setPeriod(src.getPeriod()); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasLowerLimit()) - tgt.setLowerLimit(src.getLowerLimit()); - if (src.hasUpperLimit()) - tgt.setUpperLimit(src.getUpperLimit()); - tgt.setDimensions(src.getDimensions()); - tgt.setData(src.getData()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.SampledData convertSampledData(org.hl7.fhir.r4.model.SampledData src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.SampledData tgt = new org.hl7.fhir.dstu2016may.model.SampledData(); - copyElement(src, tgt); - tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); - tgt.setPeriod(src.getPeriod()); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasLowerLimit()) - tgt.setLowerLimit(src.getLowerLimit()); - if (src.hasUpperLimit()) - tgt.setUpperLimit(src.getUpperLimit()); - tgt.setDimensions(src.getDimensions()); - tgt.setData(src.getData()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Signature convertSignature(org.hl7.fhir.dstu2016may.model.Signature src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Signature tgt = new org.hl7.fhir.r4.model.Signature(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - tgt.setWhen(src.getWhen()); - tgt.setWho(convertType(src.getWho())); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Signature convertSignature(org.hl7.fhir.r4.model.Signature src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Signature tgt = new org.hl7.fhir.dstu2016may.model.Signature(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - tgt.setWhen(src.getWhen()); - tgt.setWho(convertType(src.getWho())); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Address convertAddress(org.hl7.fhir.dstu2016may.model.Address src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Address tgt = new org.hl7.fhir.r4.model.Address(); - copyElement(src, tgt); - tgt.setUse(convertAddressUse(src.getUse())); - tgt.setType(convertAddressType(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getLine()) - tgt.addLine(t.getValue()); - if (src.hasCity()) - tgt.setCity(src.getCity()); - if (src.hasDistrict()) - tgt.setDistrict(src.getDistrict()); - if (src.hasState()) - tgt.setState(src.getState()); - if (src.hasPostalCode()) - tgt.setPostalCode(src.getPostalCode()); - if (src.hasCountry()) - tgt.setCountry(src.getCountry()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Address convertAddress(org.hl7.fhir.r4.model.Address src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Address tgt = new org.hl7.fhir.dstu2016may.model.Address(); - copyElement(src, tgt); - tgt.setUse(convertAddressUse(src.getUse())); - tgt.setType(convertAddressType(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - for (org.hl7.fhir.r4.model.StringType t : src.getLine()) - tgt.addLine(t.getValue()); - if (src.hasCity()) - tgt.setCity(src.getCity()); - if (src.hasDistrict()) - tgt.setDistrict(src.getDistrict()); - if (src.hasState()) - tgt.setState(src.getState()); - if (src.hasPostalCode()) - tgt.setPostalCode(src.getPostalCode()); - if (src.hasCountry()) - tgt.setCountry(src.getCountry()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Address.AddressUse convertAddressUse(org.hl7.fhir.dstu2016may.model.Address.AddressUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.r4.model.Address.AddressUse.HOME; - case WORK: return org.hl7.fhir.r4.model.Address.AddressUse.WORK; - case TEMP: return org.hl7.fhir.r4.model.Address.AddressUse.TEMP; - case OLD: return org.hl7.fhir.r4.model.Address.AddressUse.OLD; - default: return org.hl7.fhir.r4.model.Address.AddressUse.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Address.AddressUse convertAddressUse(org.hl7.fhir.r4.model.Address.AddressUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.HOME; - case WORK: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.WORK; - case TEMP: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.TEMP; - case OLD: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.OLD; - default: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.NULL; - } - } - - private static org.hl7.fhir.r4.model.Address.AddressType convertAddressType(org.hl7.fhir.dstu2016may.model.Address.AddressType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case POSTAL: return org.hl7.fhir.r4.model.Address.AddressType.POSTAL; - case PHYSICAL: return org.hl7.fhir.r4.model.Address.AddressType.PHYSICAL; - case BOTH: return org.hl7.fhir.r4.model.Address.AddressType.BOTH; - default: return org.hl7.fhir.r4.model.Address.AddressType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Address.AddressType convertAddressType(org.hl7.fhir.r4.model.Address.AddressType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case POSTAL: return org.hl7.fhir.dstu2016may.model.Address.AddressType.POSTAL; - case PHYSICAL: return org.hl7.fhir.dstu2016may.model.Address.AddressType.PHYSICAL; - case BOTH: return org.hl7.fhir.dstu2016may.model.Address.AddressType.BOTH; - default: return org.hl7.fhir.dstu2016may.model.Address.AddressType.NULL; - } - } - - public static org.hl7.fhir.r4.model.ContactPoint convertContactPoint(org.hl7.fhir.dstu2016may.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactPoint tgt = new org.hl7.fhir.r4.model.ContactPoint(); - copyElement(src, tgt); - tgt.setSystem(convertContactPointSystem(src.getSystem())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setUse(convertContactPointUse(src.getUse())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ContactPoint convertContactPoint(org.hl7.fhir.r4.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ContactPoint tgt = new org.hl7.fhir.dstu2016may.model.ContactPoint(); - copyElement(src, tgt); - tgt.setSystem(convertContactPointSystem(src.getSystem())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setUse(convertContactPointUse(src.getUse())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHONE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PHONE; - case FAX: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.FAX; - case EMAIL: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.EMAIL; - case PAGER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PAGER; - case OTHER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.URL; - default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHONE: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.PHONE; - case FAX: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.FAX; - case EMAIL: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.EMAIL; - case PAGER: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.PAGER; - case URL: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.OTHER; - default: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.NULL; - } - } - - private static org.hl7.fhir.r4.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.HOME; - case WORK: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.WORK; - case TEMP: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.TEMP; - case OLD: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.OLD; - case MOBILE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.MOBILE; - default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.r4.model.ContactPoint.ContactPointUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.HOME; - case WORK: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.WORK; - case TEMP: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.TEMP; - case OLD: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.OLD; - case MOBILE: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.MOBILE; - default: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.NULL; - } - } - - public static org.hl7.fhir.r4.model.ElementDefinition convertElementDefinition(org.hl7.fhir.dstu2016may.model.ElementDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition tgt = new org.hl7.fhir.r4.model.ElementDefinition(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - for (org.hl7.fhir.dstu2016may.model.Enumeration t : src.getRepresentation()) - tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); - if (src.hasName()) - tgt.setSliceName(src.getName()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); - if (src.hasShort()) - tgt.setShort(src.getShort()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasComments()) - tgt.setComment(src.getComments()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); - if (src.hasContentReference()) - tgt.setContentReference(src.getContentReference()); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent t : src.getType()) - tgt.addType(convertTypeRefComponent(t)); - tgt.setDefaultValue(convertType(src.getDefaultValue())); - if (src.hasMeaningWhenMissing()) - tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); - tgt.setFixed(convertType(src.getFixed())); - tgt.setPattern(convertType(src.getPattern())); - if (src.hasExample()) - tgt.addExample().setLabel("General").setValue(convertType(src.getExample())); - tgt.setMinValue(convertType(src.getMinValue())); - tgt.setMaxValue(convertType(src.getMaxValue())); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - for (org.hl7.fhir.dstu2016may.model.IdType t : src.getCondition()) - tgt.addCondition(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) - tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); - if (src.hasMustSupport()) - tgt.setMustSupport(src.getMustSupport()); - if (src.hasIsModifier()) - tgt.setIsModifier(src.getIsModifier()); - if (src.hasIsSummary()) - tgt.setIsSummary(src.getIsSummary()); - tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertElementDefinitionMappingComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition convertElementDefinition(org.hl7.fhir.r4.model.ElementDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - for (org.hl7.fhir.r4.model.Enumeration t : src.getRepresentation()) - tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); - if (src.hasSliceName()) - tgt.setName(src.getSliceName()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - for (org.hl7.fhir.r4.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - if (src.hasSlicing()) - tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); - if (src.hasShort()) - tgt.setShort(src.getShort()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasComment()) - tgt.setComments(src.getComment()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - for (org.hl7.fhir.r4.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasBase()) - tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); - if (src.hasContentReference()) - tgt.setContentReference(src.getContentReference()); - for (org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent t : src.getType()) - tgt.addType(convertTypeRefComponent(t)); - tgt.setDefaultValue(convertType(src.getDefaultValue())); - if (src.hasMeaningWhenMissing()) - tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); - tgt.setFixed(convertType(src.getFixed())); - tgt.setPattern(convertType(src.getPattern())); - if (src.hasExample()) - tgt.setExample(convertType(src.getExample().get(0).getValue())); - tgt.setMinValue(convertType(src.getMinValue())); - tgt.setMaxValue(convertType(src.getMaxValue())); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - for (org.hl7.fhir.r4.model.IdType t : src.getCondition()) - tgt.addCondition(t.getValue()); - for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) - tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); - if (src.hasMustSupport()) - tgt.setMustSupport(src.getMustSupport()); - if (src.hasIsModifier()) - tgt.setIsModifier(src.getIsModifier()); - if (src.hasIsSummary()) - tgt.setIsSummary(src.getIsSummary()); - if (src.hasBinding()) - tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); - for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertElementDefinitionMappingComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XMLATTR: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XMLATTR; - case XMLTEXT: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XMLTEXT; - case TYPEATTR: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.TYPEATTR; - case CDATEXT: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.CDATEXT; - default: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XMLATTR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.XMLATTR; - case XMLTEXT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.XMLTEXT; - case TYPEATTR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.TYPEATTR; - case CDATEXT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.CDATEXT; - default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.NULL; - } - } - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getDiscriminator()) - tgt.addDiscriminator(ProfileUtilities.interpretR2Discriminator(t.getValue())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasOrdered()) - tgt.setOrdered(src.getOrdered()); - tgt.setRules(convertSlicingRules(src.getRules())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent(); - copyElement(src, tgt); - for (ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) - tgt.addDiscriminator(ProfileUtilities.buildR2Discriminator(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasOrdered()) - tgt.setOrdered(src.getOrdered()); - tgt.setRules(convertSlicingRules(src.getRules())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLOSED: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.CLOSED; - case OPEN: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPEN; - case OPENATEND: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPENATEND; - default: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.r4.model.ElementDefinition.SlicingRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLOSED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.CLOSED; - case OPEN: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.OPEN; - case OPENATEND: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.OPENATEND; - default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.NULL; - } - } - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent(); - copyElement(src, tgt); - tgt.setPath(src.getPath()); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getProfile()) { - if (src.getCode().equals("Reference")) - tgt.setTargetProfile(t.getValueAsString()); - else - tgt.setProfile(t.getValueAsString()); - } - for (org.hl7.fhir.dstu2016may.model.Enumeration t : src.getAggregation()) - tgt.addAggregation(convertAggregationMode(t.getValue())); - tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasCode() && "Reference".equals(src.getCode())) - tgt.addProfile(src.getTargetProfile()); - else - tgt.addProfile(src.getProfile()); - for (org.hl7.fhir.r4.model.Enumeration t : src.getAggregation()) - tgt.addAggregation(convertAggregationMode(t.getValue())); - tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONTAINED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.CONTAINED; - case REFERENCED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.REFERENCED; - case BUNDLED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.BUNDLED; - default: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.r4.model.ElementDefinition.AggregationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONTAINED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.CONTAINED; - case REFERENCED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.REFERENCED; - case BUNDLED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.BUNDLED; - default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.NULL; - } - } - - private static org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EITHER: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.EITHER; - case INDEPENDENT: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; - case SPECIFIC: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; - default: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EITHER: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.EITHER; - case INDEPENDENT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; - case SPECIFIC: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; - default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.NULL; - } - } - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent(); - copyElement(src, tgt); - tgt.setKey(src.getKey()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); - tgt.setHuman(src.getHuman()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - tgt.setXpath(src.getXpath()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent(); - copyElement(src, tgt); - tgt.setKey(src.getKey()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); - tgt.setHuman(src.getHuman()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - tgt.setXpath(src.getXpath()); - return tgt; - } - - private static org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ERROR: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.ERROR; - case WARNING: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.WARNING; - default: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ERROR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.ERROR; - case WARNING: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.WARNING; - default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.NULL; - } - } - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.REQUIRED; - case EXTENSIBLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXTENSIBLE; - case PREFERRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.PREFERRED; - case EXAMPLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXAMPLE; - default: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.r4.model.Enumerations.BindingStrength src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.REQUIRED; - case EXTENSIBLE: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.EXTENSIBLE; - case PREFERRED: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.PREFERRED; - case EXAMPLE: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.EXAMPLE; - default: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.NULL; - } - } - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setMap(src.getMap()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setMap(src.getMap()); - return tgt; - } - - public static org.hl7.fhir.r4.model.HumanName convertHumanName(org.hl7.fhir.dstu2016may.model.HumanName src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.HumanName tgt = new org.hl7.fhir.r4.model.HumanName(); - copyElement(src, tgt); - tgt.setUse(convertNameUse(src.getUse())); - if (src.hasText()) - tgt.setText(src.getText()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getFamily()) - tgt.setFamily(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getGiven()) - tgt.addGiven(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getPrefix()) - tgt.addPrefix(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSuffix()) - tgt.addSuffix(t.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.HumanName convertHumanName(org.hl7.fhir.r4.model.HumanName src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.HumanName tgt = new org.hl7.fhir.dstu2016may.model.HumanName(); - copyElement(src, tgt); - tgt.setUse(convertNameUse(src.getUse())); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasFamily()) - tgt.addFamily(src.getFamily()); - for (org.hl7.fhir.r4.model.StringType t : src.getGiven()) - tgt.addGiven(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getPrefix()) - tgt.addPrefix(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getSuffix()) - tgt.addSuffix(t.getValue()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.r4.model.HumanName.NameUse convertNameUse(org.hl7.fhir.dstu2016may.model.HumanName.NameUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.r4.model.HumanName.NameUse.USUAL; - case OFFICIAL: return org.hl7.fhir.r4.model.HumanName.NameUse.OFFICIAL; - case TEMP: return org.hl7.fhir.r4.model.HumanName.NameUse.TEMP; - case NICKNAME: return org.hl7.fhir.r4.model.HumanName.NameUse.NICKNAME; - case ANONYMOUS: return org.hl7.fhir.r4.model.HumanName.NameUse.ANONYMOUS; - case OLD: return org.hl7.fhir.r4.model.HumanName.NameUse.OLD; - case MAIDEN: return org.hl7.fhir.r4.model.HumanName.NameUse.MAIDEN; - default: return org.hl7.fhir.r4.model.HumanName.NameUse.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.HumanName.NameUse convertNameUse(org.hl7.fhir.r4.model.HumanName.NameUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.USUAL; - case OFFICIAL: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.OFFICIAL; - case TEMP: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.TEMP; - case NICKNAME: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.NICKNAME; - case ANONYMOUS: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.ANONYMOUS; - case OLD: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.OLD; - case MAIDEN: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.MAIDEN; - default: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.NULL; - } - } - - public static org.hl7.fhir.r4.model.Meta convertMeta(org.hl7.fhir.dstu2016may.model.Meta src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Meta tgt = new org.hl7.fhir.r4.model.Meta(); - copyElement(src, tgt); - if (src.hasVersionId()) - tgt.setVersionId(src.getVersionId()); - if (src.hasLastUpdated()) - tgt.setLastUpdated(src.getLastUpdated()); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getSecurity()) - tgt.addSecurity(convertCoding(t)); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Meta convertMeta(org.hl7.fhir.r4.model.Meta src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Meta tgt = new org.hl7.fhir.dstu2016may.model.Meta(); - copyElement(src, tgt); - if (src.hasVersionId()) - tgt.setVersionId(src.getVersionId()); - if (src.hasLastUpdated()) - tgt.setLastUpdated(src.getLastUpdated()); - for (org.hl7.fhir.r4.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.r4.model.Coding t : src.getSecurity()) - tgt.addSecurity(convertCoding(t)); - for (org.hl7.fhir.r4.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Timing convertTiming(org.hl7.fhir.dstu2016may.model.Timing src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Timing tgt = new org.hl7.fhir.r4.model.Timing(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.DateTimeType t : src.getEvent()) - tgt.addEvent(t.getValue()); - tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Timing convertTiming(org.hl7.fhir.r4.model.Timing src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Timing tgt = new org.hl7.fhir.dstu2016may.model.Timing(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.DateTimeType t : src.getEvent()) - tgt.addEvent(t.getValue()); - tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.r4.model.Timing.TimingRepeatComponent(); - copyElement(src, tgt); - tgt.setBounds(convertType(src.getBounds())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - if (src.hasCountMax()) - tgt.setCountMax(src.getCountMax()); - if (src.hasDuration()) - tgt.setDuration(src.getDuration()); - if (src.hasDurationMax()) - tgt.setDurationMax(src.getDurationMax()); - tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); - if (src.hasFrequency()) - tgt.setFrequency(src.getFrequency()); - if (src.hasFrequencyMax()) - tgt.setFrequencyMax(src.getFrequencyMax()); - if (src.hasPeriod()) - tgt.setPeriod(src.getPeriod()); - if (src.hasPeriodMax()) - tgt.setPeriodMax(src.getPeriodMax()); - tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); - tgt.addWhen(convertEventTiming(src.getWhen())); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.r4.model.Timing.TimingRepeatComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent(); - copyElement(src, tgt); - tgt.setBounds(convertType(src.getBounds())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - if (src.hasCountMax()) - tgt.setCountMax(src.getCountMax()); - if (src.hasDuration()) - tgt.setDuration(src.getDuration()); - if (src.hasDurationMax()) - tgt.setDurationMax(src.getDurationMax()); - tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); - if (src.hasFrequency()) - tgt.setFrequency(src.getFrequency()); - if (src.hasFrequencyMax()) - tgt.setFrequencyMax(src.getFrequencyMax()); - if (src.hasPeriod()) - tgt.setPeriod(src.getPeriod()); - if (src.hasPeriodMax()) - tgt.setPeriodMax(src.getPeriodMax()); - tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); - for (Enumeration t : src.getWhen()) - tgt.setWhen(convertEventTiming(t.getValue())); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case S: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.S; - case MIN: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MIN; - case H: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.H; - case D: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.D; - case WK: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.WK; - case MO: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MO; - case A: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.A; - default: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.r4.model.Timing.UnitsOfTime src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case S: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.S; - case MIN: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.MIN; - case H: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.H; - case D: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.D; - case WK: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.WK; - case MO: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.MO; - case A: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.A; - default: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.NULL; - } - } - - private static org.hl7.fhir.r4.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.dstu2016may.model.Timing.EventTiming src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HS: return org.hl7.fhir.r4.model.Timing.EventTiming.HS; - case WAKE: return org.hl7.fhir.r4.model.Timing.EventTiming.WAKE; - case C: return org.hl7.fhir.r4.model.Timing.EventTiming.C; - case CM: return org.hl7.fhir.r4.model.Timing.EventTiming.CM; - case CD: return org.hl7.fhir.r4.model.Timing.EventTiming.CD; - case CV: return org.hl7.fhir.r4.model.Timing.EventTiming.CV; - case AC: return org.hl7.fhir.r4.model.Timing.EventTiming.AC; - case ACM: return org.hl7.fhir.r4.model.Timing.EventTiming.ACM; - case ACD: return org.hl7.fhir.r4.model.Timing.EventTiming.ACD; - case ACV: return org.hl7.fhir.r4.model.Timing.EventTiming.ACV; - case PC: return org.hl7.fhir.r4.model.Timing.EventTiming.PC; - case PCM: return org.hl7.fhir.r4.model.Timing.EventTiming.PCM; - case PCD: return org.hl7.fhir.r4.model.Timing.EventTiming.PCD; - case PCV: return org.hl7.fhir.r4.model.Timing.EventTiming.PCV; - default: return org.hl7.fhir.r4.model.Timing.EventTiming.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.r4.model.Timing.EventTiming src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HS: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.HS; - case WAKE: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.WAKE; - case C: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.C; - case CM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CM; - case CD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CD; - case CV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CV; - case AC: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.AC; - case ACM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACM; - case ACD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACD; - case ACV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACV; - case PC: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PC; - case PCM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCM; - case PCD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCD; - case PCV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCV; - default: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.NULL; - } - } - - public static org.hl7.fhir.r4.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.dstu2016may.model.SimpleQuantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.SimpleQuantity tgt = new org.hl7.fhir.r4.model.SimpleQuantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.r4.model.SimpleQuantity src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.SimpleQuantity tgt = new org.hl7.fhir.dstu2016may.model.SimpleQuantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Type convertType(org.hl7.fhir.dstu2016may.model.Type src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.dstu2016may.model.Base64BinaryType) - return convertBase64Binary((org.hl7.fhir.dstu2016may.model.Base64BinaryType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.BooleanType) - return convertBoolean((org.hl7.fhir.dstu2016may.model.BooleanType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.CodeType) - return convertCode((org.hl7.fhir.dstu2016may.model.CodeType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.DateType) - return convertDate((org.hl7.fhir.dstu2016may.model.DateType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.DateTimeType) - return convertDateTime((org.hl7.fhir.dstu2016may.model.DateTimeType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.DecimalType) - return convertDecimal((org.hl7.fhir.dstu2016may.model.DecimalType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.IdType) - return convertId((org.hl7.fhir.dstu2016may.model.IdType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.InstantType) - return convertInstant((org.hl7.fhir.dstu2016may.model.InstantType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.IntegerType) - return convertInteger((org.hl7.fhir.dstu2016may.model.IntegerType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.MarkdownType) - return convertMarkdown((org.hl7.fhir.dstu2016may.model.MarkdownType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.OidType) - return convertOid((org.hl7.fhir.dstu2016may.model.OidType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.PositiveIntType) - return convertPositiveInt((org.hl7.fhir.dstu2016may.model.PositiveIntType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.StringType) - return convertString((org.hl7.fhir.dstu2016may.model.StringType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.TimeType) - return convertTime((org.hl7.fhir.dstu2016may.model.TimeType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.UnsignedIntType) - return convertUnsignedInt((org.hl7.fhir.dstu2016may.model.UnsignedIntType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.UriType) - return convertUri((org.hl7.fhir.dstu2016may.model.UriType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.UuidType) - return convertUuid((org.hl7.fhir.dstu2016may.model.UuidType) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Extension) - return convertExtension((org.hl7.fhir.dstu2016may.model.Extension) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Narrative) - return convertNarrative((org.hl7.fhir.dstu2016may.model.Narrative) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Age) - return convertAge((org.hl7.fhir.dstu2016may.model.Age) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Annotation) - return convertAnnotation((org.hl7.fhir.dstu2016may.model.Annotation) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Attachment) - return convertAttachment((org.hl7.fhir.dstu2016may.model.Attachment) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.CodeableConcept) - return convertCodeableConcept((org.hl7.fhir.dstu2016may.model.CodeableConcept) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Coding) - return convertCoding((org.hl7.fhir.dstu2016may.model.Coding) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Count) - return convertCount((org.hl7.fhir.dstu2016may.model.Count) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Distance) - return convertDistance((org.hl7.fhir.dstu2016may.model.Distance) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Duration) - return convertDuration((org.hl7.fhir.dstu2016may.model.Duration) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Identifier) - return convertIdentifier((org.hl7.fhir.dstu2016may.model.Identifier) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Money) - return convertMoney((org.hl7.fhir.dstu2016may.model.Money) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Period) - return convertPeriod((org.hl7.fhir.dstu2016may.model.Period) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Quantity) - return convertQuantity((org.hl7.fhir.dstu2016may.model.Quantity) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Range) - return convertRange((org.hl7.fhir.dstu2016may.model.Range) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Ratio) - return convertRatio((org.hl7.fhir.dstu2016may.model.Ratio) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Reference) - return convertReference((org.hl7.fhir.dstu2016may.model.Reference) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.SampledData) - return convertSampledData((org.hl7.fhir.dstu2016may.model.SampledData) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Signature) - return convertSignature((org.hl7.fhir.dstu2016may.model.Signature) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Address) - return convertAddress((org.hl7.fhir.dstu2016may.model.Address) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.ContactPoint) - return convertContactPoint((org.hl7.fhir.dstu2016may.model.ContactPoint) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.ElementDefinition) - return convertElementDefinition((org.hl7.fhir.dstu2016may.model.ElementDefinition) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.HumanName) - return convertHumanName((org.hl7.fhir.dstu2016may.model.HumanName) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Meta) - return convertMeta((org.hl7.fhir.dstu2016may.model.Meta) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Timing) - return convertTiming((org.hl7.fhir.dstu2016may.model.Timing) src); - throw new Error("Unknown type "+src.fhirType()); - } - - public static org.hl7.fhir.dstu2016may.model.Type convertType(org.hl7.fhir.r4.model.Type src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.r4.model.Base64BinaryType) - return convertBase64Binary((org.hl7.fhir.r4.model.Base64BinaryType) src); - if (src instanceof org.hl7.fhir.r4.model.BooleanType) - return convertBoolean((org.hl7.fhir.r4.model.BooleanType) src); - if (src instanceof org.hl7.fhir.r4.model.CodeType) - return convertCode((org.hl7.fhir.r4.model.CodeType) src); - if (src instanceof org.hl7.fhir.r4.model.DateType) - return convertDate((org.hl7.fhir.r4.model.DateType) src); - if (src instanceof org.hl7.fhir.r4.model.DateTimeType) - return convertDateTime((org.hl7.fhir.r4.model.DateTimeType) src); - if (src instanceof org.hl7.fhir.r4.model.DecimalType) - return convertDecimal((org.hl7.fhir.r4.model.DecimalType) src); - if (src instanceof org.hl7.fhir.r4.model.IdType) - return convertId((org.hl7.fhir.r4.model.IdType) src); - if (src instanceof org.hl7.fhir.r4.model.InstantType) - return convertInstant((org.hl7.fhir.r4.model.InstantType) src); - if (src instanceof org.hl7.fhir.r4.model.IntegerType) - return convertInteger((org.hl7.fhir.r4.model.IntegerType) src); - if (src instanceof org.hl7.fhir.r4.model.MarkdownType) - return convertMarkdown((org.hl7.fhir.r4.model.MarkdownType) src); - if (src instanceof org.hl7.fhir.r4.model.OidType) - return convertOid((org.hl7.fhir.r4.model.OidType) src); - if (src instanceof org.hl7.fhir.r4.model.PositiveIntType) - return convertPositiveInt((org.hl7.fhir.r4.model.PositiveIntType) src); - if (src instanceof org.hl7.fhir.r4.model.StringType) - return convertString((org.hl7.fhir.r4.model.StringType) src); - if (src instanceof org.hl7.fhir.r4.model.TimeType) - return convertTime((org.hl7.fhir.r4.model.TimeType) src); - if (src instanceof org.hl7.fhir.r4.model.UnsignedIntType) - return convertUnsignedInt((org.hl7.fhir.r4.model.UnsignedIntType) src); - if (src instanceof org.hl7.fhir.r4.model.UriType) - return convertUri((org.hl7.fhir.r4.model.UriType) src); - if (src instanceof org.hl7.fhir.r4.model.UuidType) - return convertUuid((org.hl7.fhir.r4.model.UuidType) src); - if (src instanceof org.hl7.fhir.r4.model.Extension) - return convertExtension((org.hl7.fhir.r4.model.Extension) src); - if (src instanceof org.hl7.fhir.r4.model.Narrative) - return convertNarrative((org.hl7.fhir.r4.model.Narrative) src); - if (src instanceof org.hl7.fhir.r4.model.Age) - return convertAge((org.hl7.fhir.r4.model.Age) src); - if (src instanceof org.hl7.fhir.r4.model.Annotation) - return convertAnnotation((org.hl7.fhir.r4.model.Annotation) src); - if (src instanceof org.hl7.fhir.r4.model.Attachment) - return convertAttachment((org.hl7.fhir.r4.model.Attachment) src); - if (src instanceof org.hl7.fhir.r4.model.CodeableConcept) - return convertCodeableConcept((org.hl7.fhir.r4.model.CodeableConcept) src); - if (src instanceof org.hl7.fhir.r4.model.Coding) - return convertCoding((org.hl7.fhir.r4.model.Coding) src); - if (src instanceof org.hl7.fhir.r4.model.Count) - return convertCount((org.hl7.fhir.r4.model.Count) src); - if (src instanceof org.hl7.fhir.r4.model.Distance) - return convertDistance((org.hl7.fhir.r4.model.Distance) src); - if (src instanceof org.hl7.fhir.r4.model.Duration) - return convertDuration((org.hl7.fhir.r4.model.Duration) src); - if (src instanceof org.hl7.fhir.r4.model.Identifier) - return convertIdentifier((org.hl7.fhir.r4.model.Identifier) src); - if (src instanceof org.hl7.fhir.r4.model.Money) - return convertMoney((org.hl7.fhir.r4.model.Money) src); - if (src instanceof org.hl7.fhir.r4.model.Period) - return convertPeriod((org.hl7.fhir.r4.model.Period) src); - if (src instanceof org.hl7.fhir.r4.model.Quantity) - return convertQuantity((org.hl7.fhir.r4.model.Quantity) src); - if (src instanceof org.hl7.fhir.r4.model.Range) - return convertRange((org.hl7.fhir.r4.model.Range) src); - if (src instanceof org.hl7.fhir.r4.model.Ratio) - return convertRatio((org.hl7.fhir.r4.model.Ratio) src); - if (src instanceof org.hl7.fhir.r4.model.Reference) - return convertReference((org.hl7.fhir.r4.model.Reference) src); - if (src instanceof org.hl7.fhir.r4.model.SampledData) - return convertSampledData((org.hl7.fhir.r4.model.SampledData) src); - if (src instanceof org.hl7.fhir.r4.model.Signature) - return convertSignature((org.hl7.fhir.r4.model.Signature) src); - if (src instanceof org.hl7.fhir.r4.model.Address) - return convertAddress((org.hl7.fhir.r4.model.Address) src); - if (src instanceof org.hl7.fhir.r4.model.ContactPoint) - return convertContactPoint((org.hl7.fhir.r4.model.ContactPoint) src); - if (src instanceof org.hl7.fhir.r4.model.ElementDefinition) - return convertElementDefinition((org.hl7.fhir.r4.model.ElementDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.HumanName) - return convertHumanName((org.hl7.fhir.r4.model.HumanName) src); - if (src instanceof org.hl7.fhir.r4.model.Meta) - return convertMeta((org.hl7.fhir.r4.model.Meta) src); - if (src instanceof org.hl7.fhir.r4.model.Timing) - return convertTiming((org.hl7.fhir.r4.model.Timing) src); - throw new Error("Unknown type "+src.fhirType()); - } - - private static void copyDomainResource(org.hl7.fhir.dstu2016may.model.DomainResource src, org.hl7.fhir.r4.model.DomainResource tgt) throws FHIRException { - copyResource(src, tgt); - tgt.setText(convertNarrative(src.getText())); - for (org.hl7.fhir.dstu2016may.model.Resource t : src.getContained()) - tgt.addContained(convertResource(t)); - for (org.hl7.fhir.dstu2016may.model.Extension t : src.getExtension()) - tgt.addExtension(convertExtension(t)); - for (org.hl7.fhir.dstu2016may.model.Extension t : src.getModifierExtension()) - tgt.addModifierExtension(convertExtension(t)); - } - private static void copyDomainResource(org.hl7.fhir.r4.model.DomainResource src, org.hl7.fhir.dstu2016may.model.DomainResource tgt) throws FHIRException { - copyResource(src, tgt); - if (src.hasText()) - tgt.setText(convertNarrative(src.getText())); - for (org.hl7.fhir.r4.model.Resource t : src.getContained()) - tgt.addContained(convertResource(t)); - for (org.hl7.fhir.r4.model.Extension t : src.getExtension()) - tgt.addExtension(convertExtension(t)); - for (org.hl7.fhir.r4.model.Extension t : src.getModifierExtension()) - tgt.addModifierExtension(convertExtension(t)); - } - public static org.hl7.fhir.r4.model.Parameters convertParameters(org.hl7.fhir.dstu2016may.model.Parameters src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Parameters tgt = new org.hl7.fhir.r4.model.Parameters(); - copyResource(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent t : src.getParameter()) - tgt.addParameter(convertParametersParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Parameters convertParameters(org.hl7.fhir.r4.model.Parameters src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Parameters tgt = new org.hl7.fhir.dstu2016may.model.Parameters(); - copyResource(src, tgt); - for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getParameter()) - tgt.addParameter(convertParametersParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - tgt.setResource(convertResource(src.getResource())); - for (org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent t : src.getPart()) - tgt.addPart(convertParametersParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - tgt.setResource(convertResource(src.getResource())); - for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getPart()) - tgt.addPart(convertParametersParameterComponent(t)); - return tgt; - } - - private static void copyResource(org.hl7.fhir.dstu2016may.model.Resource src, org.hl7.fhir.r4.model.Resource tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - tgt.setMeta(convertMeta(src.getMeta())); - if (src.hasImplicitRules()) - tgt.setImplicitRules(src.getImplicitRules()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - } - private static void copyResource(org.hl7.fhir.r4.model.Resource src, org.hl7.fhir.dstu2016may.model.Resource tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - if (src.hasMeta()) - tgt.setMeta(convertMeta(src.getMeta())); - if (src.hasImplicitRules()) - tgt.setImplicitRules(src.getImplicitRules()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - } - - public static org.hl7.fhir.r4.model.Binary convertBinary(org.hl7.fhir.dstu2016may.model.Binary src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Binary tgt = new org.hl7.fhir.r4.model.Binary(); - copyResource(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setContent(src.getContent()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Binary convertBinary(org.hl7.fhir.r4.model.Binary src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Binary tgt = new org.hl7.fhir.dstu2016may.model.Binary(); - copyResource(src, tgt); - tgt.setContentType(src.getContentType()); - tgt.setContent(src.getContent()); - return tgt; - } - - - public static org.hl7.fhir.r4.model.Bundle convertBundle(org.hl7.fhir.dstu2016may.model.Bundle src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle tgt = new org.hl7.fhir.r4.model.Bundle(); - copyResource(src, tgt); - tgt.setType(convertBundleType(src.getType())); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - for (org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent t : src.getEntry()) - tgt.addEntry(convertBundleEntryComponent(t)); - tgt.setSignature(convertSignature(src.getSignature())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle convertBundle(org.hl7.fhir.r4.model.Bundle src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle tgt = new org.hl7.fhir.dstu2016may.model.Bundle(); - copyResource(src, tgt); - tgt.setType(convertBundleType(src.getType())); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - for (org.hl7.fhir.r4.model.Bundle.BundleEntryComponent t : src.getEntry()) - tgt.addEntry(convertBundleEntryComponent(t)); - tgt.setSignature(convertSignature(src.getSignature())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Bundle.BundleType convertBundleType(org.hl7.fhir.dstu2016may.model.Bundle.BundleType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENT: return org.hl7.fhir.r4.model.Bundle.BundleType.DOCUMENT; - case MESSAGE: return org.hl7.fhir.r4.model.Bundle.BundleType.MESSAGE; - case TRANSACTION: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTION; - case TRANSACTIONRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTIONRESPONSE; - case BATCH: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCH; - case BATCHRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCHRESPONSE; - case HISTORY: return org.hl7.fhir.r4.model.Bundle.BundleType.HISTORY; - case SEARCHSET: return org.hl7.fhir.r4.model.Bundle.BundleType.SEARCHSET; - case COLLECTION: return org.hl7.fhir.r4.model.Bundle.BundleType.COLLECTION; - default: return org.hl7.fhir.r4.model.Bundle.BundleType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Bundle.BundleType convertBundleType(org.hl7.fhir.r4.model.Bundle.BundleType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENT: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.DOCUMENT; - case MESSAGE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.MESSAGE; - case TRANSACTION: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.TRANSACTION; - case TRANSACTIONRESPONSE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.TRANSACTIONRESPONSE; - case BATCH: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.BATCH; - case BATCHRESPONSE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.BATCHRESPONSE; - case HISTORY: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.HISTORY; - case SEARCHSET: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.SEARCHSET; - case COLLECTION: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.COLLECTION; - default: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.NULL; - } - } - - public static org.hl7.fhir.r4.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleLinkComponent(); - copyElement(src, tgt); - tgt.setRelation(src.getRelation()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.r4.model.Bundle.BundleLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent(); - copyElement(src, tgt); - tgt.setRelation(src.getRelation()); - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - if (src.hasFullUrl()) - tgt.setFullUrl(src.getFullUrl()); - tgt.setResource(convertResource(src.getResource())); - tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); - tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); - tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - if (src.hasFullUrl()) - tgt.setFullUrl(src.getFullUrl()); - tgt.setResource(convertResource(src.getResource())); - tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); - tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); - tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent(); - copyElement(src, tgt); - tgt.setMode(convertSearchEntryMode(src.getMode())); - if (src.hasScore()) - tgt.setScore(src.getScore()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent(); - copyElement(src, tgt); - tgt.setMode(convertSearchEntryMode(src.getMode())); - if (src.hasScore()) - tgt.setScore(src.getScore()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MATCH: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.MATCH; - case INCLUDE: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.INCLUDE; - case OUTCOME: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.OUTCOME; - default: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.r4.model.Bundle.SearchEntryMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MATCH: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.MATCH; - case INCLUDE: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.INCLUDE; - case OUTCOME: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.OUTCOME; - default: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.NULL; - } - } - - public static org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent(); - copyElement(src, tgt); - tgt.setMethod(convertHTTPVerb(src.getMethod())); - tgt.setUrl(src.getUrl()); - if (src.hasIfNoneMatch()) - tgt.setIfNoneMatch(src.getIfNoneMatch()); - if (src.hasIfModifiedSince()) - tgt.setIfModifiedSince(src.getIfModifiedSince()); - if (src.hasIfMatch()) - tgt.setIfMatch(src.getIfMatch()); - if (src.hasIfNoneExist()) - tgt.setIfNoneExist(src.getIfNoneExist()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent(); - copyElement(src, tgt); - tgt.setMethod(convertHTTPVerb(src.getMethod())); - tgt.setUrl(src.getUrl()); - if (src.hasIfNoneMatch()) - tgt.setIfNoneMatch(src.getIfNoneMatch()); - if (src.hasIfModifiedSince()) - tgt.setIfModifiedSince(src.getIfModifiedSince()); - if (src.hasIfMatch()) - tgt.setIfMatch(src.getIfMatch()); - if (src.hasIfNoneExist()) - tgt.setIfNoneExist(src.getIfNoneExist()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GET: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.GET; - case POST: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.POST; - case PUT: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.PUT; - case DELETE: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.DELETE; - default: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.r4.model.Bundle.HTTPVerb src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GET: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.GET; - case POST: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.POST; - case PUT: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.PUT; - case DELETE: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.DELETE; - default: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.NULL; - } - } - - public static org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent(); - copyElement(src, tgt); - tgt.setStatus(src.getStatus()); - if (src.hasLocation()) - tgt.setLocation(src.getLocation()); - if (src.hasEtag()) - tgt.setEtag(src.getEtag()); - if (src.hasLastModified()) - tgt.setLastModified(src.getLastModified()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent(); - copyElement(src, tgt); - tgt.setStatus(src.getStatus()); - if (src.hasLocation()) - tgt.setLocation(src.getLocation()); - if (src.hasEtag()) - tgt.setEtag(src.getEtag()); - if (src.hasLastModified()) - tgt.setLastModified(src.getLastModified()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Enumerations.PublicationStatus convertConformanceResourceStatus(org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.RETIRED; - default: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.NULL; - } - } - - public static org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus convertConformanceResourceStatus(org.hl7.fhir.r4.model.Enumerations.PublicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.RETIRED; - default: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.NULL; - } - } - - public static org.hl7.fhir.r4.model.CodeSystem convertCodeSystem(org.hl7.fhir.dstu2016may.model.CodeSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CodeSystem tgt = new org.hl7.fhir.r4.model.CodeSystem(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent t : src.getContact()) - tgt.addContact(convertCodeSystemContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasCaseSensitive()) - tgt.setCaseSensitive(src.getCaseSensitive()); - if (src.hasValueSet()) - tgt.setValueSet(src.getValueSet()); - if (src.hasCompositional()) - tgt.setCompositional(src.getCompositional()); - if (src.hasVersionNeeded()) - tgt.setVersionNeeded(src.getVersionNeeded()); - tgt.setContent(convertCodeSystemContentMode(src.getContent())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) - tgt.addFilter(convertCodeSystemFilterComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent t : src.getProperty()) - tgt.addProperty(convertPropertyComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - - private static boolean isJurisdiction(CodeableConcept t) { - return t.hasCoding() && ("http://unstats.un.org/unsd/methods/m49/m49.htm".equals(t.getCoding().get(0).getSystem()) || "urn:iso:std:iso:3166".equals(t.getCoding().get(0).getSystem()) - || "https://www.usps.com/".equals(t.getCoding().get(0).getSystem())); - } - - public static org.hl7.fhir.r4.model.UsageContext convertCodeableConceptToUsageContext(org.hl7.fhir.dstu2016may.model.CodeableConcept t) throws FHIRException { - org.hl7.fhir.r4.model.UsageContext result = new org.hl7.fhir.r4.model.UsageContext(); - // todo: set type.. - result.setValue(convertCodeableConcept(t)); - return result; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem convertCodeSystem(org.hl7.fhir.r4.model.CodeSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertCodeSystemContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasCaseSensitive()) - tgt.setCaseSensitive(src.getCaseSensitive()); - if (src.hasValueSet()) - tgt.setValueSet(src.getValueSet()); - if (src.hasCompositional()) - tgt.setCompositional(src.getCompositional()); - if (src.hasVersionNeeded()) - tgt.setVersionNeeded(src.getVersionNeeded()); - tgt.setContent(convertCodeSystemContentMode(src.getContent())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - for (org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) - tgt.addFilter(convertCodeSystemFilterComponent(t)); - for (org.hl7.fhir.r4.model.CodeSystem.PropertyComponent t : src.getProperty()) - tgt.addProperty(convertPropertyComponent(t)); - for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTPRESENT: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; - case EXAMPLAR: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.EXAMPLE; - case FRAGMENT: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.FRAGMENT; - case COMPLETE: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.COMPLETE; - default: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.NULL; - } -} - - private static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTPRESENT: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; - case EXAMPLE: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.EXAMPLAR; - case FRAGMENT: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.FRAGMENT; - case COMPLETE: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.COMPLETE; - default: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.ContactDetail convertCodeSystemContactComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent convertCodeSystemContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getOperator()) - try { - tgt.addOperator(CodeSystem.FilterOperator.fromCode(t.getValue())); - } catch (org.hl7.fhir.exceptions.FHIRException e) { - throw new FHIRException(e); - } - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (Enumeration t : src.getOperator()) - tgt.addOperator(t.getValue().toCode()); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeSystem.PropertyComponent convertPropertyComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CodeSystem.PropertyComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.PropertyComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setType(convertPropertyType(src.getType())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent convertPropertyComponent(org.hl7.fhir.r4.model.CodeSystem.PropertyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setType(convertPropertyType(src.getType())); - return tgt; - } - - private static org.hl7.fhir.r4.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODE: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.CODE; - case CODING: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.CODING; - case STRING: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.STRING; - case INTEGER: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.INTEGER; - case BOOLEAN: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.BOOLEAN; - case DATETIME: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.DATETIME; - default: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.NULL; - } -} - - private static org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.r4.model.CodeSystem.PropertyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODE: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.CODE; - case CODING: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.CODING; - case STRING: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.STRING; - case INTEGER: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.INTEGER; - case BOOLEAN: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.BOOLEAN; - case DATETIME: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.DATETIME; - default: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.NULL; - } -} - - public static org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); - for (ConceptDefinitionPropertyComponent t : src.getProperty()) - tgt.addProperty(convertConceptPropertyComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); - for (org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent t : src.getProperty()) - tgt.addProperty(convertConceptPropertyComponent(t)); - for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu2016may.model.CompartmentDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CompartmentDefinition tgt = new org.hl7.fhir.r4.model.CompartmentDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent t : src.getContact()) - tgt.addContact(convertCompartmentDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - tgt.setCode(convertCompartmentType(src.getCode())); - tgt.setSearch(src.getSearch()); - for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) - tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.r4.model.CompartmentDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertCompartmentDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - tgt.setCode(convertCompartmentType(src.getCode())); - tgt.setSearch(src.getSearch()); - for (org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) - tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.PATIENT; - case ENCOUNTER: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.ENCOUNTER; - case RELATEDPERSON: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; - case PRACTITIONER: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.DEVICE; - default: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.NULL; - } -} - - private static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.PATIENT; - case ENCOUNTER: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.ENCOUNTER; - case RELATEDPERSON: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; - case PRACTITIONER: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.DEVICE; - default: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.NULL; - } -} - - public static org.hl7.fhir.r4.model.ContactDetail convertCompartmentDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent convertCompartmentDefinitionContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getParam()) - tgt.addParam(t.getValue()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.r4.model.StringType t : src.getParam()) - tgt.addParam(t.getValue()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - - public static org.hl7.fhir.r4.model.ConceptMap convertConceptMap(org.hl7.fhir.dstu2016may.model.ConceptMap src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ConceptMap tgt = new org.hl7.fhir.r4.model.ConceptMap(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent t : src.getContact()) - tgt.addContact(convertConceptMapContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - tgt.setSource(convertType(src.getSource())); - tgt.setTarget(convertType(src.getTarget())); - for (org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent t : src.getElement()) { - List ws = convertSourceElementComponent(t); - for (SourceElementComponentWrapper w : ws) - getGroup(tgt, w.source, w.target).addElement(w.comp); - } - return tgt; - } - - private static ConceptMapGroupComponent getGroup(ConceptMap map, String srcs, String tgts) { - for (ConceptMapGroupComponent grp : map.getGroup()) { - if (grp.getSource().equals(srcs) && grp.getTarget().equals(tgts)) - return grp; - } - ConceptMapGroupComponent grp = map.addGroup(); - grp.setSource(srcs); - grp.setTarget(tgts); - return grp; - } - - - public static org.hl7.fhir.dstu2016may.model.ConceptMap convertConceptMap(org.hl7.fhir.r4.model.ConceptMap src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ConceptMap tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertConceptMapContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - tgt.setSource(convertType(src.getSource())); - tgt.setTarget(convertType(src.getTarget())); - for (org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g : src.getGroup()) - for (org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent t : g.getElement()) - tgt.addElement(convertSourceElementComponent(t, g)); - return tgt; - } - - - public static org.hl7.fhir.r4.model.ContactDetail convertConceptMapContactComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent convertConceptMapContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - private static class SourceElementComponentWrapper { - public SourceElementComponentWrapper(SourceElementComponent comp, String source, String target) { - super(); - this.source = source; - this.target = target; - this.comp = comp; - } - private String source; - private String target; - private org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent comp; - - } - public static List convertSourceElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent src) throws FHIRException { - List res = new ArrayList(); - if (src == null || src.isEmpty()) - return res; - for (org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent t : src.getTarget()) { - org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - tgt.addTarget(convertTargetElementComponent(t)); - res.add(new SourceElementComponentWrapper(tgt, src.getSystem(), t.getSystem())); - } - return res; - } - - public static org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent src, org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent(); - copyElement(src, tgt); - if (g.hasSource()) - tgt.setSystem(g.getSource()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - for (org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent t : src.getTarget()) - tgt.addTarget(convertTargetElementComponent(t, g)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); - if (src.hasComments()) - tgt.setComment(src.getComments()); - for (org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) - tgt.addDependsOn(convertOtherElementComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent t : src.getProduct()) - tgt.addProduct(convertOtherElementComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent src, org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent(); - copyElement(src, tgt); - if (g.hasTarget()) - tgt.setSystem(g.getTarget()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); - if (src.hasComment()) - tgt.setComments(src.getComment()); - for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) - tgt.addDependsOn(convertOtherElementComponent(t)); - for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getProduct()) - tgt.addProduct(convertOtherElementComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUIVALENT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; - case EQUAL: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUAL; - case WIDER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.WIDER; - case SUBSUMES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SUBSUMES; - case NARROWER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NARROWER; - case SPECIALIZES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; - case INEXACT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.INEXACT; - case UNMATCHED: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.UNMATCHED; - case DISJOINT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.DISJOINT; - default: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NULL; - } - } - - public static org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUIVALENT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; - case EQUAL: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.EQUAL; - case WIDER: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.WIDER; - case SUBSUMES: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.SUBSUMES; - case NARROWER: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.NARROWER; - case SPECIALIZES: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; - case INEXACT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.INEXACT; - case UNMATCHED: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.UNMATCHED; - case DISJOINT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.DISJOINT; - default: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.NULL; - } - } - - public static org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getElement()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent(); - copyElement(src, tgt); - tgt.setElement(src.getProperty()); - tgt.setSystem(src.getSystem()); - tgt.setCode(src.getCode()); - return tgt; - } - - - public static org.hl7.fhir.r4.model.CapabilityStatement convertConformance(org.hl7.fhir.dstu2016may.model.Conformance src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement tgt = new org.hl7.fhir.r4.model.CapabilityStatement(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent t : src.getContact()) - tgt.addContact(convertConformanceContactComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - tgt.setKind(convertConformanceStatementKind(src.getKind())); - tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); - tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); - tgt.setFhirVersion(src.getFhirVersion()); - tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getFormat()) - tgt.addFormat(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent t : src.getRest()) - tgt.addRest(convertConformanceRestComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent t : src.getMessaging()) - tgt.addMessaging(convertConformanceMessagingComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent t : src.getDocument()) - tgt.addDocument(convertConformanceDocumentComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance convertConformance(org.hl7.fhir.r4.model.CapabilityStatement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance tgt = new org.hl7.fhir.dstu2016may.model.Conformance(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertConformanceContactComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - tgt.setKind(convertConformanceStatementKind(src.getKind())); - tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); - tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); - tgt.setFhirVersion(src.getFhirVersion()); - tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); - for (org.hl7.fhir.r4.model.CodeType t : src.getFormat()) - tgt.addFormat(t.getValue()); - for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) - tgt.addRest(convertConformanceRestComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) - tgt.addMessaging(convertConformanceMessagingComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) - tgt.addDocument(convertConformanceDocumentComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind convertConformanceStatementKind(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; - case CAPABILITY: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; - case REQUIREMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; - default: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind convertConformanceStatementKind(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.INSTANCE; - case CAPABILITY: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.CAPABILITY; - case REQUIREMENTS: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.REQUIREMENTS; - default: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.NULL; - } - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NO: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NO; - case EXTENSIONS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; - case ELEMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.ELEMENTS; - case BOTH: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.BOTH; - default: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NO: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.NO; - case EXTENSIONS: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.EXTENSIONS; - case ELEMENTS: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.ELEMENTS; - case BOTH: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.BOTH; - default: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.NULL; - } - } - - public static org.hl7.fhir.r4.model.ContactDetail convertConformanceContactComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent convertConformanceContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasReleaseDate()) - tgt.setReleaseDate(src.getReleaseDate()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasReleaseDate()) - tgt.setReleaseDate(src.getReleaseDate()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent(); - copyElement(src, tgt); - tgt.setDescription(src.getDescription()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent convertConformanceRestComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent(); - copyElement(src, tgt); - tgt.setMode(convertRestfulConformanceMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent t : src.getResource()) - tgt.addResource(convertConformanceRestResourceComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertSystemInteractionComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent t : src.getOperation()) - tgt.addOperation(convertConformanceRestOperationComponent(t)); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getCompartment()) - tgt.addCompartment(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent convertConformanceRestComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent(); - copyElement(src, tgt); - tgt.setMode(convertRestfulConformanceMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) - tgt.addResource(convertConformanceRestResourceComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertSystemInteractionComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) - tgt.addOperation(convertConformanceRestOperationComponent(t)); - for (org.hl7.fhir.r4.model.UriType t : src.getCompartment()) - tgt.addCompartment(t.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode convertRestfulConformanceMode(org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLIENT: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; - case SERVER: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.SERVER; - default: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode convertRestfulConformanceMode(org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLIENT: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.CLIENT; - case SERVER: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.SERVER; - default: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.NULL; - } - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); - copyElement(src, tgt); - if (src.hasCors()) - tgt.setCors(src.getCors()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getService()) - tgt.addService(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent t : src.getCertificate()) - tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent(); - copyElement(src, tgt); - if (src.hasCors()) - tgt.setCors(src.getCors()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getService()) - tgt.addService(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) - tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - for (org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertResourceInteractionComponent(t)); - tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); - if (src.hasReadHistory()) - tgt.setReadHistory(src.getReadHistory()); - if (src.hasUpdateCreate()) - tgt.setUpdateCreate(src.getUpdateCreate()); - if (src.hasConditionalCreate()) - tgt.setConditionalCreate(src.getConditionalCreate()); - if (src.hasConditionalUpdate()) - tgt.setConditionalUpdate(src.getConditionalUpdate()); - tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSearchInclude()) - tgt.addSearchInclude(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSearchRevInclude()) - tgt.addSearchRevInclude(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - for (org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertResourceInteractionComponent(t)); - tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); - if (src.hasReadHistory()) - tgt.setReadHistory(src.getReadHistory()); - if (src.hasUpdateCreate()) - tgt.setUpdateCreate(src.getUpdateCreate()); - if (src.hasConditionalCreate()) - tgt.setConditionalCreate(src.getConditionalCreate()); - if (src.hasConditionalUpdate()) - tgt.setConditionalUpdate(src.getConditionalUpdate()); - tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); - for (org.hl7.fhir.r4.model.StringType t : src.getSearchInclude()) - tgt.addSearchInclude(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getSearchRevInclude()) - tgt.addSearchRevInclude(t.getValue()); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOVERSION: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; - case VERSIONED: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; - case VERSIONEDUPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; - default: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOVERSION: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.NOVERSION; - case VERSIONED: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.VERSIONED; - case VERSIONEDUPDATE: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.VERSIONEDUPDATE; - default: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.NULL; - } - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; - case SINGLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; - case MULTIPLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; - default: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.NOTSUPPORTED; - case SINGLE: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.SINGLE; - case MULTIPLE: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.MULTIPLE; - default: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.NULL; - } - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertTypeRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertTypeRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case READ: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.READ; - case VREAD: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.VREAD; - case UPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; - case DELETE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.DELETE; - case HISTORYINSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; - case HISTORYTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; - case CREATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.CREATE; - case SEARCHTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; - default: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case READ: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.READ; - case VREAD: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.VREAD; - case UPDATE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.UPDATE; - case DELETE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.DELETE; - case HISTORYINSTANCE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.HISTORYINSTANCE; - case HISTORYTYPE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.HISTORYTYPE; - case CREATE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.CREATE; - case SEARCHTYPE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.SEARCHTYPE; - default: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.NULL; - } - } - - public static org.hl7.fhir.r4.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NUMBER: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NUMBER; - case DATE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.DATE; - case STRING: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.STRING; - case TOKEN: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.TOKEN; - case REFERENCE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.REFERENCE; - case COMPOSITE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.COMPOSITE; - case QUANTITY: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.QUANTITY; - case URI: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.URI; - default: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NULL; - } - } - - public static org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.r4.model.Enumerations.SearchParamType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NUMBER: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.NUMBER; - case DATE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.DATE; - case STRING: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.STRING; - case TOKEN: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.TOKEN; - case REFERENCE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.REFERENCE; - case COMPOSITE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.COMPOSITE; - case QUANTITY: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.QUANTITY; - case URI: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.URI; - default: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.NULL; - } - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - tgt.setType(convertSearchParamType(src.getType())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - tgt.setType(convertSearchParamType(src.getType())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertSystemRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent(); - copyElement(src, tgt); - tgt.setCode(convertSystemRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TRANSACTION: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; - case SEARCHSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; - case HISTORYSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; - default: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TRANSACTION: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.TRANSACTION; - case SEARCHSYSTEM: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.SEARCHSYSTEM; - case HISTORYSYSTEM: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.HISTORYSYSTEM; - default: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.NULL; - } - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent t : src.getEndpoint()) - tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); - if (src.hasReliableCache()) - tgt.setReliableCache(src.getReliableCache()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent t : src.getEvent()) - tgt.addEvent(convertConformanceMessagingEventComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) - tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); - if (src.hasReliableCache()) - tgt.setReliableCache(src.getReliableCache()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) - tgt.addEvent(convertConformanceMessagingEventComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); - copyElement(src, tgt); - tgt.setProtocol(convertCoding(src.getProtocol())); - tgt.setAddress(src.getAddress()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent(); - copyElement(src, tgt); - tgt.setProtocol(convertCoding(src.getProtocol())); - tgt.setAddress(src.getAddress()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); - copyElement(src, tgt); - tgt.setCode(convertCoding(src.getCode())); - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - tgt.setMode(convertConformanceEventMode(src.getMode())); - tgt.setFocus(src.getFocus()); - tgt.setRequest(convertReference(src.getRequest())); - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent(); - copyElement(src, tgt); - tgt.setCode(convertCoding(src.getCode())); - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - tgt.setMode(convertConformanceEventMode(src.getMode())); - tgt.setFocus(src.getFocus()); - tgt.setRequest(convertReference(src.getRequest())); - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.NULL; - } - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode convertConformanceEventMode(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SENDER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.SENDER; - case RECEIVER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.RECEIVER; - default: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode convertConformanceEventMode(org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SENDER: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.SENDER; - case RECEIVER: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.RECEIVER; - default: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.NULL; - } - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent(); - copyElement(src, tgt); - tgt.setMode(convertDocumentMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent(); - copyElement(src, tgt); - tgt.setMode(convertDocumentMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRODUCER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.PRODUCER; - case CONSUMER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.CONSUMER; - default: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode convertDocumentMode(org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRODUCER: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.PRODUCER; - case CONSUMER: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.CONSUMER; - default: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.NULL; - } - } - - - public static org.hl7.fhir.r4.model.StructureDefinition convertDataElement(org.hl7.fhir.dstu2016may.model.DataElement src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent t : src.getContact()) - tgt.addContact(convertDataElementContactComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); -// tgt.setStringency(convertDataElementStringency(src.getStringency())); - for (org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent t : src.getMapping()) - tgt.addMapping(convertDataElementMappingComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) - tgt.getSnapshot().addElement(convertElementDefinition(t)); - tgt.setKind(StructureDefinitionKind.LOGICAL); - tgt.setAbstract(false); - tgt.setType(tgt.getName()); - tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/Element"); - tgt.setDerivation(org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION); - return tgt; - } - -// public static org.hl7.fhir.dstu2016may.model.DataElement convertDataElement(org.hl7.fhir.r4.model.DataElement src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu2016may.model.DataElement tgt = new org.hl7.fhir.dstu2016may.model.DataElement(); -// copyDomainResource(src, tgt); -// if (src.hasUrl()) -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) -// tgt.addIdentifier(convertIdentifier(t)); -// if (src.hasVersion()) -// tgt.setVersion(src.getVersion()); -// tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); -// if (src.hasExperimental()) -// tgt.setExperimental(src.getExperimental()); -// if (src.hasPublisher()) -// tgt.setPublisher(src.getPublisher()); -// if (src.hasDate()) -// tgt.setDate(src.getDate()); -// if (src.hasName()) -// tgt.setName(src.getName()); -// for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) -// tgt.addContact(convertDataElementContactComponent(t)); -// for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) -// if (t.hasValueCodeableConcept()) -// tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) -// tgt.addUseContext(convertCodeableConcept(t)); -// if (src.hasCopyright()) -// tgt.setCopyright(src.getCopyright()); -// tgt.setStringency(convertDataElementStringency(src.getStringency())); -// for (org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent t : src.getMapping()) -// tgt.addMapping(convertDataElementMappingComponent(t)); -// for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) -// tgt.addElement(convertElementDefinition(t)); -// return tgt; -// } -// -// private static org.hl7.fhir.r4.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case COMPARABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.COMPARABLE; -// case FULLYSPECIFIED: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FULLYSPECIFIED; -// case EQUIVALENT: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.EQUIVALENT; -// case CONVERTABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.CONVERTABLE; -// case SCALEABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.SCALEABLE; -// case FLEXIBLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FLEXIBLE; -// default: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.NULL; -// } -// } -// -// private static org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.r4.model.DataElement.DataElementStringency src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case COMPARABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.COMPARABLE; -// case FULLYSPECIFIED: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.FULLYSPECIFIED; -// case EQUIVALENT: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.EQUIVALENT; -// case CONVERTABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.CONVERTABLE; -// case SCALEABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.SCALEABLE; -// case FLEXIBLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.FLEXIBLE; -// default: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.NULL; -// } -// } - - public static org.hl7.fhir.r4.model.ContactDetail convertDataElementContactComponent(org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent convertDataElementContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent tgt = new org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - -// public static org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent src) throws FHIRException { -// if (src == null || src.isEmpty()) -// return null; -// org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent(); -// copyElement(src, tgt); -// tgt.setIdentity(src.getIdentity()); -// if (src.hasUri()) -// tgt.setUri(src.getUri()); -// if (src.hasName()) -// tgt.setName(src.getName()); -// if (src.hasComment()) -// tgt.setComment(src.getComment()); -// return tgt; -// } - - public static org.hl7.fhir.r4.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.dstu2016may.model.ImplementationGuide src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide tgt = new org.hl7.fhir.r4.model.ImplementationGuide(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent t : src.getContact()) - tgt.addContact(convertImplementationGuideContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) - tgt.addDependency(convertImplementationGuideDependencyComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) - tgt.addPackage(convertImplementationGuidePackageComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) - tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getBinary()) - tgt.addBinary(t.getValue()); - tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.r4.model.ImplementationGuide src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertImplementationGuideContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) - tgt.addDependency(convertImplementationGuideDependencyComponent(t)); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) - tgt.addPackage(convertImplementationGuidePackageComponent(t)); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) - tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); - for (org.hl7.fhir.r4.model.UriType t : src.getBinary()) - tgt.addBinary(t.getValue()); - tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ContactDetail convertImplementationGuideContactComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent convertImplementationGuideContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent(); - copyElement(src, tgt); - tgt.setType(convertGuideDependencyType(src.getType())); - tgt.setUri(src.getUri()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent(); - copyElement(src, tgt); - tgt.setType(convertGuideDependencyType(src.getType())); - tgt.setUri(src.getUri()); - return tgt; - } - - private static org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REFERENCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.REFERENCE; - case INCLUSION: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.INCLUSION; - default: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REFERENCE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.REFERENCE; - case INCLUSION: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.INCLUSION; - default: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.NULL; - } - } - - public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) - tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) - tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); - copyElement(src, tgt); - tgt.setExample(src.getExample()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAcronym()) - tgt.setAcronym(src.getAcronym()); - tgt.setSource(convertType(src.getSource())); - if (src.hasExampleFor()) - tgt.setExampleFor(convertReference(src.getExampleFor())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); - copyElement(src, tgt); - tgt.setExample(src.getExample()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAcronym()) - tgt.setAcronym(src.getAcronym()); - tgt.setSource(convertType(src.getSource())); - if (src.hasExampleFor()) - tgt.setExampleFor(convertReference(src.getExampleFor())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent(); - copyElement(src, tgt); - tgt.setType(src.getType()); - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent(); - copyElement(src, tgt); - tgt.setSource(src.getSource()); - tgt.setTitle(src.getName()); - tgt.setKind(convertGuidePageKind(src.getKind())); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getType()) - tgt.addType(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getPackage()) - tgt.addPackage(t.getValue()); - if (src.hasFormat()) - tgt.setFormat(src.getFormat()); - for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) - tgt.addPage(convertImplementationGuidePageComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent(); - copyElement(src, tgt); - tgt.setSource(src.getSource()); - tgt.setName(src.getTitle()); - tgt.setKind(convertGuidePageKind(src.getKind())); - for (org.hl7.fhir.r4.model.CodeType t : src.getType()) - tgt.addType(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getPackage()) - tgt.addPackage(t.getValue()); - if (src.hasFormat()) - tgt.setFormat(src.getFormat()); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) - tgt.addPage(convertImplementationGuidePageComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PAGE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.PAGE; - case EXAMPLE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.EXAMPLE; - case LIST: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.LIST; - case INCLUDE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.INCLUDE; - case DIRECTORY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DIRECTORY; - case DICTIONARY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DICTIONARY; - case TOC: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.TOC; - case RESOURCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.RESOURCE; - default: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PAGE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.PAGE; - case EXAMPLE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.EXAMPLE; - case LIST: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.LIST; - case INCLUDE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.INCLUDE; - case DIRECTORY: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.DIRECTORY; - case DICTIONARY: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.DICTIONARY; - case TOC: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.TOC; - case RESOURCE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.RESOURCE; - default: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.NULL; - } - } - - public static org.hl7.fhir.r4.model.NamingSystem convertNamingSystem(org.hl7.fhir.dstu2016may.model.NamingSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.NamingSystem tgt = new org.hl7.fhir.r4.model.NamingSystem(); - copyDomainResource(src, tgt); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertNamingSystemType(src.getKind())); - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent t : src.getContact()) - tgt.addContact(convertNamingSystemContactComponent(t)); - if (src.hasResponsible()) - tgt.setResponsible(src.getResponsible()); - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - for (org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) - tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); - tgt.setReplacedBy(convertReference(src.getReplacedBy())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.NamingSystem convertNamingSystem(org.hl7.fhir.r4.model.NamingSystem src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.NamingSystem tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem(); - copyDomainResource(src, tgt); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertNamingSystemType(src.getKind())); - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertNamingSystemContactComponent(t)); - if (src.hasResponsible()) - tgt.setResponsible(src.getResponsible()); - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - for (org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) - tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); - tgt.setReplacedBy(convertReference(src.getReplacedBy())); - return tgt; - } - - private static org.hl7.fhir.r4.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODESYSTEM: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.CODESYSTEM; - case IDENTIFIER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.IDENTIFIER; - case ROOT: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.ROOT; - default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODESYSTEM: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.CODESYSTEM; - case IDENTIFIER: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.IDENTIFIER; - case ROOT: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.ROOT; - default: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.NULL; - } - } - - public static org.hl7.fhir.r4.model.ContactDetail convertNamingSystemContactComponent(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent convertNamingSystemContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent(); - copyElement(src, tgt); - tgt.setType(convertNamingSystemIdentifierType(src.getType())); - tgt.setValue(src.getValue()); - if (src.hasPreferred()) - tgt.setPreferred(src.getPreferred()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent(); - copyElement(src, tgt); - tgt.setType(convertNamingSystemIdentifierType(src.getType())); - tgt.setValue(src.getValue()); - if (src.hasPreferred()) - tgt.setPreferred(src.getPreferred()); - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OID; - case UUID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.UUID; - case URI: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.URI; - case OTHER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OTHER; - default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OID: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.OID; - case UUID: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.UUID; - case URI: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.URI; - case OTHER: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.OTHER; - default: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.NULL; - } - } - - public static org.hl7.fhir.r4.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.dstu2016may.model.OperationDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.OperationDefinition tgt = new org.hl7.fhir.r4.model.OperationDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertOperationKind(src.getKind())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent t : src.getContact()) - tgt.addContact(convertOperationDefinitionContactComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasIdempotent()) - tgt.setIdempotent(src.getIdempotent()); - tgt.setCode(src.getCode()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - tgt.setBase(convertReference(src.getBase())); - tgt.setSystem(src.getSystem()); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getType()) - tgt.addResource(t.getValue()); - tgt.setType(tgt.hasResource()); - tgt.setInstance(src.getInstance()); - for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) - tgt.addParameter(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.r4.model.OperationDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationDefinition tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setKind(convertOperationKind(src.getKind())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertOperationDefinitionContactComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasIdempotent()) - tgt.setIdempotent(src.getIdempotent()); - tgt.setCode(src.getCode()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - tgt.setBase(convertReference(src.getBase())); - tgt.setSystem(src.getSystem()); - if (src.getType()) - for (org.hl7.fhir.r4.model.CodeType t : src.getResource()) - tgt.addType(t.getValue()); - tgt.setInstance(src.getInstance()); - for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) - tgt.addParameter(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OPERATION: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.OPERATION; - case QUERY: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.QUERY; - default: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.r4.model.OperationDefinition.OperationKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OPERATION: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.OPERATION; - case QUERY: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.QUERY; - default: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.NULL; - } - } - - public static org.hl7.fhir.r4.model.ContactDetail convertOperationDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent convertOperationDefinitionContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setUse(convertOperationParameterUse(src.getUse())); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasType()) - tgt.setType(src.getType()); - tgt.setSearchType(convertSearchParamType(src.getSearchType())); - tgt.setProfile(convertReference(src.getProfile())); - tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); - for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) - tgt.addPart(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setUse(convertOperationParameterUse(src.getUse())); - tgt.setMin(src.getMin()); - tgt.setMax(src.getMax()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasType()) - tgt.setType(src.getType()); - tgt.setSearchType(convertSearchParamType(src.getSearchType())); - tgt.setProfile(convertReference(src.getProfile())); - tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); - for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) - tgt.addPart(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.IN; - case OUT: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.OUT; - default: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.IN; - case OUT: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.OUT; - default: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.NULL; - } - } - - public static org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); - copyElement(src, tgt); - tgt.setStrength(convertBindingStrength(src.getStrength())); - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public static org.hl7.fhir.r4.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.dstu2016may.model.OperationOutcome src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.OperationOutcome tgt = new org.hl7.fhir.r4.model.OperationOutcome(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) - tgt.addIssue(convertOperationOutcomeIssueComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.r4.model.OperationOutcome src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationOutcome tgt = new org.hl7.fhir.dstu2016may.model.OperationOutcome(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) - tgt.addIssue(convertOperationOutcomeIssueComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent(); - copyElement(src, tgt); - tgt.setSeverity(convertIssueSeverity(src.getSeverity())); - tgt.setCode(convertIssueType(src.getCode())); - tgt.setDetails(convertCodeableConcept(src.getDetails())); - if (src.hasDiagnostics()) - tgt.setDiagnostics(src.getDiagnostics()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getLocation()) - tgt.addLocation(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getExpression()) - tgt.addExpression(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent(); - copyElement(src, tgt); - tgt.setSeverity(convertIssueSeverity(src.getSeverity())); - tgt.setCode(convertIssueType(src.getCode())); - tgt.setDetails(convertCodeableConcept(src.getDetails())); - if (src.hasDiagnostics()) - tgt.setDiagnostics(src.getDiagnostics()); - for (org.hl7.fhir.r4.model.StringType t : src.getLocation()) - tgt.addLocation(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getExpression()) - tgt.addExpression(t.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FATAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.FATAL; - case ERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.ERROR; - case WARNING: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.WARNING; - case INFORMATION: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.INFORMATION; - default: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FATAL: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.FATAL; - case ERROR: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.ERROR; - case WARNING: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.WARNING; - case INFORMATION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.INFORMATION; - default: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.NULL; - } - } - - private static org.hl7.fhir.r4.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVALID; - case STRUCTURE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.STRUCTURE; - case REQUIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.REQUIRED; - case VALUE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.VALUE; - case INVARIANT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVARIANT; - case SECURITY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SECURITY; - case LOGIN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOGIN; - case UNKNOWN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.UNKNOWN; - case EXPIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXPIRED; - case FORBIDDEN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.FORBIDDEN; - case SUPPRESSED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SUPPRESSED; - case PROCESSING: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.PROCESSING; - case NOTSUPPORTED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTSUPPORTED; - case DUPLICATE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.DUPLICATE; - case NOTFOUND: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTFOUND; - case TOOLONG: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOLONG; - case CODEINVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CODEINVALID; - case EXTENSION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXTENSION; - case TOOCOSTLY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOCOSTLY; - case BUSINESSRULE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.BUSINESSRULE; - case CONFLICT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CONFLICT; - case INCOMPLETE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INCOMPLETE; - case TRANSIENT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TRANSIENT; - case LOCKERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOCKERROR; - case NOSTORE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOSTORE; - case EXCEPTION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXCEPTION; - case TIMEOUT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TIMEOUT; - case THROTTLED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.THROTTLED; - case INFORMATIONAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INFORMATIONAL; - default: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.r4.model.OperationOutcome.IssueType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INVALID: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INVALID; - case STRUCTURE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.STRUCTURE; - case REQUIRED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.REQUIRED; - case VALUE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.VALUE; - case INVARIANT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INVARIANT; - case SECURITY: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.SECURITY; - case LOGIN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.LOGIN; - case UNKNOWN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.UNKNOWN; - case EXPIRED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXPIRED; - case FORBIDDEN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.FORBIDDEN; - case SUPPRESSED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.SUPPRESSED; - case PROCESSING: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.PROCESSING; - case NOTSUPPORTED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOTSUPPORTED; - case DUPLICATE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.DUPLICATE; - case NOTFOUND: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOTFOUND; - case TOOLONG: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TOOLONG; - case CODEINVALID: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.CODEINVALID; - case EXTENSION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXTENSION; - case TOOCOSTLY: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TOOCOSTLY; - case BUSINESSRULE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.BUSINESSRULE; - case CONFLICT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.CONFLICT; - case INCOMPLETE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INCOMPLETE; - case TRANSIENT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TRANSIENT; - case LOCKERROR: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.LOCKERROR; - case NOSTORE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOSTORE; - case EXCEPTION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXCEPTION; - case TIMEOUT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TIMEOUT; - case THROTTLED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.THROTTLED; - case INFORMATIONAL: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INFORMATIONAL; - default: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NULL; - } - } - - - public static org.hl7.fhir.r4.model.Questionnaire convertQuestionnaire(org.hl7.fhir.dstu2016may.model.Questionnaire src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Questionnaire tgt = new org.hl7.fhir.r4.model.Questionnaire(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addContact(convertQuestionnaireContactComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getConcept()) - tgt.addCode(convertCoding(t)); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getSubjectType()) - tgt.addSubjectType(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Questionnaire convertQuestionnaire(org.hl7.fhir.r4.model.Questionnaire src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Questionnaire tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (ContactDetail t : src.getContact()) - for (org.hl7.fhir.r4.model.ContactPoint t1 : t.getTelecom()) - tgt.addTelecom(convertContactPoint(t1)); - for (UsageContext t : src.getUseContext()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - for (org.hl7.fhir.r4.model.Coding t : src.getCode()) - tgt.addConcept(convertCoding(t)); - for (org.hl7.fhir.r4.model.CodeType t : src.getSubjectType()) - tgt.addSubjectType(t.getValue()); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ContactDetail convertQuestionnaireContactComponent(org.hl7.fhir.dstu2016may.model.ContactPoint src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - tgt.addTelecom(convertContactPoint(src)); - return tgt; - } - - - private static org.hl7.fhir.r4.model.Enumerations.PublicationStatus convertQuestionnaireStatus(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.DRAFT; - case PUBLISHED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.RETIRED; - default: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus convertQuestionnaireStatus(org.hl7.fhir.r4.model.Enumerations.PublicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.PUBLISHED; - case RETIRED: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.RETIRED; - default: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.NULL; - } - } - - public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getConcept()) - tgt.addCode(convertCoding(t)); - if (src.hasPrefix()) - tgt.setPrefix(src.getPrefix()); - if (src.hasText()) - tgt.setText(src.getText()); - tgt.setType(convertQuestionnaireItemType(src.getType())); - for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) - tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasRepeats()) - tgt.setRepeats(src.getRepeats()); - if (src.hasReadOnly()) - tgt.setReadOnly(src.getReadOnly()); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - tgt.setOptions(convertReference(src.getOptions())); - for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) - tgt.addOption(convertQuestionnaireItemOptionComponent(t)); - tgt.setInitial(convertType(src.getInitial())); - for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - for (org.hl7.fhir.r4.model.Coding t : src.getCode()) - tgt.addConcept(convertCoding(t)); - if (src.hasPrefix()) - tgt.setPrefix(src.getPrefix()); - if (src.hasText()) - tgt.setText(src.getText()); - tgt.setType(convertQuestionnaireItemType(src.getType())); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) - tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasRepeats()) - tgt.setRepeats(src.getRepeats()); - if (src.hasReadOnly()) - tgt.setReadOnly(src.getReadOnly()); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - tgt.setOptions(convertReference(src.getOptions())); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) - tgt.addOption(convertQuestionnaireItemOptionComponent(t)); - tgt.setInitial(convertType(src.getInitial())); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GROUP: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.GROUP; - case DISPLAY: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DISPLAY; - case QUESTION: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.QUESTION; - case BOOLEAN: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.BOOLEAN; - case DECIMAL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DECIMAL; - case INTEGER: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.INTEGER; - case DATE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATE; - case DATETIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATETIME; - case INSTANT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATETIME; - case TIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TIME; - case STRING: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.STRING; - case TEXT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TEXT; - case URL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.URL; - case CHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.CHOICE; - case OPENCHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; - case ATTACHMENT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; - case REFERENCE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.REFERENCE; - case QUANTITY: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.QUANTITY; - default: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GROUP: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.GROUP; - case DISPLAY: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DISPLAY; - case QUESTION: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.QUESTION; - case BOOLEAN: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.BOOLEAN; - case DECIMAL: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DECIMAL; - case INTEGER: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.INTEGER; - case DATE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DATE; - case DATETIME: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DATETIME; - case TIME: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.TIME; - case STRING: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.STRING; - case TEXT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.TEXT; - case URL: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.URL; - case CHOICE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.CHOICE; - case OPENCHOICE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; - case ATTACHMENT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; - case REFERENCE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.REFERENCE; - case QUANTITY: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.QUANTITY; - default: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.NULL; - } - } - - public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); - copyElement(src, tgt); - tgt.setQuestion(src.getQuestion()); - if (src.hasAnswered()) - tgt.setHasAnswer(src.getAnswered()); - tgt.setAnswer(convertType(src.getAnswer())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); - copyElement(src, tgt); - tgt.setQuestion(src.getQuestion()); - if (src.hasHasAnswer()) - tgt.setAnswered(src.getHasAnswer()); - tgt.setAnswer(convertType(src.getAnswer())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.QuestionnaireResponse tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); - tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setContext(convertReference(src.getEncounter())); - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasAuthored()) - tgt.setAuthored(src.getAuthored()); - tgt.setSource(convertReference(src.getSource())); - for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.r4.model.QuestionnaireResponse src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.QuestionnaireResponse tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse(); - copyDomainResource(src, tgt); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); - tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); - tgt.setSubject(convertReference(src.getSubject())); - tgt.setEncounter(convertReference(src.getContext())); - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasAuthored()) - tgt.setAuthored(src.getAuthored()); - tgt.setSource(convertReference(src.getSource())); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; - case AMENDED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; - default: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; - case AMENDED: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; - default: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; - } - } - - public static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - if (src.hasText()) - tgt.setText(src.getText()); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) - tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); - for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - if (src.hasText()) - tgt.setText(src.getText()); - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) - tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); - copyElement(src, tgt); - tgt.setValue(convertType(src.getValue())); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.SearchParameter convertSearchParameter(org.hl7.fhir.dstu2016may.model.SearchParameter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.SearchParameter tgt = new org.hl7.fhir.r4.model.SearchParameter(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent t : src.getContact()) - tgt.addContact(convertSearchParameterContactComponent(t)); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - tgt.setCode(src.getCode()); - tgt.addBase(src.getBase()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDescription(src.getDescription()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasXpath()) - tgt.setXpath(src.getXpath()); - tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); - for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getTarget()) - tgt.addTarget(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.SearchParameter convertSearchParameter(org.hl7.fhir.r4.model.SearchParameter src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.SearchParameter tgt = new org.hl7.fhir.dstu2016may.model.SearchParameter(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertSearchParameterContactComponent(t)); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - tgt.setCode(src.getCode()); - for (org.hl7.fhir.r4.model.CodeType t : src.getBase()) - tgt.setBase(t.asStringValue()); - tgt.setType(convertSearchParamType(src.getType())); - tgt.setDescription(src.getDescription()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasXpath()) - tgt.setXpath(src.getXpath()); - tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); - for (org.hl7.fhir.r4.model.CodeType t : src.getTarget()) - tgt.addTarget(t.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NORMAL: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NORMAL; - case PHONETIC: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.PHONETIC; - case NEARBY: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NEARBY; - case DISTANCE: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.DISTANCE; - case OTHER: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.OTHER; - default: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.r4.model.SearchParameter.XPathUsageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NORMAL: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NORMAL; - case PHONETIC: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.PHONETIC; - case NEARBY: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NEARBY; - case DISTANCE: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.DISTANCE; - case OTHER: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.OTHER; - default: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NULL; - } - } - - public static org.hl7.fhir.r4.model.ContactDetail convertSearchParameterContactComponent(org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent convertSearchParameterContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent tgt = new org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.dstu2016may.model.StructureDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - if (src.hasDisplay()) - tgt.setTitle(src.getDisplay()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent t : src.getContact()) - tgt.addContact(convertStructureDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCode()) - tgt.addKeyword(convertCoding(t)); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertStructureDefinitionMappingComponent(t)); - tgt.setKind(convertStructureDefinitionKind(src.getKind())); - tgt.setAbstract(src.getAbstract()); - tgt.setContextType(convertExtensionContext(src.getContextType())); - for (org.hl7.fhir.dstu2016may.model.StringType t : src.getContext()) - tgt.addContext(t.getValue()); - if (src.getDerivation() == org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.CONSTRAINT) - tgt.setType(src.getBaseType()); - else - tgt.setType(src.getId()); - if (src.hasBaseDefinition()) - tgt.setBaseDefinition(src.getBaseDefinition()); - tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); - if (src.hasSnapshot()) { - tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); - tgt.getSnapshot().getElementFirstRep().getType().clear(); - } - if (src.hasDifferential()) { - tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); - tgt.getDifferential().getElementFirstRep().getType().clear(); - } - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.r4.model.StructureDefinition src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.StructureDefinition tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setDisplay(src.getTitle()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertStructureDefinitionContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.Coding t : src.getKeyword()) - tgt.addCode(convertCoding(t)); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertStructureDefinitionMappingComponent(t)); - tgt.setKind(convertStructureDefinitionKind(src.getKind())); - tgt.setAbstract(src.getAbstract()); - tgt.setContextType(convertExtensionContext(src.getContextType())); - for (org.hl7.fhir.r4.model.StringType t : src.getContext()) - tgt.addContext(t.getValue()); - if (src.hasBaseDefinition()) - tgt.setBaseDefinition(src.getBaseDefinition()); - if (src.hasType() && src.getDerivation() == org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.CONSTRAINT) - tgt.setBaseType(src.getType()); - tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); - if (src.hasSnapshot()) - tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); - tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); - return tgt; - } - - private static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DATATYPE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; - case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.RESOURCE; - case LOGICAL: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.LOGICAL; - default: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRIMITIVETYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.DATATYPE; - case COMPLEXTYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.DATATYPE; - case RESOURCE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.RESOURCE; - case LOGICAL: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.LOGICAL; - default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.NULL; - } - } - - private static org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.RESOURCE; - case DATATYPE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.DATATYPE; - case EXTENSION: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.EXTENSION; - default: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESOURCE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.RESOURCE; - case DATATYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.DATATYPE; - case EXTENSION: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.EXTENSION; - default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.NULL; - } - } - - private static org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SPECIALIZATION: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; - case CONSTRAINT: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; - default: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SPECIALIZATION: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; - case CONSTRAINT: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; - default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.NULL; - } - } - - public static org.hl7.fhir.r4.model.ContactDetail convertStructureDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent convertStructureDefinitionContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComments()) - tgt.setComment(src.getComments()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - tgt.setIdentity(src.getIdentity()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComment()) - tgt.setComments(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript convertTestScript(org.hl7.fhir.dstu2016may.model.TestScript src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript tgt = new org.hl7.fhir.r4.model.TestScript(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent t : src.getContact()) - tgt.addContact(convertTestScriptContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) - tgt.addOrigin(convertTestScriptOriginComponent(t)); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) - tgt.addDestination(convertTestScriptDestinationComponent(t)); - tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) - tgt.addFixture(convertTestScriptFixtureComponent(t)); - for (org.hl7.fhir.dstu2016may.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent t : src.getVariable()) - tgt.addVariable(convertTestScriptVariableComponent(t)); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent t : src.getRule()) - tgt.addRule(convertTestScriptRuleComponent(t)); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) - tgt.addRuleset(convertTestScriptRulesetComponent(t)); - tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent t : src.getTest()) - tgt.addTest(convertTestScriptTestComponent(t)); - tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript convertTestScript(org.hl7.fhir.r4.model.TestScript src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript tgt = new org.hl7.fhir.dstu2016may.model.TestScript(); - copyDomainResource(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertTestScriptContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) - tgt.addOrigin(convertTestScriptOriginComponent(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) - tgt.addDestination(convertTestScriptDestinationComponent(t)); - tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); - for (org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) - tgt.addFixture(convertTestScriptFixtureComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent t : src.getVariable()) - tgt.addVariable(convertTestScriptVariableComponent(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent t : src.getRule()) - tgt.addRule(convertTestScriptRuleComponent(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) - tgt.addRuleset(convertTestScriptRulesetComponent(t)); - tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); - for (org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent t : src.getTest()) - tgt.addTest(convertTestScriptTestComponent(t)); - tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ContactDetail convertTestScriptContactComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent convertTestScriptContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent(); - copyElement(src, tgt); - tgt.setIndex(src.getIndex()); - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent(); - copyElement(src, tgt); - tgt.setIndex(src.getIndex()); - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent(); - copyElement(src, tgt); - tgt.setIndex(src.getIndex()); - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent(); - copyElement(src, tgt); - tgt.setIndex(src.getIndex()); - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) - tgt.addLink(convertTestScriptMetadataLinkComponent(t)); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) - tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) - tgt.addLink(convertTestScriptMetadataLinkComponent(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) - tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent(); - copyElement(src, tgt); - tgt.setUrl(src.getUrl()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent(); - copyElement(src, tgt); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasValidated()) - tgt.setValidated(src.getValidated()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.IntegerType t : src.getOrigin()) - tgt.addOrigin(t.getValue()); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getLink()) - tgt.addLink(t.getValue()); - tgt.setCapabilities(convertReference(src.getConformance())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent(); - copyElement(src, tgt); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasValidated()) - tgt.setValidated(src.getValidated()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.IntegerType t : src.getOrigin()) - tgt.addOrigin(t.getValue()); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - for (org.hl7.fhir.r4.model.UriType t : src.getLink()) - tgt.addLink(t.getValue()); - tgt.setConformance(convertReference(src.getCapabilities())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent(); - copyElement(src, tgt); - if (src.hasAutocreate()) - tgt.setAutocreate(src.getAutocreate()); - if (src.hasAutodelete()) - tgt.setAutodelete(src.getAutodelete()); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent(); - copyElement(src, tgt); - if (src.hasAutocreate()) - tgt.setAutocreate(src.getAutocreate()); - if (src.hasAutodelete()) - tgt.setAutodelete(src.getAutodelete()); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDefaultValue()) - tgt.setDefaultValue(src.getDefaultValue()); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasDefaultValue()) - tgt.setDefaultValue(src.getDefaultValue()); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent(); - copyElement(src, tgt); - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent t : src.getParam()) - tgt.addParam(convertTestScriptRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent(); - copyElement(src, tgt); - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.r4.model.TestScript.RuleParamComponent t : src.getParam()) - tgt.addParam(convertTestScriptRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.RuleParamComponent convertTestScriptRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.RuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.RuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent convertTestScriptRuleParamComponent(org.hl7.fhir.r4.model.TestScript.RuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent(); - copyElement(src, tgt); - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent t : src.getRule()) - tgt.addRule(convertTestScriptRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent(); - copyElement(src, tgt); - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent t : src.getRule()) - tgt.addRule(convertTestScriptRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent convertTestScriptRulesetRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertTestScriptRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent convertTestScriptRulesetRuleComponent(org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertTestScriptRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent convertTestScriptRulesetRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent convertTestScriptRulesetRuleParamComponent(org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.SetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.r4.model.TestScript.SetupActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent(); - copyElement(src, tgt); - tgt.setType(convertCoding(src.getType())); - if (src.hasResource()) - tgt.setResource(src.getResource()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setAccept(convertContentType(src.getAccept())); - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - if (src.hasEncodeRequestUrl()) - tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); - if (src.hasOrigin()) - tgt.setOrigin(src.getOrigin()); - if (src.hasParams()) - tgt.setParams(src.getParams()); - for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) - tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); - if (src.hasResponseId()) - tgt.setResponseId(src.getResponseId()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasTargetId()) - tgt.setTargetId(src.getTargetId()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent(); - copyElement(src, tgt); - if (src.hasResource()) - tgt.setResource(src.getResource()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setAccept(convertContentType(src.getAccept())); - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - if (src.hasEncodeRequestUrl()) - tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); - if (src.hasOrigin()) - tgt.setOrigin(src.getOrigin()); - if (src.hasParams()) - tgt.setParams(src.getParams()); - for (org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) - tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); - if (src.hasResponseId()) - tgt.setResponseId(src.getResponseId()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasTargetId()) - tgt.setTargetId(src.getTargetId()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - private static org.hl7.fhir.r4.model.TestScript.ContentType convertContentType(org.hl7.fhir.dstu2016may.model.TestScript.ContentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XML: return org.hl7.fhir.r4.model.TestScript.ContentType.XML; - case JSON: return org.hl7.fhir.r4.model.TestScript.ContentType.JSON; - default: return org.hl7.fhir.r4.model.TestScript.ContentType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.TestScript.ContentType convertContentType(org.hl7.fhir.r4.model.TestScript.ContentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XML: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.XML; - case JSON: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.JSON; - default: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.NULL; - } - } - - public static org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent(); - copyElement(src, tgt); - tgt.setField(src.getField()); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent(); - copyElement(src, tgt); - tgt.setField(src.getField()); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setDirection(convertAssertionDirectionType(src.getDirection())); - if (src.hasCompareToSourceId()) - tgt.setCompareToSourceId(src.getCompareToSourceId()); - if (src.hasCompareToSourcePath()) - tgt.setCompareToSourcePath(src.getCompareToSourcePath()); - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasMinimumId()) - tgt.setMinimumId(src.getMinimumId()); - if (src.hasNavigationLinks()) - tgt.setNavigationLinks(src.getNavigationLinks()); - tgt.setOperator(convertAssertionOperatorType(src.getOperator())); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasResource()) - tgt.setResource(src.getResource()); - tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); - if (src.hasResponseCode()) - tgt.setResponseCode(src.getResponseCode()); - tgt.setRule(convertSetupActionAssertRuleComponent(src.getRule())); - tgt.setRuleset(convertSetupActionAssertRulesetComponent(src.getRuleset())); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasValidateProfileId()) - tgt.setValidateProfileId(src.getValidateProfileId()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasWarningOnly()) - tgt.setWarningOnly(src.getWarningOnly()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - tgt.setDirection(convertAssertionDirectionType(src.getDirection())); - if (src.hasCompareToSourceId()) - tgt.setCompareToSourceId(src.getCompareToSourceId()); - if (src.hasCompareToSourcePath()) - tgt.setCompareToSourcePath(src.getCompareToSourcePath()); - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasMinimumId()) - tgt.setMinimumId(src.getMinimumId()); - if (src.hasNavigationLinks()) - tgt.setNavigationLinks(src.getNavigationLinks()); - tgt.setOperator(convertAssertionOperatorType(src.getOperator())); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasResource()) - tgt.setResource(src.getResource()); - tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); - if (src.hasResponseCode()) - tgt.setResponseCode(src.getResponseCode()); - tgt.setRule(convertSetupActionAssertRuleComponent(src.getRule())); - tgt.setRuleset(convertSetupActionAssertRulesetComponent(src.getRuleset())); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasValidateProfileId()) - tgt.setValidateProfileId(src.getValidateProfileId()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasWarningOnly()) - tgt.setWarningOnly(src.getWarningOnly()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent convertSetupActionAssertRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent t : src.getParam()) - tgt.addParam(convertSetupActionAssertRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent convertSetupActionAssertRuleComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent t : src.getParam()) - tgt.addParam(convertSetupActionAssertRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent convertSetupActionAssertRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent convertSetupActionAssertRuleParamComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent convertSetupActionAssertRulesetComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent t : src.getRule()) - tgt.addRule(convertSetupActionAssertRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent convertSetupActionAssertRulesetComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent t : src.getRule()) - tgt.addRule(convertSetupActionAssertRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent convertSetupActionAssertRulesetRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertSetupActionAssertRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent convertSetupActionAssertRulesetRuleComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertSetupActionAssertRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent convertSetupActionAssertRulesetRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent convertSetupActionAssertRulesetRuleParamComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESPONSE: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.RESPONSE; - case REQUEST: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.REQUEST; - default: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.r4.model.TestScript.AssertionDirectionType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESPONSE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.RESPONSE; - case REQUEST: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.REQUEST; - default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.NULL; - } - } - - private static org.hl7.fhir.r4.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EQUALS; - case NOTEQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEQUALS; - case IN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.IN; - case NOTIN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTIN; - case GREATERTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.GREATERTHAN; - case LESSTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.LESSTHAN; - case EMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EMPTY; - case NOTEMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEMPTY; - case CONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.CONTAINS; - case NOTCONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTCONTAINS; - default: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.r4.model.TestScript.AssertionOperatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUALS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.EQUALS; - case NOTEQUALS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTEQUALS; - case IN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.IN; - case NOTIN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTIN; - case GREATERTHAN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.GREATERTHAN; - case LESSTHAN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.LESSTHAN; - case EMPTY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.EMPTY; - case NOTEMPTY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTEMPTY; - case CONTAINS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.CONTAINS; - case NOTCONTAINS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTCONTAINS; - default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NULL; - } - } - - private static org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OKAY: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.OKAY; - case CREATED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CREATED; - case NOCONTENT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOCONTENT; - case NOTMODIFIED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTMODIFIED; - case BAD: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.BAD; - case FORBIDDEN: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.FORBIDDEN; - case NOTFOUND: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTFOUND; - case METHODNOTALLOWED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; - case CONFLICT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CONFLICT; - case GONE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.GONE; - case PRECONDITIONFAILED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; - case UNPROCESSABLE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; - default: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OKAY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.OKAY; - case CREATED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.CREATED; - case NOCONTENT: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOCONTENT; - case NOTMODIFIED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOTMODIFIED; - case BAD: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.BAD; - case FORBIDDEN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.FORBIDDEN; - case NOTFOUND: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOTFOUND; - case METHODNOTALLOWED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; - case CONFLICT: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.CONFLICT; - case GONE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.GONE; - case PRECONDITIONFAILED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; - case UNPROCESSABLE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; - default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NULL; - } - } - - - public static org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.TestScript.TestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.r4.model.TestScript.TestActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.TeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TeardownActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.r4.model.TestScript.TeardownActionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent(); - copyElement(src, tgt); - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet convertValueSet(org.hl7.fhir.dstu2016may.model.ValueSet src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet tgt = new org.hl7.fhir.r4.model.ValueSet(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.addIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent t : src.getContact()) - tgt.addContact(convertValueSetContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) - if (isJurisdiction(t)) - tgt.addJurisdiction(convertCodeableConcept(t)); - else - tgt.addUseContext(convertCodeableConceptToUsageContext(t)); - if (src.hasImmutable()) - tgt.setImmutable(src.getImmutable()); - if (src.hasRequirements()) - tgt.setPurpose(src.getRequirements()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasExtensible()) - tgt.setExtensible(src.getExtensible()); - tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); - if (src.hasLockedDate()) - tgt.getCompose().setLockedDate(src.getLockedDate()); - tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet convertValueSet(org.hl7.fhir.r4.model.ValueSet src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet tgt = new org.hl7.fhir.dstu2016may.model.ValueSet(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.setIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertValueSetContactComponent(t)); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.getCompose().hasLockedDate()) - tgt.setLockedDate(src.getCompose().getLockedDate()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - if (t.hasValueCodeableConcept()) - tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addUseContext(convertCodeableConcept(t)); - if (src.hasImmutable()) - tgt.setImmutable(src.getImmutable()); - if (src.hasPurpose()) - tgt.setRequirements(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasExtensible()) - tgt.setExtensible(src.getExtensible()); - tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); - if (src.hasExpansion()) - tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ContactDetail convertValueSetContactComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent convertValueSetContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu2016may.model.UriType t : src.getImport()) - tgt.addInclude().addValueSet(t.getValue()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent t : src.getInclude()) - tgt.addInclude(convertConceptSetComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent t : src.getExclude()) - tgt.addExclude(convertConceptSetComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getInclude()) { - for (org.hl7.fhir.r4.model.UriType ti : t.getValueSet()) - tgt.addImport(ti.getValue()); - tgt.addInclude(convertConceptSetComponent(t)); - } - for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getExclude()) - tgt.addExclude(convertConceptSetComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) - tgt.addConcept(convertConceptReferenceComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) - tgt.addFilter(convertConceptSetFilterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent(); - copyElement(src, tgt); - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) - tgt.addConcept(convertConceptReferenceComponent(t)); - for (org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) - tgt.addFilter(convertConceptSetFilterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent(); - copyElement(src, tgt); - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - tgt.setUse(convertCoding(src.getUse())); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getProperty()); - tgt.setOp(convertFilterOperator(src.getOp())); - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent(); - copyElement(src, tgt); - tgt.setProperty(src.getProperty()); - tgt.setOp(convertFilterOperator(src.getOp())); - tgt.setValue(src.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISA; - case ISNOTA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.REGEX; - case IN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NOTIN; - default: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.r4.model.ValueSet.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.ISA; - case ISNOTA: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.REGEX; - case IN: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.NOTIN; - default: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.NULL; - } - } - - public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setTimestamp(src.getTimestamp()); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) - tgt.addParameter(convertValueSetExpansionParameterComponent(t)); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent(); - copyElement(src, tgt); - tgt.setIdentifier(src.getIdentifier()); - tgt.setTimestamp(src.getTimestamp()); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) - tgt.addParameter(convertValueSetExpansionParameterComponent(t)); - for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent(); - copyElement(src, tgt); - tgt.setName(src.getName()); - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasAbstract()) - tgt.setAbstract(src.getAbstract()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasAbstract()) - tgt.setAbstract(src.getAbstract()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - -/* public static org.hl7.fhir.r4.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.dstu2016may.model.VisionPrescription src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.VisionPrescription tgt = new org.hl7.fhir.r4.model.VisionPrescription(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setDateWritten(src.getDateWritten()); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setPrescriber(convertReference(src.getPrescriber())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) - tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.r4.model.VisionPrescription src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.VisionPrescription tgt = new org.hl7.fhir.dstu2016may.model.VisionPrescription(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - tgt.setDateWritten(src.getDateWritten()); - tgt.setPatient(convertReference(src.getPatient())); - tgt.setPrescriber(convertReference(src.getPrescriber())); - tgt.setEncounter(convertReference(src.getEncounter())); - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) - tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent(); - copyElement(src, tgt); - tgt.setProduct(convertCoding(src.getProduct())); - tgt.setEye(convertVisionEyes(src.getEye())); - tgt.setSphere(src.getSphere()); - tgt.setCylinder(src.getCylinder()); - tgt.setAxis(src.getAxis()); - tgt.setPrism(src.getPrism()); - tgt.setBase(convertVisionBase(src.getBase())); - tgt.setAdd(src.getAdd()); - tgt.setPower(src.getPower()); - tgt.setBackCurve(src.getBackCurve()); - tgt.setDiameter(src.getDiameter()); - tgt.setDuration(convertSimpleQuantity(src.getDuration())); - tgt.setColor(src.getColor()); - tgt.setBrand(src.getBrand()); - tgt.setNotes(src.getNotes()); - return tgt; - } - - public static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent(); - copyElement(src, tgt); - tgt.setProduct(convertCoding(src.getProduct())); - tgt.setEye(convertVisionEyes(src.getEye())); - tgt.setSphere(src.getSphere()); - tgt.setCylinder(src.getCylinder()); - tgt.setAxis(src.getAxis()); - tgt.setPrism(src.getPrism()); - tgt.setBase(convertVisionBase(src.getBase())); - tgt.setAdd(src.getAdd()); - tgt.setPower(src.getPower()); - tgt.setBackCurve(src.getBackCurve()); - tgt.setDiameter(src.getDiameter()); - tgt.setDuration(convertSimpleQuantity(src.getDuration())); - tgt.setColor(src.getColor()); - tgt.setBrand(src.getBrand()); - tgt.setNotes(src.getNotes()); - return tgt; - } - - private static org.hl7.fhir.r4.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RIGHT: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.RIGHT; - case LEFT: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.LEFT; - default: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.r4.model.VisionPrescription.VisionEyes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RIGHT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.RIGHT; - case LEFT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.LEFT; - default: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.NULL; - } - } - - private static org.hl7.fhir.r4.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UP: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.UP; - case DOWN: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.DOWN; - case IN: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.IN; - case OUT: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.OUT; - default: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.NULL; - } - } - - private static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.r4.model.VisionPrescription.VisionBase src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UP: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.UP; - case DOWN: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.DOWN; - case IN: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.IN; - case OUT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.OUT; - default: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.NULL; - } - } -*/ - public static org.hl7.fhir.r4.model.Resource convertResource(org.hl7.fhir.dstu2016may.model.Resource src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.dstu2016may.model.Parameters) - return convertParameters((org.hl7.fhir.dstu2016may.model.Parameters) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Bundle) - return convertBundle((org.hl7.fhir.dstu2016may.model.Bundle) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.CodeSystem) - return convertCodeSystem((org.hl7.fhir.dstu2016may.model.CodeSystem) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.CompartmentDefinition) - return convertCompartmentDefinition((org.hl7.fhir.dstu2016may.model.CompartmentDefinition) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.ConceptMap) - return convertConceptMap((org.hl7.fhir.dstu2016may.model.ConceptMap) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Conformance) - return convertConformance((org.hl7.fhir.dstu2016may.model.Conformance) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.DataElement) - return convertDataElement((org.hl7.fhir.dstu2016may.model.DataElement) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.ImplementationGuide) - return convertImplementationGuide((org.hl7.fhir.dstu2016may.model.ImplementationGuide) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.NamingSystem) - return convertNamingSystem((org.hl7.fhir.dstu2016may.model.NamingSystem) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.OperationDefinition) - return convertOperationDefinition((org.hl7.fhir.dstu2016may.model.OperationDefinition) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.OperationOutcome) - return convertOperationOutcome((org.hl7.fhir.dstu2016may.model.OperationOutcome) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.Questionnaire) - return convertQuestionnaire((org.hl7.fhir.dstu2016may.model.Questionnaire) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.QuestionnaireResponse) - return convertQuestionnaireResponse((org.hl7.fhir.dstu2016may.model.QuestionnaireResponse) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.SearchParameter) - return convertSearchParameter((org.hl7.fhir.dstu2016may.model.SearchParameter) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.StructureDefinition) - return convertStructureDefinition((org.hl7.fhir.dstu2016may.model.StructureDefinition) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.TestScript) - return convertTestScript((org.hl7.fhir.dstu2016may.model.TestScript) src); - if (src instanceof org.hl7.fhir.dstu2016may.model.ValueSet) - return convertValueSet((org.hl7.fhir.dstu2016may.model.ValueSet) src); -/* if (src instanceof org.hl7.fhir.dstu2016may.model.VisionPrescription) - return convertVisionPrescription((org.hl7.fhir.dstu2016may.model.VisionPrescription) src);*/ - throw new Error("Unknown resource "+src.fhirType()); - } - - public static org.hl7.fhir.dstu2016may.model.Resource convertResource(org.hl7.fhir.r4.model.Resource src) throws FHIRException { - if (src == null || src.isEmpty()) - return null; - if (src instanceof org.hl7.fhir.r4.model.Parameters) - return convertParameters((org.hl7.fhir.r4.model.Parameters) src); - if (src instanceof org.hl7.fhir.r4.model.Bundle) - return convertBundle((org.hl7.fhir.r4.model.Bundle) src); - if (src instanceof org.hl7.fhir.r4.model.CodeSystem) - return convertCodeSystem((org.hl7.fhir.r4.model.CodeSystem) src); - if (src instanceof org.hl7.fhir.r4.model.CompartmentDefinition) - return convertCompartmentDefinition((org.hl7.fhir.r4.model.CompartmentDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.ConceptMap) - return convertConceptMap((org.hl7.fhir.r4.model.ConceptMap) src); - if (src instanceof org.hl7.fhir.r4.model.CapabilityStatement) - return convertConformance((org.hl7.fhir.r4.model.CapabilityStatement) src); -// if (src instanceof org.hl7.fhir.r4.model.DataElement) -// return convertDataElement((org.hl7.fhir.r4.model.DataElement) src); - if (src instanceof org.hl7.fhir.r4.model.ImplementationGuide) - return convertImplementationGuide((org.hl7.fhir.r4.model.ImplementationGuide) src); - if (src instanceof org.hl7.fhir.r4.model.NamingSystem) - return convertNamingSystem((org.hl7.fhir.r4.model.NamingSystem) src); - if (src instanceof org.hl7.fhir.r4.model.OperationDefinition) - return convertOperationDefinition((org.hl7.fhir.r4.model.OperationDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.OperationOutcome) - return convertOperationOutcome((org.hl7.fhir.r4.model.OperationOutcome) src); - if (src instanceof org.hl7.fhir.r4.model.Questionnaire) - return convertQuestionnaire((org.hl7.fhir.r4.model.Questionnaire) src); - if (src instanceof org.hl7.fhir.r4.model.QuestionnaireResponse) - return convertQuestionnaireResponse((org.hl7.fhir.r4.model.QuestionnaireResponse) src); - if (src instanceof org.hl7.fhir.r4.model.SearchParameter) - return convertSearchParameter((org.hl7.fhir.r4.model.SearchParameter) src); - if (src instanceof org.hl7.fhir.r4.model.StructureDefinition) - return convertStructureDefinition((org.hl7.fhir.r4.model.StructureDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.TestScript) - return convertTestScript((org.hl7.fhir.r4.model.TestScript) src); - if (src instanceof org.hl7.fhir.r4.model.ValueSet) - return convertValueSet((org.hl7.fhir.r4.model.ValueSet) src); -/* if (src instanceof org.hl7.fhir.r4.model.VisionPrescription) - return convertVisionPrescription((org.hl7.fhir.r4.model.VisionPrescription) src);*/ - throw new Error("Unknown resource "+src.fhirType()); - } - - -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + */ + +// Generated on Mon, Aug 15, 2016 19:58+1000 for FHIR v1.7.0 + +import java.util.ArrayList; +import java.util.List; + +import org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent; +import org.hl7.fhir.dstu2016may.model.CodeableConcept; +import org.hl7.fhir.r4.conformance.ProfileUtilities; +import org.hl7.fhir.r4.model.CodeSystem; +import org.hl7.fhir.r4.model.CodeSystem.FilterOperator; +import org.hl7.fhir.r4.model.ConceptMap; +import org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent; +import org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent; +import org.hl7.fhir.r4.model.ContactDetail; +import org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent; +import org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind; +import org.hl7.fhir.r4.model.Enumeration; +import org.hl7.fhir.r4.model.Timing.EventTiming; +import org.hl7.fhir.r4.model.UsageContext; +import org.hl7.fhir.exceptions.FHIRException; + +public class VersionConvertor_14_40 { + + private static void copyElement(org.hl7.fhir.dstu2016may.model.Element src, org.hl7.fhir.r4.model.Element tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + for (org.hl7.fhir.dstu2016may.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + private static void copyElement(org.hl7.fhir.r4.model.Element src, org.hl7.fhir.dstu2016may.model.Element tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + for (org.hl7.fhir.r4.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + private static void copyBackboneElement(org.hl7.fhir.dstu2016may.model.BackboneElement src, org.hl7.fhir.r4.model.BackboneElement tgt) throws FHIRException { + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Extension e : src.getModifierExtension()) { + tgt.addModifierExtension(convertExtension(e)); + } + } + + private static void copyBackboneElement(org.hl7.fhir.r4.model.BackboneElement src, org.hl7.fhir.dstu2016may.model.BackboneElement tgt) throws FHIRException { + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Extension e : src.getModifierExtension()) { + tgt.addModifierExtension(convertExtension(e)); + } + } + + public static org.hl7.fhir.r4.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.dstu2016may.model.Base64BinaryType src) throws FHIRException { + org.hl7.fhir.r4.model.Base64BinaryType tgt = new org.hl7.fhir.r4.model.Base64BinaryType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.r4.model.Base64BinaryType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.Base64BinaryType tgt = new org.hl7.fhir.dstu2016may.model.Base64BinaryType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.BooleanType convertBoolean(org.hl7.fhir.dstu2016may.model.BooleanType src) throws FHIRException { + org.hl7.fhir.r4.model.BooleanType tgt = new org.hl7.fhir.r4.model.BooleanType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.BooleanType convertBoolean(org.hl7.fhir.r4.model.BooleanType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.BooleanType tgt = new org.hl7.fhir.dstu2016may.model.BooleanType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeType convertCode(org.hl7.fhir.dstu2016may.model.CodeType src) throws FHIRException { + org.hl7.fhir.r4.model.CodeType tgt = new org.hl7.fhir.r4.model.CodeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeType convertCode(org.hl7.fhir.r4.model.CodeType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.CodeType tgt = new org.hl7.fhir.dstu2016may.model.CodeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.DateType convertDate(org.hl7.fhir.dstu2016may.model.DateType src) throws FHIRException { + org.hl7.fhir.r4.model.DateType tgt = new org.hl7.fhir.r4.model.DateType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.DateType convertDate(org.hl7.fhir.r4.model.DateType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.DateType tgt = new org.hl7.fhir.dstu2016may.model.DateType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.DateTimeType convertDateTime(org.hl7.fhir.dstu2016may.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.r4.model.DateTimeType tgt = new org.hl7.fhir.r4.model.DateTimeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.DateTimeType convertDateTime(org.hl7.fhir.r4.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.DateTimeType tgt = new org.hl7.fhir.dstu2016may.model.DateTimeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.DecimalType convertDecimal(org.hl7.fhir.dstu2016may.model.DecimalType src) throws FHIRException { + org.hl7.fhir.r4.model.DecimalType tgt = new org.hl7.fhir.r4.model.DecimalType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.DecimalType convertDecimal(org.hl7.fhir.r4.model.DecimalType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.DecimalType tgt = new org.hl7.fhir.dstu2016may.model.DecimalType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.IdType convertId(org.hl7.fhir.dstu2016may.model.IdType src) throws FHIRException { + org.hl7.fhir.r4.model.IdType tgt = new org.hl7.fhir.r4.model.IdType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.IdType convertId(org.hl7.fhir.r4.model.IdType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.IdType tgt = new org.hl7.fhir.dstu2016may.model.IdType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.InstantType convertInstant(org.hl7.fhir.dstu2016may.model.InstantType src) throws FHIRException { + org.hl7.fhir.r4.model.InstantType tgt = new org.hl7.fhir.r4.model.InstantType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.InstantType convertInstant(org.hl7.fhir.r4.model.InstantType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.InstantType tgt = new org.hl7.fhir.dstu2016may.model.InstantType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.IntegerType convertInteger(org.hl7.fhir.dstu2016may.model.IntegerType src) throws FHIRException { + org.hl7.fhir.r4.model.IntegerType tgt = new org.hl7.fhir.r4.model.IntegerType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.IntegerType convertInteger(org.hl7.fhir.r4.model.IntegerType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.IntegerType tgt = new org.hl7.fhir.dstu2016may.model.IntegerType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.MarkdownType convertMarkdown(org.hl7.fhir.dstu2016may.model.MarkdownType src) throws FHIRException { + org.hl7.fhir.r4.model.MarkdownType tgt = new org.hl7.fhir.r4.model.MarkdownType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.MarkdownType convertMarkdown(org.hl7.fhir.r4.model.MarkdownType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.MarkdownType tgt = new org.hl7.fhir.dstu2016may.model.MarkdownType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.OidType convertOid(org.hl7.fhir.dstu2016may.model.OidType src) throws FHIRException { + org.hl7.fhir.r4.model.OidType tgt = new org.hl7.fhir.r4.model.OidType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OidType convertOid(org.hl7.fhir.r4.model.OidType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.OidType tgt = new org.hl7.fhir.dstu2016may.model.OidType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.PositiveIntType convertPositiveInt(org.hl7.fhir.dstu2016may.model.PositiveIntType src) throws FHIRException { + org.hl7.fhir.r4.model.PositiveIntType tgt = new org.hl7.fhir.r4.model.PositiveIntType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.PositiveIntType convertPositiveInt(org.hl7.fhir.r4.model.PositiveIntType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.PositiveIntType tgt = new org.hl7.fhir.dstu2016may.model.PositiveIntType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.StringType convertString(org.hl7.fhir.dstu2016may.model.StringType src) throws FHIRException { + org.hl7.fhir.r4.model.StringType tgt = new org.hl7.fhir.r4.model.StringType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StringType convertString(org.hl7.fhir.r4.model.StringType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.StringType tgt = new org.hl7.fhir.dstu2016may.model.StringType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.TimeType convertTime(org.hl7.fhir.dstu2016may.model.TimeType src) throws FHIRException { + org.hl7.fhir.r4.model.TimeType tgt = new org.hl7.fhir.r4.model.TimeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TimeType convertTime(org.hl7.fhir.r4.model.TimeType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.TimeType tgt = new org.hl7.fhir.dstu2016may.model.TimeType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.dstu2016may.model.UnsignedIntType src) throws FHIRException { + org.hl7.fhir.r4.model.UnsignedIntType tgt = new org.hl7.fhir.r4.model.UnsignedIntType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.r4.model.UnsignedIntType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.UnsignedIntType tgt = new org.hl7.fhir.dstu2016may.model.UnsignedIntType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.UriType convertUri(org.hl7.fhir.dstu2016may.model.UriType src) throws FHIRException { + org.hl7.fhir.r4.model.UriType tgt = new org.hl7.fhir.r4.model.UriType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.UriType convertUri(org.hl7.fhir.r4.model.UriType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.UriType tgt = new org.hl7.fhir.dstu2016may.model.UriType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.UuidType convertUuid(org.hl7.fhir.dstu2016may.model.UuidType src) throws FHIRException { + org.hl7.fhir.r4.model.UuidType tgt = new org.hl7.fhir.r4.model.UuidType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.UuidType convertUuid(org.hl7.fhir.r4.model.UuidType src) throws FHIRException { + org.hl7.fhir.dstu2016may.model.UuidType tgt = new org.hl7.fhir.dstu2016may.model.UuidType(); + if (src.hasValue()) + tgt.setValue(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.Extension convertExtension(org.hl7.fhir.dstu2016may.model.Extension src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Extension tgt = new org.hl7.fhir.r4.model.Extension(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Extension convertExtension(org.hl7.fhir.r4.model.Extension src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Extension tgt = new org.hl7.fhir.dstu2016may.model.Extension(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Narrative convertNarrative(org.hl7.fhir.dstu2016may.model.Narrative src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Narrative tgt = new org.hl7.fhir.r4.model.Narrative(); + copyElement(src, tgt); + tgt.setStatus(convertNarrativeStatus(src.getStatus())); + tgt.setDiv(src.getDiv()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Narrative convertNarrative(org.hl7.fhir.r4.model.Narrative src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Narrative tgt = new org.hl7.fhir.dstu2016may.model.Narrative(); + copyElement(src, tgt); + tgt.setStatus(convertNarrativeStatus(src.getStatus())); + tgt.setDiv(src.getDiv()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GENERATED: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.GENERATED; + case EXTENSIONS: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EXTENSIONS; + case ADDITIONAL: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.ADDITIONAL; + case EMPTY: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EMPTY; + default: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.r4.model.Narrative.NarrativeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GENERATED: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.GENERATED; + case EXTENSIONS: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.EXTENSIONS; + case ADDITIONAL: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.ADDITIONAL; + case EMPTY: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.EMPTY; + default: return org.hl7.fhir.dstu2016may.model.Narrative.NarrativeStatus.NULL; + } + } + + public static org.hl7.fhir.r4.model.Age convertAge(org.hl7.fhir.dstu2016may.model.Age src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Age tgt = new org.hl7.fhir.r4.model.Age(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Age convertAge(org.hl7.fhir.r4.model.Age src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Age tgt = new org.hl7.fhir.dstu2016may.model.Age(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + + public static org.hl7.fhir.r4.model.Annotation convertAnnotation(org.hl7.fhir.dstu2016may.model.Annotation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Annotation tgt = new org.hl7.fhir.r4.model.Annotation(); + copyElement(src, tgt); + tgt.setAuthor(convertType(src.getAuthor())); + if (src.hasTime()) + tgt.setTime(src.getTime()); + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Annotation convertAnnotation(org.hl7.fhir.r4.model.Annotation src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Annotation tgt = new org.hl7.fhir.dstu2016may.model.Annotation(); + copyElement(src, tgt); + tgt.setAuthor(convertType(src.getAuthor())); + if (src.hasTime()) + tgt.setTime(src.getTime()); + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Attachment convertAttachment(org.hl7.fhir.dstu2016may.model.Attachment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Attachment tgt = new org.hl7.fhir.r4.model.Attachment(); + copyElement(src, tgt); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasData()) + tgt.setData(src.getData()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasSize()) + tgt.setSize(src.getSize()); + if (src.hasHash()) + tgt.setHash(src.getHash()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasCreation()) + tgt.setCreation(src.getCreation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Attachment convertAttachment(org.hl7.fhir.r4.model.Attachment src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Attachment tgt = new org.hl7.fhir.dstu2016may.model.Attachment(); + copyElement(src, tgt); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasData()) + tgt.setData(src.getData()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasSize()) + tgt.setSize(src.getSize()); + if (src.hasHash()) + tgt.setHash(src.getHash()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasCreation()) + tgt.setCreation(src.getCreation()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.dstu2016may.model.CodeableConcept src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CodeableConcept tgt = new org.hl7.fhir.r4.model.CodeableConcept(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCoding()) + tgt.addCoding(convertCoding(t)); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.r4.model.CodeableConcept src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeableConcept tgt = new org.hl7.fhir.dstu2016may.model.CodeableConcept(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Coding t : src.getCoding()) + tgt.addCoding(convertCoding(t)); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Coding convertCoding(org.hl7.fhir.dstu2016may.model.Coding src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Coding tgt = new org.hl7.fhir.r4.model.Coding(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasUserSelected()) + tgt.setUserSelected(src.getUserSelected()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Coding convertCoding(org.hl7.fhir.r4.model.Coding src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Coding tgt = new org.hl7.fhir.dstu2016may.model.Coding(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasUserSelected()) + tgt.setUserSelected(src.getUserSelected()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Count convertCount(org.hl7.fhir.dstu2016may.model.Count src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Count tgt = new org.hl7.fhir.r4.model.Count(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Count convertCount(org.hl7.fhir.r4.model.Count src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Count tgt = new org.hl7.fhir.dstu2016may.model.Count(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Distance convertDistance(org.hl7.fhir.dstu2016may.model.Distance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Distance tgt = new org.hl7.fhir.r4.model.Distance(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Distance convertDistance(org.hl7.fhir.r4.model.Distance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Distance tgt = new org.hl7.fhir.dstu2016may.model.Distance(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Duration convertDuration(org.hl7.fhir.dstu2016may.model.Duration src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Duration tgt = new org.hl7.fhir.r4.model.Duration(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Duration convertDuration(org.hl7.fhir.r4.model.Duration src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Duration tgt = new org.hl7.fhir.dstu2016may.model.Duration(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Money convertMoney(org.hl7.fhir.dstu2016may.model.Money src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Money tgt = new org.hl7.fhir.r4.model.Money(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Money convertMoney(org.hl7.fhir.r4.model.Money src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Money tgt = new org.hl7.fhir.dstu2016may.model.Money(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Identifier convertIdentifier(org.hl7.fhir.dstu2016may.model.Identifier src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Identifier tgt = new org.hl7.fhir.r4.model.Identifier(); + copyElement(src, tgt); + tgt.setUse(convertIdentifierUse(src.getUse())); + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setAssigner(convertReference(src.getAssigner())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Identifier convertIdentifier(org.hl7.fhir.r4.model.Identifier src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Identifier tgt = new org.hl7.fhir.dstu2016may.model.Identifier(); + copyElement(src, tgt); + tgt.setUse(convertIdentifierUse(src.getUse())); + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + tgt.setAssigner(convertReference(src.getAssigner())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.USUAL; + case OFFICIAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.OFFICIAL; + case TEMP: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.TEMP; + case SECONDARY: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.SECONDARY; + default: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.r4.model.Identifier.IdentifierUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.USUAL; + case OFFICIAL: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.OFFICIAL; + case TEMP: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.TEMP; + case SECONDARY: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.SECONDARY; + default: return org.hl7.fhir.dstu2016may.model.Identifier.IdentifierUse.NULL; + } + } + + + public static org.hl7.fhir.r4.model.Period convertPeriod(org.hl7.fhir.dstu2016may.model.Period src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Period tgt = new org.hl7.fhir.r4.model.Period(); + copyElement(src, tgt); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Period convertPeriod(org.hl7.fhir.r4.model.Period src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Period tgt = new org.hl7.fhir.dstu2016may.model.Period(); + copyElement(src, tgt); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Quantity convertQuantity(org.hl7.fhir.dstu2016may.model.Quantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Quantity tgt = new org.hl7.fhir.r4.model.Quantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Quantity convertQuantity(org.hl7.fhir.r4.model.Quantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Quantity tgt = new org.hl7.fhir.dstu2016may.model.Quantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LESS_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_THAN; + case LESS_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_OR_EQUAL; + case GREATER_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; + case GREATER_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_THAN; + default: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.r4.model.Quantity.QuantityComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LESS_THAN: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.LESS_THAN; + case LESS_OR_EQUAL: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.LESS_OR_EQUAL; + case GREATER_OR_EQUAL: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; + case GREATER_THAN: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.GREATER_THAN; + default: return org.hl7.fhir.dstu2016may.model.Quantity.QuantityComparator.NULL; + } + } + + public static org.hl7.fhir.r4.model.Range convertRange(org.hl7.fhir.dstu2016may.model.Range src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Range tgt = new org.hl7.fhir.r4.model.Range(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Range convertRange(org.hl7.fhir.r4.model.Range src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Range tgt = new org.hl7.fhir.dstu2016may.model.Range(); + copyElement(src, tgt); + tgt.setLow(convertSimpleQuantity(src.getLow())); + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Ratio convertRatio(org.hl7.fhir.dstu2016may.model.Ratio src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Ratio tgt = new org.hl7.fhir.r4.model.Ratio(); + copyElement(src, tgt); + tgt.setNumerator(convertQuantity(src.getNumerator())); + tgt.setDenominator(convertQuantity(src.getDenominator())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Ratio convertRatio(org.hl7.fhir.r4.model.Ratio src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Ratio tgt = new org.hl7.fhir.dstu2016may.model.Ratio(); + copyElement(src, tgt); + tgt.setNumerator(convertQuantity(src.getNumerator())); + tgt.setDenominator(convertQuantity(src.getDenominator())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Reference convertReference(org.hl7.fhir.dstu2016may.model.Reference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Reference tgt = new org.hl7.fhir.r4.model.Reference(); + copyElement(src, tgt); + if (src.hasReference()) + tgt.setReference(src.getReference()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Reference convertReference(org.hl7.fhir.r4.model.Reference src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Reference tgt = new org.hl7.fhir.dstu2016may.model.Reference(); + copyElement(src, tgt); + if (src.hasReference()) + tgt.setReference(src.getReference()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public static org.hl7.fhir.r4.model.SampledData convertSampledData(org.hl7.fhir.dstu2016may.model.SampledData src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.SampledData tgt = new org.hl7.fhir.r4.model.SampledData(); + copyElement(src, tgt); + tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); + tgt.setPeriod(src.getPeriod()); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasLowerLimit()) + tgt.setLowerLimit(src.getLowerLimit()); + if (src.hasUpperLimit()) + tgt.setUpperLimit(src.getUpperLimit()); + tgt.setDimensions(src.getDimensions()); + tgt.setData(src.getData()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.SampledData convertSampledData(org.hl7.fhir.r4.model.SampledData src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.SampledData tgt = new org.hl7.fhir.dstu2016may.model.SampledData(); + copyElement(src, tgt); + tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); + tgt.setPeriod(src.getPeriod()); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasLowerLimit()) + tgt.setLowerLimit(src.getLowerLimit()); + if (src.hasUpperLimit()) + tgt.setUpperLimit(src.getUpperLimit()); + tgt.setDimensions(src.getDimensions()); + tgt.setData(src.getData()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Signature convertSignature(org.hl7.fhir.dstu2016may.model.Signature src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Signature tgt = new org.hl7.fhir.r4.model.Signature(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + tgt.setWhen(src.getWhen()); + tgt.setWho(convertType(src.getWho())); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Signature convertSignature(org.hl7.fhir.r4.model.Signature src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Signature tgt = new org.hl7.fhir.dstu2016may.model.Signature(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + tgt.setWhen(src.getWhen()); + tgt.setWho(convertType(src.getWho())); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Address convertAddress(org.hl7.fhir.dstu2016may.model.Address src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Address tgt = new org.hl7.fhir.r4.model.Address(); + copyElement(src, tgt); + tgt.setUse(convertAddressUse(src.getUse())); + tgt.setType(convertAddressType(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getLine()) + tgt.addLine(t.getValue()); + if (src.hasCity()) + tgt.setCity(src.getCity()); + if (src.hasDistrict()) + tgt.setDistrict(src.getDistrict()); + if (src.hasState()) + tgt.setState(src.getState()); + if (src.hasPostalCode()) + tgt.setPostalCode(src.getPostalCode()); + if (src.hasCountry()) + tgt.setCountry(src.getCountry()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Address convertAddress(org.hl7.fhir.r4.model.Address src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Address tgt = new org.hl7.fhir.dstu2016may.model.Address(); + copyElement(src, tgt); + tgt.setUse(convertAddressUse(src.getUse())); + tgt.setType(convertAddressType(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + for (org.hl7.fhir.r4.model.StringType t : src.getLine()) + tgt.addLine(t.getValue()); + if (src.hasCity()) + tgt.setCity(src.getCity()); + if (src.hasDistrict()) + tgt.setDistrict(src.getDistrict()); + if (src.hasState()) + tgt.setState(src.getState()); + if (src.hasPostalCode()) + tgt.setPostalCode(src.getPostalCode()); + if (src.hasCountry()) + tgt.setCountry(src.getCountry()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Address.AddressUse convertAddressUse(org.hl7.fhir.dstu2016may.model.Address.AddressUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.r4.model.Address.AddressUse.HOME; + case WORK: return org.hl7.fhir.r4.model.Address.AddressUse.WORK; + case TEMP: return org.hl7.fhir.r4.model.Address.AddressUse.TEMP; + case OLD: return org.hl7.fhir.r4.model.Address.AddressUse.OLD; + default: return org.hl7.fhir.r4.model.Address.AddressUse.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Address.AddressUse convertAddressUse(org.hl7.fhir.r4.model.Address.AddressUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.HOME; + case WORK: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.WORK; + case TEMP: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.TEMP; + case OLD: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.OLD; + default: return org.hl7.fhir.dstu2016may.model.Address.AddressUse.NULL; + } + } + + private static org.hl7.fhir.r4.model.Address.AddressType convertAddressType(org.hl7.fhir.dstu2016may.model.Address.AddressType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case POSTAL: return org.hl7.fhir.r4.model.Address.AddressType.POSTAL; + case PHYSICAL: return org.hl7.fhir.r4.model.Address.AddressType.PHYSICAL; + case BOTH: return org.hl7.fhir.r4.model.Address.AddressType.BOTH; + default: return org.hl7.fhir.r4.model.Address.AddressType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Address.AddressType convertAddressType(org.hl7.fhir.r4.model.Address.AddressType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case POSTAL: return org.hl7.fhir.dstu2016may.model.Address.AddressType.POSTAL; + case PHYSICAL: return org.hl7.fhir.dstu2016may.model.Address.AddressType.PHYSICAL; + case BOTH: return org.hl7.fhir.dstu2016may.model.Address.AddressType.BOTH; + default: return org.hl7.fhir.dstu2016may.model.Address.AddressType.NULL; + } + } + + public static org.hl7.fhir.r4.model.ContactPoint convertContactPoint(org.hl7.fhir.dstu2016may.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactPoint tgt = new org.hl7.fhir.r4.model.ContactPoint(); + copyElement(src, tgt); + tgt.setSystem(convertContactPointSystem(src.getSystem())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setUse(convertContactPointUse(src.getUse())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ContactPoint convertContactPoint(org.hl7.fhir.r4.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ContactPoint tgt = new org.hl7.fhir.dstu2016may.model.ContactPoint(); + copyElement(src, tgt); + tgt.setSystem(convertContactPointSystem(src.getSystem())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setUse(convertContactPointUse(src.getUse())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHONE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PHONE; + case FAX: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.FAX; + case EMAIL: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.EMAIL; + case PAGER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PAGER; + case OTHER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.URL; + default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHONE: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.PHONE; + case FAX: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.FAX; + case EMAIL: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.EMAIL; + case PAGER: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.PAGER; + case URL: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.OTHER; + default: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointSystem.NULL; + } + } + + private static org.hl7.fhir.r4.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.HOME; + case WORK: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.WORK; + case TEMP: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.TEMP; + case OLD: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.OLD; + case MOBILE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.MOBILE; + default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.r4.model.ContactPoint.ContactPointUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.HOME; + case WORK: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.WORK; + case TEMP: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.TEMP; + case OLD: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.OLD; + case MOBILE: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.MOBILE; + default: return org.hl7.fhir.dstu2016may.model.ContactPoint.ContactPointUse.NULL; + } + } + + public static org.hl7.fhir.r4.model.ElementDefinition convertElementDefinition(org.hl7.fhir.dstu2016may.model.ElementDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition tgt = new org.hl7.fhir.r4.model.ElementDefinition(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + for (org.hl7.fhir.dstu2016may.model.Enumeration t : src.getRepresentation()) + tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); + if (src.hasName()) + tgt.setSliceName(src.getName()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); + if (src.hasShort()) + tgt.setShort(src.getShort()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasComments()) + tgt.setComment(src.getComments()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); + if (src.hasContentReference()) + tgt.setContentReference(src.getContentReference()); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent t : src.getType()) + tgt.addType(convertTypeRefComponent(t)); + tgt.setDefaultValue(convertType(src.getDefaultValue())); + if (src.hasMeaningWhenMissing()) + tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); + tgt.setFixed(convertType(src.getFixed())); + tgt.setPattern(convertType(src.getPattern())); + if (src.hasExample()) + tgt.addExample().setLabel("General").setValue(convertType(src.getExample())); + tgt.setMinValue(convertType(src.getMinValue())); + tgt.setMaxValue(convertType(src.getMaxValue())); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + for (org.hl7.fhir.dstu2016may.model.IdType t : src.getCondition()) + tgt.addCondition(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) + tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); + if (src.hasMustSupport()) + tgt.setMustSupport(src.getMustSupport()); + if (src.hasIsModifier()) + tgt.setIsModifier(src.getIsModifier()); + if (src.hasIsSummary()) + tgt.setIsSummary(src.getIsSummary()); + tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertElementDefinitionMappingComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition convertElementDefinition(org.hl7.fhir.r4.model.ElementDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + for (org.hl7.fhir.r4.model.Enumeration t : src.getRepresentation()) + tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); + if (src.hasSliceName()) + tgt.setName(src.getSliceName()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + for (org.hl7.fhir.r4.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + if (src.hasSlicing()) + tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); + if (src.hasShort()) + tgt.setShort(src.getShort()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasComment()) + tgt.setComments(src.getComment()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + for (org.hl7.fhir.r4.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasBase()) + tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); + if (src.hasContentReference()) + tgt.setContentReference(src.getContentReference()); + for (org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent t : src.getType()) + tgt.addType(convertTypeRefComponent(t)); + tgt.setDefaultValue(convertType(src.getDefaultValue())); + if (src.hasMeaningWhenMissing()) + tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); + tgt.setFixed(convertType(src.getFixed())); + tgt.setPattern(convertType(src.getPattern())); + if (src.hasExample()) + tgt.setExample(convertType(src.getExample().get(0).getValue())); + tgt.setMinValue(convertType(src.getMinValue())); + tgt.setMaxValue(convertType(src.getMaxValue())); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + for (org.hl7.fhir.r4.model.IdType t : src.getCondition()) + tgt.addCondition(t.getValue()); + for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) + tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); + if (src.hasMustSupport()) + tgt.setMustSupport(src.getMustSupport()); + if (src.hasIsModifier()) + tgt.setIsModifier(src.getIsModifier()); + if (src.hasIsSummary()) + tgt.setIsSummary(src.getIsSummary()); + if (src.hasBinding()) + tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); + for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertElementDefinitionMappingComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XMLATTR: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XMLATTR; + case XMLTEXT: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XMLTEXT; + case TYPEATTR: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.TYPEATTR; + case CDATEXT: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.CDATEXT; + default: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XMLATTR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.XMLATTR; + case XMLTEXT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.XMLTEXT; + case TYPEATTR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.TYPEATTR; + case CDATEXT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.CDATEXT; + default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.PropertyRepresentation.NULL; + } + } + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getDiscriminator()) + tgt.addDiscriminator(ProfileUtilities.interpretR2Discriminator(t.getValue())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasOrdered()) + tgt.setOrdered(src.getOrdered()); + tgt.setRules(convertSlicingRules(src.getRules())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionSlicingComponent(); + copyElement(src, tgt); + for (ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) + tgt.addDiscriminator(ProfileUtilities.buildR2Discriminator(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasOrdered()) + tgt.setOrdered(src.getOrdered()); + tgt.setRules(convertSlicingRules(src.getRules())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLOSED: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.CLOSED; + case OPEN: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPEN; + case OPENATEND: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPENATEND; + default: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.r4.model.ElementDefinition.SlicingRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLOSED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.CLOSED; + case OPEN: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.OPEN; + case OPENATEND: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.OPENATEND; + default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.SlicingRules.NULL; + } + } + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBaseComponent(); + copyElement(src, tgt); + tgt.setPath(src.getPath()); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getProfile()) { + if (src.getCode().equals("Reference")) + tgt.setTargetProfile(t.getValueAsString()); + else + tgt.setProfile(t.getValueAsString()); + } + for (org.hl7.fhir.dstu2016may.model.Enumeration t : src.getAggregation()) + tgt.addAggregation(convertAggregationMode(t.getValue())); + tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.TypeRefComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasCode() && "Reference".equals(src.getCode())) + tgt.addProfile(src.getTargetProfile()); + else + tgt.addProfile(src.getProfile()); + for (org.hl7.fhir.r4.model.Enumeration t : src.getAggregation()) + tgt.addAggregation(convertAggregationMode(t.getValue())); + tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONTAINED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.CONTAINED; + case REFERENCED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.REFERENCED; + case BUNDLED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.BUNDLED; + default: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.r4.model.ElementDefinition.AggregationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONTAINED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.CONTAINED; + case REFERENCED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.REFERENCED; + case BUNDLED: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.BUNDLED; + default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.AggregationMode.NULL; + } + } + + private static org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EITHER: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.EITHER; + case INDEPENDENT: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; + case SPECIFIC: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; + default: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EITHER: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.EITHER; + case INDEPENDENT: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; + case SPECIFIC: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; + default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ReferenceVersionRules.NULL; + } + } + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent(); + copyElement(src, tgt); + tgt.setKey(src.getKey()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); + tgt.setHuman(src.getHuman()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + tgt.setXpath(src.getXpath()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionConstraintComponent(); + copyElement(src, tgt); + tgt.setKey(src.getKey()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); + tgt.setHuman(src.getHuman()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + tgt.setXpath(src.getXpath()); + return tgt; + } + + private static org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ERROR: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.ERROR; + case WARNING: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.WARNING; + default: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ERROR: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.ERROR; + case WARNING: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.WARNING; + default: return org.hl7.fhir.dstu2016may.model.ElementDefinition.ConstraintSeverity.NULL; + } + } + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.REQUIRED; + case EXTENSIBLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXTENSIBLE; + case PREFERRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.PREFERRED; + case EXAMPLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXAMPLE; + default: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.r4.model.Enumerations.BindingStrength src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.REQUIRED; + case EXTENSIBLE: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.EXTENSIBLE; + case PREFERRED: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.PREFERRED; + case EXAMPLE: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.EXAMPLE; + default: return org.hl7.fhir.dstu2016may.model.Enumerations.BindingStrength.NULL; + } + } + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setMap(src.getMap()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.ElementDefinition.ElementDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setMap(src.getMap()); + return tgt; + } + + public static org.hl7.fhir.r4.model.HumanName convertHumanName(org.hl7.fhir.dstu2016may.model.HumanName src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.HumanName tgt = new org.hl7.fhir.r4.model.HumanName(); + copyElement(src, tgt); + tgt.setUse(convertNameUse(src.getUse())); + if (src.hasText()) + tgt.setText(src.getText()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getFamily()) + tgt.setFamily(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getGiven()) + tgt.addGiven(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getPrefix()) + tgt.addPrefix(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSuffix()) + tgt.addSuffix(t.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.HumanName convertHumanName(org.hl7.fhir.r4.model.HumanName src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.HumanName tgt = new org.hl7.fhir.dstu2016may.model.HumanName(); + copyElement(src, tgt); + tgt.setUse(convertNameUse(src.getUse())); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasFamily()) + tgt.addFamily(src.getFamily()); + for (org.hl7.fhir.r4.model.StringType t : src.getGiven()) + tgt.addGiven(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getPrefix()) + tgt.addPrefix(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getSuffix()) + tgt.addSuffix(t.getValue()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.r4.model.HumanName.NameUse convertNameUse(org.hl7.fhir.dstu2016may.model.HumanName.NameUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.r4.model.HumanName.NameUse.USUAL; + case OFFICIAL: return org.hl7.fhir.r4.model.HumanName.NameUse.OFFICIAL; + case TEMP: return org.hl7.fhir.r4.model.HumanName.NameUse.TEMP; + case NICKNAME: return org.hl7.fhir.r4.model.HumanName.NameUse.NICKNAME; + case ANONYMOUS: return org.hl7.fhir.r4.model.HumanName.NameUse.ANONYMOUS; + case OLD: return org.hl7.fhir.r4.model.HumanName.NameUse.OLD; + case MAIDEN: return org.hl7.fhir.r4.model.HumanName.NameUse.MAIDEN; + default: return org.hl7.fhir.r4.model.HumanName.NameUse.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.HumanName.NameUse convertNameUse(org.hl7.fhir.r4.model.HumanName.NameUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.USUAL; + case OFFICIAL: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.OFFICIAL; + case TEMP: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.TEMP; + case NICKNAME: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.NICKNAME; + case ANONYMOUS: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.ANONYMOUS; + case OLD: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.OLD; + case MAIDEN: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.MAIDEN; + default: return org.hl7.fhir.dstu2016may.model.HumanName.NameUse.NULL; + } + } + + public static org.hl7.fhir.r4.model.Meta convertMeta(org.hl7.fhir.dstu2016may.model.Meta src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Meta tgt = new org.hl7.fhir.r4.model.Meta(); + copyElement(src, tgt); + if (src.hasVersionId()) + tgt.setVersionId(src.getVersionId()); + if (src.hasLastUpdated()) + tgt.setLastUpdated(src.getLastUpdated()); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getSecurity()) + tgt.addSecurity(convertCoding(t)); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Meta convertMeta(org.hl7.fhir.r4.model.Meta src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Meta tgt = new org.hl7.fhir.dstu2016may.model.Meta(); + copyElement(src, tgt); + if (src.hasVersionId()) + tgt.setVersionId(src.getVersionId()); + if (src.hasLastUpdated()) + tgt.setLastUpdated(src.getLastUpdated()); + for (org.hl7.fhir.r4.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.r4.model.Coding t : src.getSecurity()) + tgt.addSecurity(convertCoding(t)); + for (org.hl7.fhir.r4.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Timing convertTiming(org.hl7.fhir.dstu2016may.model.Timing src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Timing tgt = new org.hl7.fhir.r4.model.Timing(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.DateTimeType t : src.getEvent()) + tgt.addEvent(t.getValue()); + tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Timing convertTiming(org.hl7.fhir.r4.model.Timing src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Timing tgt = new org.hl7.fhir.dstu2016may.model.Timing(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.DateTimeType t : src.getEvent()) + tgt.addEvent(t.getValue()); + tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.r4.model.Timing.TimingRepeatComponent(); + copyElement(src, tgt); + tgt.setBounds(convertType(src.getBounds())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + if (src.hasCountMax()) + tgt.setCountMax(src.getCountMax()); + if (src.hasDuration()) + tgt.setDuration(src.getDuration()); + if (src.hasDurationMax()) + tgt.setDurationMax(src.getDurationMax()); + tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); + if (src.hasFrequency()) + tgt.setFrequency(src.getFrequency()); + if (src.hasFrequencyMax()) + tgt.setFrequencyMax(src.getFrequencyMax()); + if (src.hasPeriod()) + tgt.setPeriod(src.getPeriod()); + if (src.hasPeriodMax()) + tgt.setPeriodMax(src.getPeriodMax()); + tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); + tgt.addWhen(convertEventTiming(src.getWhen())); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.r4.model.Timing.TimingRepeatComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.dstu2016may.model.Timing.TimingRepeatComponent(); + copyElement(src, tgt); + tgt.setBounds(convertType(src.getBounds())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + if (src.hasCountMax()) + tgt.setCountMax(src.getCountMax()); + if (src.hasDuration()) + tgt.setDuration(src.getDuration()); + if (src.hasDurationMax()) + tgt.setDurationMax(src.getDurationMax()); + tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); + if (src.hasFrequency()) + tgt.setFrequency(src.getFrequency()); + if (src.hasFrequencyMax()) + tgt.setFrequencyMax(src.getFrequencyMax()); + if (src.hasPeriod()) + tgt.setPeriod(src.getPeriod()); + if (src.hasPeriodMax()) + tgt.setPeriodMax(src.getPeriodMax()); + tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); + for (Enumeration t : src.getWhen()) + tgt.setWhen(convertEventTiming(t.getValue())); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case S: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.S; + case MIN: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MIN; + case H: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.H; + case D: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.D; + case WK: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.WK; + case MO: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MO; + case A: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.A; + default: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.r4.model.Timing.UnitsOfTime src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case S: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.S; + case MIN: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.MIN; + case H: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.H; + case D: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.D; + case WK: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.WK; + case MO: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.MO; + case A: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.A; + default: return org.hl7.fhir.dstu2016may.model.Timing.UnitsOfTime.NULL; + } + } + + private static org.hl7.fhir.r4.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.dstu2016may.model.Timing.EventTiming src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HS: return org.hl7.fhir.r4.model.Timing.EventTiming.HS; + case WAKE: return org.hl7.fhir.r4.model.Timing.EventTiming.WAKE; + case C: return org.hl7.fhir.r4.model.Timing.EventTiming.C; + case CM: return org.hl7.fhir.r4.model.Timing.EventTiming.CM; + case CD: return org.hl7.fhir.r4.model.Timing.EventTiming.CD; + case CV: return org.hl7.fhir.r4.model.Timing.EventTiming.CV; + case AC: return org.hl7.fhir.r4.model.Timing.EventTiming.AC; + case ACM: return org.hl7.fhir.r4.model.Timing.EventTiming.ACM; + case ACD: return org.hl7.fhir.r4.model.Timing.EventTiming.ACD; + case ACV: return org.hl7.fhir.r4.model.Timing.EventTiming.ACV; + case PC: return org.hl7.fhir.r4.model.Timing.EventTiming.PC; + case PCM: return org.hl7.fhir.r4.model.Timing.EventTiming.PCM; + case PCD: return org.hl7.fhir.r4.model.Timing.EventTiming.PCD; + case PCV: return org.hl7.fhir.r4.model.Timing.EventTiming.PCV; + default: return org.hl7.fhir.r4.model.Timing.EventTiming.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.r4.model.Timing.EventTiming src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HS: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.HS; + case WAKE: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.WAKE; + case C: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.C; + case CM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CM; + case CD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CD; + case CV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.CV; + case AC: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.AC; + case ACM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACM; + case ACD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACD; + case ACV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.ACV; + case PC: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PC; + case PCM: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCM; + case PCD: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCD; + case PCV: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.PCV; + default: return org.hl7.fhir.dstu2016may.model.Timing.EventTiming.NULL; + } + } + + public static org.hl7.fhir.r4.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.dstu2016may.model.SimpleQuantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.SimpleQuantity tgt = new org.hl7.fhir.r4.model.SimpleQuantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.r4.model.SimpleQuantity src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.SimpleQuantity tgt = new org.hl7.fhir.dstu2016may.model.SimpleQuantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Type convertType(org.hl7.fhir.dstu2016may.model.Type src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.dstu2016may.model.Base64BinaryType) + return convertBase64Binary((org.hl7.fhir.dstu2016may.model.Base64BinaryType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.BooleanType) + return convertBoolean((org.hl7.fhir.dstu2016may.model.BooleanType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.CodeType) + return convertCode((org.hl7.fhir.dstu2016may.model.CodeType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.DateType) + return convertDate((org.hl7.fhir.dstu2016may.model.DateType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.DateTimeType) + return convertDateTime((org.hl7.fhir.dstu2016may.model.DateTimeType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.DecimalType) + return convertDecimal((org.hl7.fhir.dstu2016may.model.DecimalType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.IdType) + return convertId((org.hl7.fhir.dstu2016may.model.IdType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.InstantType) + return convertInstant((org.hl7.fhir.dstu2016may.model.InstantType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.IntegerType) + return convertInteger((org.hl7.fhir.dstu2016may.model.IntegerType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.MarkdownType) + return convertMarkdown((org.hl7.fhir.dstu2016may.model.MarkdownType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.OidType) + return convertOid((org.hl7.fhir.dstu2016may.model.OidType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.PositiveIntType) + return convertPositiveInt((org.hl7.fhir.dstu2016may.model.PositiveIntType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.StringType) + return convertString((org.hl7.fhir.dstu2016may.model.StringType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.TimeType) + return convertTime((org.hl7.fhir.dstu2016may.model.TimeType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.UnsignedIntType) + return convertUnsignedInt((org.hl7.fhir.dstu2016may.model.UnsignedIntType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.UriType) + return convertUri((org.hl7.fhir.dstu2016may.model.UriType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.UuidType) + return convertUuid((org.hl7.fhir.dstu2016may.model.UuidType) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Extension) + return convertExtension((org.hl7.fhir.dstu2016may.model.Extension) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Narrative) + return convertNarrative((org.hl7.fhir.dstu2016may.model.Narrative) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Age) + return convertAge((org.hl7.fhir.dstu2016may.model.Age) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Annotation) + return convertAnnotation((org.hl7.fhir.dstu2016may.model.Annotation) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Attachment) + return convertAttachment((org.hl7.fhir.dstu2016may.model.Attachment) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.CodeableConcept) + return convertCodeableConcept((org.hl7.fhir.dstu2016may.model.CodeableConcept) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Coding) + return convertCoding((org.hl7.fhir.dstu2016may.model.Coding) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Count) + return convertCount((org.hl7.fhir.dstu2016may.model.Count) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Distance) + return convertDistance((org.hl7.fhir.dstu2016may.model.Distance) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Duration) + return convertDuration((org.hl7.fhir.dstu2016may.model.Duration) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Identifier) + return convertIdentifier((org.hl7.fhir.dstu2016may.model.Identifier) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Money) + return convertMoney((org.hl7.fhir.dstu2016may.model.Money) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Period) + return convertPeriod((org.hl7.fhir.dstu2016may.model.Period) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Quantity) + return convertQuantity((org.hl7.fhir.dstu2016may.model.Quantity) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Range) + return convertRange((org.hl7.fhir.dstu2016may.model.Range) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Ratio) + return convertRatio((org.hl7.fhir.dstu2016may.model.Ratio) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Reference) + return convertReference((org.hl7.fhir.dstu2016may.model.Reference) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.SampledData) + return convertSampledData((org.hl7.fhir.dstu2016may.model.SampledData) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Signature) + return convertSignature((org.hl7.fhir.dstu2016may.model.Signature) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Address) + return convertAddress((org.hl7.fhir.dstu2016may.model.Address) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.ContactPoint) + return convertContactPoint((org.hl7.fhir.dstu2016may.model.ContactPoint) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.ElementDefinition) + return convertElementDefinition((org.hl7.fhir.dstu2016may.model.ElementDefinition) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.HumanName) + return convertHumanName((org.hl7.fhir.dstu2016may.model.HumanName) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Meta) + return convertMeta((org.hl7.fhir.dstu2016may.model.Meta) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Timing) + return convertTiming((org.hl7.fhir.dstu2016may.model.Timing) src); + throw new Error("Unknown type "+src.fhirType()); + } + + public static org.hl7.fhir.dstu2016may.model.Type convertType(org.hl7.fhir.r4.model.Type src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.r4.model.Base64BinaryType) + return convertBase64Binary((org.hl7.fhir.r4.model.Base64BinaryType) src); + if (src instanceof org.hl7.fhir.r4.model.BooleanType) + return convertBoolean((org.hl7.fhir.r4.model.BooleanType) src); + if (src instanceof org.hl7.fhir.r4.model.CodeType) + return convertCode((org.hl7.fhir.r4.model.CodeType) src); + if (src instanceof org.hl7.fhir.r4.model.DateType) + return convertDate((org.hl7.fhir.r4.model.DateType) src); + if (src instanceof org.hl7.fhir.r4.model.DateTimeType) + return convertDateTime((org.hl7.fhir.r4.model.DateTimeType) src); + if (src instanceof org.hl7.fhir.r4.model.DecimalType) + return convertDecimal((org.hl7.fhir.r4.model.DecimalType) src); + if (src instanceof org.hl7.fhir.r4.model.IdType) + return convertId((org.hl7.fhir.r4.model.IdType) src); + if (src instanceof org.hl7.fhir.r4.model.InstantType) + return convertInstant((org.hl7.fhir.r4.model.InstantType) src); + if (src instanceof org.hl7.fhir.r4.model.IntegerType) + return convertInteger((org.hl7.fhir.r4.model.IntegerType) src); + if (src instanceof org.hl7.fhir.r4.model.MarkdownType) + return convertMarkdown((org.hl7.fhir.r4.model.MarkdownType) src); + if (src instanceof org.hl7.fhir.r4.model.OidType) + return convertOid((org.hl7.fhir.r4.model.OidType) src); + if (src instanceof org.hl7.fhir.r4.model.PositiveIntType) + return convertPositiveInt((org.hl7.fhir.r4.model.PositiveIntType) src); + if (src instanceof org.hl7.fhir.r4.model.StringType) + return convertString((org.hl7.fhir.r4.model.StringType) src); + if (src instanceof org.hl7.fhir.r4.model.TimeType) + return convertTime((org.hl7.fhir.r4.model.TimeType) src); + if (src instanceof org.hl7.fhir.r4.model.UnsignedIntType) + return convertUnsignedInt((org.hl7.fhir.r4.model.UnsignedIntType) src); + if (src instanceof org.hl7.fhir.r4.model.UriType) + return convertUri((org.hl7.fhir.r4.model.UriType) src); + if (src instanceof org.hl7.fhir.r4.model.UuidType) + return convertUuid((org.hl7.fhir.r4.model.UuidType) src); + if (src instanceof org.hl7.fhir.r4.model.Extension) + return convertExtension((org.hl7.fhir.r4.model.Extension) src); + if (src instanceof org.hl7.fhir.r4.model.Narrative) + return convertNarrative((org.hl7.fhir.r4.model.Narrative) src); + if (src instanceof org.hl7.fhir.r4.model.Age) + return convertAge((org.hl7.fhir.r4.model.Age) src); + if (src instanceof org.hl7.fhir.r4.model.Annotation) + return convertAnnotation((org.hl7.fhir.r4.model.Annotation) src); + if (src instanceof org.hl7.fhir.r4.model.Attachment) + return convertAttachment((org.hl7.fhir.r4.model.Attachment) src); + if (src instanceof org.hl7.fhir.r4.model.CodeableConcept) + return convertCodeableConcept((org.hl7.fhir.r4.model.CodeableConcept) src); + if (src instanceof org.hl7.fhir.r4.model.Coding) + return convertCoding((org.hl7.fhir.r4.model.Coding) src); + if (src instanceof org.hl7.fhir.r4.model.Count) + return convertCount((org.hl7.fhir.r4.model.Count) src); + if (src instanceof org.hl7.fhir.r4.model.Distance) + return convertDistance((org.hl7.fhir.r4.model.Distance) src); + if (src instanceof org.hl7.fhir.r4.model.Duration) + return convertDuration((org.hl7.fhir.r4.model.Duration) src); + if (src instanceof org.hl7.fhir.r4.model.Identifier) + return convertIdentifier((org.hl7.fhir.r4.model.Identifier) src); + if (src instanceof org.hl7.fhir.r4.model.Money) + return convertMoney((org.hl7.fhir.r4.model.Money) src); + if (src instanceof org.hl7.fhir.r4.model.Period) + return convertPeriod((org.hl7.fhir.r4.model.Period) src); + if (src instanceof org.hl7.fhir.r4.model.Quantity) + return convertQuantity((org.hl7.fhir.r4.model.Quantity) src); + if (src instanceof org.hl7.fhir.r4.model.Range) + return convertRange((org.hl7.fhir.r4.model.Range) src); + if (src instanceof org.hl7.fhir.r4.model.Ratio) + return convertRatio((org.hl7.fhir.r4.model.Ratio) src); + if (src instanceof org.hl7.fhir.r4.model.Reference) + return convertReference((org.hl7.fhir.r4.model.Reference) src); + if (src instanceof org.hl7.fhir.r4.model.SampledData) + return convertSampledData((org.hl7.fhir.r4.model.SampledData) src); + if (src instanceof org.hl7.fhir.r4.model.Signature) + return convertSignature((org.hl7.fhir.r4.model.Signature) src); + if (src instanceof org.hl7.fhir.r4.model.Address) + return convertAddress((org.hl7.fhir.r4.model.Address) src); + if (src instanceof org.hl7.fhir.r4.model.ContactPoint) + return convertContactPoint((org.hl7.fhir.r4.model.ContactPoint) src); + if (src instanceof org.hl7.fhir.r4.model.ElementDefinition) + return convertElementDefinition((org.hl7.fhir.r4.model.ElementDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.HumanName) + return convertHumanName((org.hl7.fhir.r4.model.HumanName) src); + if (src instanceof org.hl7.fhir.r4.model.Meta) + return convertMeta((org.hl7.fhir.r4.model.Meta) src); + if (src instanceof org.hl7.fhir.r4.model.Timing) + return convertTiming((org.hl7.fhir.r4.model.Timing) src); + throw new Error("Unknown type "+src.fhirType()); + } + + private static void copyDomainResource(org.hl7.fhir.dstu2016may.model.DomainResource src, org.hl7.fhir.r4.model.DomainResource tgt) throws FHIRException { + copyResource(src, tgt); + tgt.setText(convertNarrative(src.getText())); + for (org.hl7.fhir.dstu2016may.model.Resource t : src.getContained()) + tgt.addContained(convertResource(t)); + for (org.hl7.fhir.dstu2016may.model.Extension t : src.getExtension()) + tgt.addExtension(convertExtension(t)); + for (org.hl7.fhir.dstu2016may.model.Extension t : src.getModifierExtension()) + tgt.addModifierExtension(convertExtension(t)); + } + private static void copyDomainResource(org.hl7.fhir.r4.model.DomainResource src, org.hl7.fhir.dstu2016may.model.DomainResource tgt) throws FHIRException { + copyResource(src, tgt); + if (src.hasText()) + tgt.setText(convertNarrative(src.getText())); + for (org.hl7.fhir.r4.model.Resource t : src.getContained()) + tgt.addContained(convertResource(t)); + for (org.hl7.fhir.r4.model.Extension t : src.getExtension()) + tgt.addExtension(convertExtension(t)); + for (org.hl7.fhir.r4.model.Extension t : src.getModifierExtension()) + tgt.addModifierExtension(convertExtension(t)); + } + public static org.hl7.fhir.r4.model.Parameters convertParameters(org.hl7.fhir.dstu2016may.model.Parameters src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Parameters tgt = new org.hl7.fhir.r4.model.Parameters(); + copyResource(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent t : src.getParameter()) + tgt.addParameter(convertParametersParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Parameters convertParameters(org.hl7.fhir.r4.model.Parameters src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Parameters tgt = new org.hl7.fhir.dstu2016may.model.Parameters(); + copyResource(src, tgt); + for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getParameter()) + tgt.addParameter(convertParametersParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + tgt.setResource(convertResource(src.getResource())); + for (org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent t : src.getPart()) + tgt.addPart(convertParametersParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.Parameters.ParametersParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + tgt.setResource(convertResource(src.getResource())); + for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getPart()) + tgt.addPart(convertParametersParameterComponent(t)); + return tgt; + } + + private static void copyResource(org.hl7.fhir.dstu2016may.model.Resource src, org.hl7.fhir.r4.model.Resource tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + tgt.setMeta(convertMeta(src.getMeta())); + if (src.hasImplicitRules()) + tgt.setImplicitRules(src.getImplicitRules()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + } + private static void copyResource(org.hl7.fhir.r4.model.Resource src, org.hl7.fhir.dstu2016may.model.Resource tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + if (src.hasMeta()) + tgt.setMeta(convertMeta(src.getMeta())); + if (src.hasImplicitRules()) + tgt.setImplicitRules(src.getImplicitRules()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + } + + public static org.hl7.fhir.r4.model.Binary convertBinary(org.hl7.fhir.dstu2016may.model.Binary src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Binary tgt = new org.hl7.fhir.r4.model.Binary(); + copyResource(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setContent(src.getContent()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Binary convertBinary(org.hl7.fhir.r4.model.Binary src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Binary tgt = new org.hl7.fhir.dstu2016may.model.Binary(); + copyResource(src, tgt); + tgt.setContentType(src.getContentType()); + tgt.setContent(src.getContent()); + return tgt; + } + + + public static org.hl7.fhir.r4.model.Bundle convertBundle(org.hl7.fhir.dstu2016may.model.Bundle src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle tgt = new org.hl7.fhir.r4.model.Bundle(); + copyResource(src, tgt); + tgt.setType(convertBundleType(src.getType())); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + for (org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent t : src.getEntry()) + tgt.addEntry(convertBundleEntryComponent(t)); + tgt.setSignature(convertSignature(src.getSignature())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle convertBundle(org.hl7.fhir.r4.model.Bundle src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle tgt = new org.hl7.fhir.dstu2016may.model.Bundle(); + copyResource(src, tgt); + tgt.setType(convertBundleType(src.getType())); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + for (org.hl7.fhir.r4.model.Bundle.BundleEntryComponent t : src.getEntry()) + tgt.addEntry(convertBundleEntryComponent(t)); + tgt.setSignature(convertSignature(src.getSignature())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Bundle.BundleType convertBundleType(org.hl7.fhir.dstu2016may.model.Bundle.BundleType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENT: return org.hl7.fhir.r4.model.Bundle.BundleType.DOCUMENT; + case MESSAGE: return org.hl7.fhir.r4.model.Bundle.BundleType.MESSAGE; + case TRANSACTION: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTION; + case TRANSACTIONRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTIONRESPONSE; + case BATCH: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCH; + case BATCHRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCHRESPONSE; + case HISTORY: return org.hl7.fhir.r4.model.Bundle.BundleType.HISTORY; + case SEARCHSET: return org.hl7.fhir.r4.model.Bundle.BundleType.SEARCHSET; + case COLLECTION: return org.hl7.fhir.r4.model.Bundle.BundleType.COLLECTION; + default: return org.hl7.fhir.r4.model.Bundle.BundleType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Bundle.BundleType convertBundleType(org.hl7.fhir.r4.model.Bundle.BundleType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENT: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.DOCUMENT; + case MESSAGE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.MESSAGE; + case TRANSACTION: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.TRANSACTION; + case TRANSACTIONRESPONSE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.TRANSACTIONRESPONSE; + case BATCH: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.BATCH; + case BATCHRESPONSE: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.BATCHRESPONSE; + case HISTORY: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.HISTORY; + case SEARCHSET: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.SEARCHSET; + case COLLECTION: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.COLLECTION; + default: return org.hl7.fhir.dstu2016may.model.Bundle.BundleType.NULL; + } + } + + public static org.hl7.fhir.r4.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleLinkComponent(); + copyElement(src, tgt); + tgt.setRelation(src.getRelation()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.r4.model.Bundle.BundleLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent(); + copyElement(src, tgt); + tgt.setRelation(src.getRelation()); + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + if (src.hasFullUrl()) + tgt.setFullUrl(src.getFullUrl()); + tgt.setResource(convertResource(src.getResource())); + tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); + tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); + tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + if (src.hasFullUrl()) + tgt.setFullUrl(src.getFullUrl()); + tgt.setResource(convertResource(src.getResource())); + tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); + tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); + tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent(); + copyElement(src, tgt); + tgt.setMode(convertSearchEntryMode(src.getMode())); + if (src.hasScore()) + tgt.setScore(src.getScore()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntrySearchComponent(); + copyElement(src, tgt); + tgt.setMode(convertSearchEntryMode(src.getMode())); + if (src.hasScore()) + tgt.setScore(src.getScore()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MATCH: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.MATCH; + case INCLUDE: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.INCLUDE; + case OUTCOME: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.OUTCOME; + default: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.r4.model.Bundle.SearchEntryMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MATCH: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.MATCH; + case INCLUDE: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.INCLUDE; + case OUTCOME: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.OUTCOME; + default: return org.hl7.fhir.dstu2016may.model.Bundle.SearchEntryMode.NULL; + } + } + + public static org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent(); + copyElement(src, tgt); + tgt.setMethod(convertHTTPVerb(src.getMethod())); + tgt.setUrl(src.getUrl()); + if (src.hasIfNoneMatch()) + tgt.setIfNoneMatch(src.getIfNoneMatch()); + if (src.hasIfModifiedSince()) + tgt.setIfModifiedSince(src.getIfModifiedSince()); + if (src.hasIfMatch()) + tgt.setIfMatch(src.getIfMatch()); + if (src.hasIfNoneExist()) + tgt.setIfNoneExist(src.getIfNoneExist()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryRequestComponent(); + copyElement(src, tgt); + tgt.setMethod(convertHTTPVerb(src.getMethod())); + tgt.setUrl(src.getUrl()); + if (src.hasIfNoneMatch()) + tgt.setIfNoneMatch(src.getIfNoneMatch()); + if (src.hasIfModifiedSince()) + tgt.setIfModifiedSince(src.getIfModifiedSince()); + if (src.hasIfMatch()) + tgt.setIfMatch(src.getIfMatch()); + if (src.hasIfNoneExist()) + tgt.setIfNoneExist(src.getIfNoneExist()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GET: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.GET; + case POST: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.POST; + case PUT: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.PUT; + case DELETE: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.DELETE; + default: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.r4.model.Bundle.HTTPVerb src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GET: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.GET; + case POST: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.POST; + case PUT: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.PUT; + case DELETE: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.DELETE; + default: return org.hl7.fhir.dstu2016may.model.Bundle.HTTPVerb.NULL; + } + } + + public static org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent(); + copyElement(src, tgt); + tgt.setStatus(src.getStatus()); + if (src.hasLocation()) + tgt.setLocation(src.getLocation()); + if (src.hasEtag()) + tgt.setEtag(src.getEtag()); + if (src.hasLastModified()) + tgt.setLastModified(src.getLastModified()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.dstu2016may.model.Bundle.BundleEntryResponseComponent(); + copyElement(src, tgt); + tgt.setStatus(src.getStatus()); + if (src.hasLocation()) + tgt.setLocation(src.getLocation()); + if (src.hasEtag()) + tgt.setEtag(src.getEtag()); + if (src.hasLastModified()) + tgt.setLastModified(src.getLastModified()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Enumerations.PublicationStatus convertConformanceResourceStatus(org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.RETIRED; + default: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.NULL; + } + } + + public static org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus convertConformanceResourceStatus(org.hl7.fhir.r4.model.Enumerations.PublicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.RETIRED; + default: return org.hl7.fhir.dstu2016may.model.Enumerations.ConformanceResourceStatus.NULL; + } + } + + public static org.hl7.fhir.r4.model.CodeSystem convertCodeSystem(org.hl7.fhir.dstu2016may.model.CodeSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CodeSystem tgt = new org.hl7.fhir.r4.model.CodeSystem(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent t : src.getContact()) + tgt.addContact(convertCodeSystemContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasCaseSensitive()) + tgt.setCaseSensitive(src.getCaseSensitive()); + if (src.hasValueSet()) + tgt.setValueSet(src.getValueSet()); + if (src.hasCompositional()) + tgt.setCompositional(src.getCompositional()); + if (src.hasVersionNeeded()) + tgt.setVersionNeeded(src.getVersionNeeded()); + tgt.setContent(convertCodeSystemContentMode(src.getContent())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) + tgt.addFilter(convertCodeSystemFilterComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent t : src.getProperty()) + tgt.addProperty(convertPropertyComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + + private static boolean isJurisdiction(CodeableConcept t) { + return t.hasCoding() && ("http://unstats.un.org/unsd/methods/m49/m49.htm".equals(t.getCoding().get(0).getSystem()) || "urn:iso:std:iso:3166".equals(t.getCoding().get(0).getSystem()) + || "https://www.usps.com/".equals(t.getCoding().get(0).getSystem())); + } + + public static org.hl7.fhir.r4.model.UsageContext convertCodeableConceptToUsageContext(org.hl7.fhir.dstu2016may.model.CodeableConcept t) throws FHIRException { + org.hl7.fhir.r4.model.UsageContext result = new org.hl7.fhir.r4.model.UsageContext(); + // todo: set type.. + result.setValue(convertCodeableConcept(t)); + return result; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem convertCodeSystem(org.hl7.fhir.r4.model.CodeSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertCodeSystemContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasCaseSensitive()) + tgt.setCaseSensitive(src.getCaseSensitive()); + if (src.hasValueSet()) + tgt.setValueSet(src.getValueSet()); + if (src.hasCompositional()) + tgt.setCompositional(src.getCompositional()); + if (src.hasVersionNeeded()) + tgt.setVersionNeeded(src.getVersionNeeded()); + tgt.setContent(convertCodeSystemContentMode(src.getContent())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + for (org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) + tgt.addFilter(convertCodeSystemFilterComponent(t)); + for (org.hl7.fhir.r4.model.CodeSystem.PropertyComponent t : src.getProperty()) + tgt.addProperty(convertPropertyComponent(t)); + for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTPRESENT: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; + case EXAMPLAR: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.EXAMPLE; + case FRAGMENT: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.FRAGMENT; + case COMPLETE: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.COMPLETE; + default: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.NULL; + } +} + + private static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTPRESENT: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; + case EXAMPLE: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.EXAMPLAR; + case FRAGMENT: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.FRAGMENT; + case COMPLETE: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.COMPLETE; + default: return org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContentMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.ContactDetail convertCodeSystemContactComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent convertCodeSystemContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getOperator()) + try { + tgt.addOperator(CodeSystem.FilterOperator.fromCode(t.getValue())); + } catch (org.hl7.fhir.exceptions.FHIRException e) { + throw new FHIRException(e); + } + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemFilterComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (Enumeration t : src.getOperator()) + tgt.addOperator(t.getValue().toCode()); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeSystem.PropertyComponent convertPropertyComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CodeSystem.PropertyComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.PropertyComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setType(convertPropertyType(src.getType())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent convertPropertyComponent(org.hl7.fhir.r4.model.CodeSystem.PropertyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.CodeSystemPropertyComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setType(convertPropertyType(src.getType())); + return tgt; + } + + private static org.hl7.fhir.r4.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODE: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.CODE; + case CODING: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.CODING; + case STRING: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.STRING; + case INTEGER: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.INTEGER; + case BOOLEAN: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.BOOLEAN; + case DATETIME: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.DATETIME; + default: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.NULL; + } +} + + private static org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.r4.model.CodeSystem.PropertyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODE: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.CODE; + case CODING: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.CODING; + case STRING: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.STRING; + case INTEGER: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.INTEGER; + case BOOLEAN: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.BOOLEAN; + case DATETIME: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.DATETIME; + default: return org.hl7.fhir.dstu2016may.model.CodeSystem.PropertyType.NULL; + } +} + + public static org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); + for (ConceptDefinitionPropertyComponent t : src.getProperty()) + tgt.addProperty(convertConceptPropertyComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); + for (org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent t : src.getProperty()) + tgt.addProperty(convertConceptPropertyComponent(t)); + for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent tgt = new org.hl7.fhir.dstu2016may.model.CodeSystem.ConceptDefinitionPropertyComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu2016may.model.CompartmentDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CompartmentDefinition tgt = new org.hl7.fhir.r4.model.CompartmentDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent t : src.getContact()) + tgt.addContact(convertCompartmentDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + tgt.setCode(convertCompartmentType(src.getCode())); + tgt.setSearch(src.getSearch()); + for (org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) + tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.r4.model.CompartmentDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertCompartmentDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + tgt.setCode(convertCompartmentType(src.getCode())); + tgt.setSearch(src.getSearch()); + for (org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) + tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.PATIENT; + case ENCOUNTER: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.ENCOUNTER; + case RELATEDPERSON: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; + case PRACTITIONER: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.DEVICE; + default: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.NULL; + } +} + + private static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.PATIENT; + case ENCOUNTER: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.ENCOUNTER; + case RELATEDPERSON: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; + case PRACTITIONER: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.DEVICE; + default: return org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentType.NULL; + } +} + + public static org.hl7.fhir.r4.model.ContactDetail convertCompartmentDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent convertCompartmentDefinitionContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getParam()) + tgt.addParam(t.getValue()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.r4.model.StringType t : src.getParam()) + tgt.addParam(t.getValue()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + + public static org.hl7.fhir.r4.model.ConceptMap convertConceptMap(org.hl7.fhir.dstu2016may.model.ConceptMap src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ConceptMap tgt = new org.hl7.fhir.r4.model.ConceptMap(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent t : src.getContact()) + tgt.addContact(convertConceptMapContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + tgt.setSource(convertType(src.getSource())); + tgt.setTarget(convertType(src.getTarget())); + for (org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent t : src.getElement()) { + List ws = convertSourceElementComponent(t); + for (SourceElementComponentWrapper w : ws) + getGroup(tgt, w.source, w.target).addElement(w.comp); + } + return tgt; + } + + private static ConceptMapGroupComponent getGroup(ConceptMap map, String srcs, String tgts) { + for (ConceptMapGroupComponent grp : map.getGroup()) { + if (grp.getSource().equals(srcs) && grp.getTarget().equals(tgts)) + return grp; + } + ConceptMapGroupComponent grp = map.addGroup(); + grp.setSource(srcs); + grp.setTarget(tgts); + return grp; + } + + + public static org.hl7.fhir.dstu2016may.model.ConceptMap convertConceptMap(org.hl7.fhir.r4.model.ConceptMap src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ConceptMap tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertConceptMapContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + tgt.setSource(convertType(src.getSource())); + tgt.setTarget(convertType(src.getTarget())); + for (org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g : src.getGroup()) + for (org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent t : g.getElement()) + tgt.addElement(convertSourceElementComponent(t, g)); + return tgt; + } + + + public static org.hl7.fhir.r4.model.ContactDetail convertConceptMapContactComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent convertConceptMapContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.ConceptMapContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + private static class SourceElementComponentWrapper { + public SourceElementComponentWrapper(SourceElementComponent comp, String source, String target) { + super(); + this.source = source; + this.target = target; + this.comp = comp; + } + private String source; + private String target; + private org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent comp; + + } + public static List convertSourceElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent src) throws FHIRException { + List res = new ArrayList(); + if (src == null || src.isEmpty()) + return res; + for (org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent t : src.getTarget()) { + org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + tgt.addTarget(convertTargetElementComponent(t)); + res.add(new SourceElementComponentWrapper(tgt, src.getSystem(), t.getSystem())); + } + return res; + } + + public static org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent src, org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.SourceElementComponent(); + copyElement(src, tgt); + if (g.hasSource()) + tgt.setSystem(g.getSource()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + for (org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent t : src.getTarget()) + tgt.addTarget(convertTargetElementComponent(t, g)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); + if (src.hasComments()) + tgt.setComment(src.getComments()); + for (org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) + tgt.addDependsOn(convertOtherElementComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent t : src.getProduct()) + tgt.addProduct(convertOtherElementComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent src, org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent g) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.TargetElementComponent(); + copyElement(src, tgt); + if (g.hasTarget()) + tgt.setSystem(g.getTarget()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); + if (src.hasComment()) + tgt.setComments(src.getComment()); + for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) + tgt.addDependsOn(convertOtherElementComponent(t)); + for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getProduct()) + tgt.addProduct(convertOtherElementComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUIVALENT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; + case EQUAL: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUAL; + case WIDER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.WIDER; + case SUBSUMES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SUBSUMES; + case NARROWER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NARROWER; + case SPECIALIZES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; + case INEXACT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.INEXACT; + case UNMATCHED: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.UNMATCHED; + case DISJOINT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.DISJOINT; + default: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NULL; + } + } + + public static org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUIVALENT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; + case EQUAL: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.EQUAL; + case WIDER: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.WIDER; + case SUBSUMES: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.SUBSUMES; + case NARROWER: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.NARROWER; + case SPECIALIZES: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; + case INEXACT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.INEXACT; + case UNMATCHED: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.UNMATCHED; + case DISJOINT: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.DISJOINT; + default: return org.hl7.fhir.dstu2016may.model.Enumerations.ConceptMapEquivalence.NULL; + } + } + + public static org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getElement()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.dstu2016may.model.ConceptMap.OtherElementComponent(); + copyElement(src, tgt); + tgt.setElement(src.getProperty()); + tgt.setSystem(src.getSystem()); + tgt.setCode(src.getCode()); + return tgt; + } + + + public static org.hl7.fhir.r4.model.CapabilityStatement convertConformance(org.hl7.fhir.dstu2016may.model.Conformance src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement tgt = new org.hl7.fhir.r4.model.CapabilityStatement(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent t : src.getContact()) + tgt.addContact(convertConformanceContactComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + tgt.setKind(convertConformanceStatementKind(src.getKind())); + tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); + tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); + tgt.setFhirVersion(src.getFhirVersion()); + tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getFormat()) + tgt.addFormat(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent t : src.getRest()) + tgt.addRest(convertConformanceRestComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent t : src.getMessaging()) + tgt.addMessaging(convertConformanceMessagingComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent t : src.getDocument()) + tgt.addDocument(convertConformanceDocumentComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance convertConformance(org.hl7.fhir.r4.model.CapabilityStatement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance tgt = new org.hl7.fhir.dstu2016may.model.Conformance(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertConformanceContactComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + tgt.setKind(convertConformanceStatementKind(src.getKind())); + tgt.setSoftware(convertConformanceSoftwareComponent(src.getSoftware())); + tgt.setImplementation(convertConformanceImplementationComponent(src.getImplementation())); + tgt.setFhirVersion(src.getFhirVersion()); + tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); + for (org.hl7.fhir.r4.model.CodeType t : src.getFormat()) + tgt.addFormat(t.getValue()); + for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) + tgt.addRest(convertConformanceRestComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) + tgt.addMessaging(convertConformanceMessagingComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) + tgt.addDocument(convertConformanceDocumentComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind convertConformanceStatementKind(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; + case CAPABILITY: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; + case REQUIREMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; + default: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind convertConformanceStatementKind(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.INSTANCE; + case CAPABILITY: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.CAPABILITY; + case REQUIREMENTS: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.REQUIREMENTS; + default: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceStatementKind.NULL; + } + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NO: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NO; + case EXTENSIONS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; + case ELEMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.ELEMENTS; + case BOTH: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.BOTH; + default: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NO: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.NO; + case EXTENSIONS: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.EXTENSIONS; + case ELEMENTS: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.ELEMENTS; + case BOTH: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.BOTH; + default: return org.hl7.fhir.dstu2016may.model.Conformance.UnknownContentCode.NULL; + } + } + + public static org.hl7.fhir.r4.model.ContactDetail convertConformanceContactComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent convertConformanceContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasReleaseDate()) + tgt.setReleaseDate(src.getReleaseDate()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent convertConformanceSoftwareComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceSoftwareComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasReleaseDate()) + tgt.setReleaseDate(src.getReleaseDate()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent convertConformanceImplementationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceImplementationComponent(); + copyElement(src, tgt); + tgt.setDescription(src.getDescription()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent convertConformanceRestComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent(); + copyElement(src, tgt); + tgt.setMode(convertRestfulConformanceMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent t : src.getResource()) + tgt.addResource(convertConformanceRestResourceComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertSystemInteractionComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent t : src.getOperation()) + tgt.addOperation(convertConformanceRestOperationComponent(t)); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getCompartment()) + tgt.addCompartment(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent convertConformanceRestComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestComponent(); + copyElement(src, tgt); + tgt.setMode(convertRestfulConformanceMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + tgt.setSecurity(convertConformanceRestSecurityComponent(src.getSecurity())); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) + tgt.addResource(convertConformanceRestResourceComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertSystemInteractionComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) + tgt.addOperation(convertConformanceRestOperationComponent(t)); + for (org.hl7.fhir.r4.model.UriType t : src.getCompartment()) + tgt.addCompartment(t.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode convertRestfulConformanceMode(org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLIENT: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; + case SERVER: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.SERVER; + default: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode convertRestfulConformanceMode(org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLIENT: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.CLIENT; + case SERVER: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.SERVER; + default: return org.hl7.fhir.dstu2016may.model.Conformance.RestfulConformanceMode.NULL; + } + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); + copyElement(src, tgt); + if (src.hasCors()) + tgt.setCors(src.getCors()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getService()) + tgt.addService(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent t : src.getCertificate()) + tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent convertConformanceRestSecurityComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityComponent(); + copyElement(src, tgt); + if (src.hasCors()) + tgt.setCors(src.getCors()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getService()) + tgt.addService(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) + tgt.addCertificate(convertConformanceRestSecurityCertificateComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent convertConformanceRestSecurityCertificateComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestSecurityCertificateComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + for (org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertResourceInteractionComponent(t)); + tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); + if (src.hasReadHistory()) + tgt.setReadHistory(src.getReadHistory()); + if (src.hasUpdateCreate()) + tgt.setUpdateCreate(src.getUpdateCreate()); + if (src.hasConditionalCreate()) + tgt.setConditionalCreate(src.getConditionalCreate()); + if (src.hasConditionalUpdate()) + tgt.setConditionalUpdate(src.getConditionalUpdate()); + tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSearchInclude()) + tgt.addSearchInclude(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getSearchRevInclude()) + tgt.addSearchRevInclude(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent convertConformanceRestResourceComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + for (org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertResourceInteractionComponent(t)); + tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); + if (src.hasReadHistory()) + tgt.setReadHistory(src.getReadHistory()); + if (src.hasUpdateCreate()) + tgt.setUpdateCreate(src.getUpdateCreate()); + if (src.hasConditionalCreate()) + tgt.setConditionalCreate(src.getConditionalCreate()); + if (src.hasConditionalUpdate()) + tgt.setConditionalUpdate(src.getConditionalUpdate()); + tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); + for (org.hl7.fhir.r4.model.StringType t : src.getSearchInclude()) + tgt.addSearchInclude(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getSearchRevInclude()) + tgt.addSearchRevInclude(t.getValue()); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertConformanceRestResourceSearchParamComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOVERSION: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; + case VERSIONED: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; + case VERSIONEDUPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; + default: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOVERSION: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.NOVERSION; + case VERSIONED: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.VERSIONED; + case VERSIONEDUPDATE: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.VERSIONEDUPDATE; + default: return org.hl7.fhir.dstu2016may.model.Conformance.ResourceVersionPolicy.NULL; + } + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; + case SINGLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; + case MULTIPLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; + default: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.NOTSUPPORTED; + case SINGLE: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.SINGLE; + case MULTIPLE: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.MULTIPLE; + default: return org.hl7.fhir.dstu2016may.model.Conformance.ConditionalDeleteStatus.NULL; + } + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertTypeRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ResourceInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertTypeRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case READ: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.READ; + case VREAD: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.VREAD; + case UPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; + case DELETE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.DELETE; + case HISTORYINSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; + case HISTORYTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; + case CREATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.CREATE; + case SEARCHTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; + default: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case READ: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.READ; + case VREAD: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.VREAD; + case UPDATE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.UPDATE; + case DELETE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.DELETE; + case HISTORYINSTANCE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.HISTORYINSTANCE; + case HISTORYTYPE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.HISTORYTYPE; + case CREATE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.CREATE; + case SEARCHTYPE: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.SEARCHTYPE; + default: return org.hl7.fhir.dstu2016may.model.Conformance.TypeRestfulInteraction.NULL; + } + } + + public static org.hl7.fhir.r4.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NUMBER: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NUMBER; + case DATE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.DATE; + case STRING: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.STRING; + case TOKEN: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.TOKEN; + case REFERENCE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.REFERENCE; + case COMPOSITE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.COMPOSITE; + case QUANTITY: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.QUANTITY; + case URI: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.URI; + default: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NULL; + } + } + + public static org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.r4.model.Enumerations.SearchParamType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NUMBER: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.NUMBER; + case DATE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.DATE; + case STRING: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.STRING; + case TOKEN: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.TOKEN; + case REFERENCE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.REFERENCE; + case COMPOSITE: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.COMPOSITE; + case QUANTITY: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.QUANTITY; + case URI: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.URI; + default: return org.hl7.fhir.dstu2016may.model.Enumerations.SearchParamType.NULL; + } + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + tgt.setType(convertSearchParamType(src.getType())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent convertConformanceRestResourceSearchParamComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestResourceSearchParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + tgt.setType(convertSearchParamType(src.getType())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertSystemRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.SystemInteractionComponent(); + copyElement(src, tgt); + tgt.setCode(convertSystemRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TRANSACTION: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; + case SEARCHSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; + case HISTORYSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; + default: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TRANSACTION: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.TRANSACTION; + case SEARCHSYSTEM: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.SEARCHSYSTEM; + case HISTORYSYSTEM: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.HISTORYSYSTEM; + default: return org.hl7.fhir.dstu2016may.model.Conformance.SystemRestfulInteraction.NULL; + } + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent convertConformanceRestOperationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceRestOperationComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent t : src.getEndpoint()) + tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); + if (src.hasReliableCache()) + tgt.setReliableCache(src.getReliableCache()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent t : src.getEvent()) + tgt.addEvent(convertConformanceMessagingEventComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent convertConformanceMessagingComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) + tgt.addEndpoint(convertConformanceMessagingEndpointComponent(t)); + if (src.hasReliableCache()) + tgt.setReliableCache(src.getReliableCache()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) + tgt.addEvent(convertConformanceMessagingEventComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); + copyElement(src, tgt); + tgt.setProtocol(convertCoding(src.getProtocol())); + tgt.setAddress(src.getAddress()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent convertConformanceMessagingEndpointComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEndpointComponent(); + copyElement(src, tgt); + tgt.setProtocol(convertCoding(src.getProtocol())); + tgt.setAddress(src.getAddress()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); + copyElement(src, tgt); + tgt.setCode(convertCoding(src.getCode())); + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + tgt.setMode(convertConformanceEventMode(src.getMode())); + tgt.setFocus(src.getFocus()); + tgt.setRequest(convertReference(src.getRequest())); + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent convertConformanceMessagingEventComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceMessagingEventComponent(); + copyElement(src, tgt); + tgt.setCode(convertCoding(src.getCode())); + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + tgt.setMode(convertConformanceEventMode(src.getMode())); + tgt.setFocus(src.getFocus()); + tgt.setRequest(convertReference(src.getRequest())); + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.dstu2016may.model.Conformance.MessageSignificanceCategory.NULL; + } + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode convertConformanceEventMode(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SENDER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.SENDER; + case RECEIVER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.RECEIVER; + default: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode convertConformanceEventMode(org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SENDER: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.SENDER; + case RECEIVER: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.RECEIVER; + default: return org.hl7.fhir.dstu2016may.model.Conformance.ConformanceEventMode.NULL; + } + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent(); + copyElement(src, tgt); + tgt.setMode(convertDocumentMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent convertConformanceDocumentComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent tgt = new org.hl7.fhir.dstu2016may.model.Conformance.ConformanceDocumentComponent(); + copyElement(src, tgt); + tgt.setMode(convertDocumentMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRODUCER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.PRODUCER; + case CONSUMER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.CONSUMER; + default: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode convertDocumentMode(org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRODUCER: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.PRODUCER; + case CONSUMER: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.CONSUMER; + default: return org.hl7.fhir.dstu2016may.model.Conformance.DocumentMode.NULL; + } + } + + + public static org.hl7.fhir.r4.model.StructureDefinition convertDataElement(org.hl7.fhir.dstu2016may.model.DataElement src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent t : src.getContact()) + tgt.addContact(convertDataElementContactComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); +// tgt.setStringency(convertDataElementStringency(src.getStringency())); + for (org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent t : src.getMapping()) + tgt.addMapping(convertDataElementMappingComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) + tgt.getSnapshot().addElement(convertElementDefinition(t)); + tgt.setKind(StructureDefinitionKind.LOGICAL); + tgt.setAbstract(false); + tgt.setType(tgt.getName()); + tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/Element"); + tgt.setDerivation(org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION); + return tgt; + } + +// public static org.hl7.fhir.dstu2016may.model.DataElement convertDataElement(org.hl7.fhir.r4.model.DataElement src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu2016may.model.DataElement tgt = new org.hl7.fhir.dstu2016may.model.DataElement(); +// copyDomainResource(src, tgt); +// if (src.hasUrl()) +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) +// tgt.addIdentifier(convertIdentifier(t)); +// if (src.hasVersion()) +// tgt.setVersion(src.getVersion()); +// tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); +// if (src.hasExperimental()) +// tgt.setExperimental(src.getExperimental()); +// if (src.hasPublisher()) +// tgt.setPublisher(src.getPublisher()); +// if (src.hasDate()) +// tgt.setDate(src.getDate()); +// if (src.hasName()) +// tgt.setName(src.getName()); +// for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) +// tgt.addContact(convertDataElementContactComponent(t)); +// for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) +// if (t.hasValueCodeableConcept()) +// tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) +// tgt.addUseContext(convertCodeableConcept(t)); +// if (src.hasCopyright()) +// tgt.setCopyright(src.getCopyright()); +// tgt.setStringency(convertDataElementStringency(src.getStringency())); +// for (org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent t : src.getMapping()) +// tgt.addMapping(convertDataElementMappingComponent(t)); +// for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) +// tgt.addElement(convertElementDefinition(t)); +// return tgt; +// } +// +// private static org.hl7.fhir.r4.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case COMPARABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.COMPARABLE; +// case FULLYSPECIFIED: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FULLYSPECIFIED; +// case EQUIVALENT: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.EQUIVALENT; +// case CONVERTABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.CONVERTABLE; +// case SCALEABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.SCALEABLE; +// case FLEXIBLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FLEXIBLE; +// default: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.NULL; +// } +// } +// +// private static org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.r4.model.DataElement.DataElementStringency src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case COMPARABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.COMPARABLE; +// case FULLYSPECIFIED: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.FULLYSPECIFIED; +// case EQUIVALENT: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.EQUIVALENT; +// case CONVERTABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.CONVERTABLE; +// case SCALEABLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.SCALEABLE; +// case FLEXIBLE: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.FLEXIBLE; +// default: return org.hl7.fhir.dstu2016may.model.DataElement.DataElementStringency.NULL; +// } +// } + + public static org.hl7.fhir.r4.model.ContactDetail convertDataElementContactComponent(org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent convertDataElementContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent tgt = new org.hl7.fhir.dstu2016may.model.DataElement.DataElementContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + +// public static org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent src) throws FHIRException { +// if (src == null || src.isEmpty()) +// return null; +// org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.DataElement.DataElementMappingComponent(); +// copyElement(src, tgt); +// tgt.setIdentity(src.getIdentity()); +// if (src.hasUri()) +// tgt.setUri(src.getUri()); +// if (src.hasName()) +// tgt.setName(src.getName()); +// if (src.hasComment()) +// tgt.setComment(src.getComment()); +// return tgt; +// } + + public static org.hl7.fhir.r4.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.dstu2016may.model.ImplementationGuide src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide tgt = new org.hl7.fhir.r4.model.ImplementationGuide(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent t : src.getContact()) + tgt.addContact(convertImplementationGuideContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) + tgt.addDependency(convertImplementationGuideDependencyComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) + tgt.addPackage(convertImplementationGuidePackageComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) + tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getBinary()) + tgt.addBinary(t.getValue()); + tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.r4.model.ImplementationGuide src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertImplementationGuideContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) + tgt.addDependency(convertImplementationGuideDependencyComponent(t)); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) + tgt.addPackage(convertImplementationGuidePackageComponent(t)); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) + tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); + for (org.hl7.fhir.r4.model.UriType t : src.getBinary()) + tgt.addBinary(t.getValue()); + tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ContactDetail convertImplementationGuideContactComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent convertImplementationGuideContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent(); + copyElement(src, tgt); + tgt.setType(convertGuideDependencyType(src.getType())); + tgt.setUri(src.getUri()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideDependencyComponent(); + copyElement(src, tgt); + tgt.setType(convertGuideDependencyType(src.getType())); + tgt.setUri(src.getUri()); + return tgt; + } + + private static org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REFERENCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.REFERENCE; + case INCLUSION: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.INCLUSION; + default: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REFERENCE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.REFERENCE; + case INCLUSION: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.INCLUSION; + default: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuideDependencyType.NULL; + } + } + + public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) + tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) + tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); + copyElement(src, tgt); + tgt.setExample(src.getExample()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAcronym()) + tgt.setAcronym(src.getAcronym()); + tgt.setSource(convertType(src.getSource())); + if (src.hasExampleFor()) + tgt.setExampleFor(convertReference(src.getExampleFor())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); + copyElement(src, tgt); + tgt.setExample(src.getExample()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAcronym()) + tgt.setAcronym(src.getAcronym()); + tgt.setSource(convertType(src.getSource())); + if (src.hasExampleFor()) + tgt.setExampleFor(convertReference(src.getExampleFor())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuideGlobalComponent(); + copyElement(src, tgt); + tgt.setType(src.getType()); + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent(); + copyElement(src, tgt); + tgt.setSource(src.getSource()); + tgt.setTitle(src.getName()); + tgt.setKind(convertGuidePageKind(src.getKind())); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getType()) + tgt.addType(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getPackage()) + tgt.addPackage(t.getValue()); + if (src.hasFormat()) + tgt.setFormat(src.getFormat()); + for (org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) + tgt.addPage(convertImplementationGuidePageComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.dstu2016may.model.ImplementationGuide.ImplementationGuidePageComponent(); + copyElement(src, tgt); + tgt.setSource(src.getSource()); + tgt.setName(src.getTitle()); + tgt.setKind(convertGuidePageKind(src.getKind())); + for (org.hl7.fhir.r4.model.CodeType t : src.getType()) + tgt.addType(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getPackage()) + tgt.addPackage(t.getValue()); + if (src.hasFormat()) + tgt.setFormat(src.getFormat()); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) + tgt.addPage(convertImplementationGuidePageComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PAGE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.PAGE; + case EXAMPLE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.EXAMPLE; + case LIST: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.LIST; + case INCLUDE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.INCLUDE; + case DIRECTORY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DIRECTORY; + case DICTIONARY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DICTIONARY; + case TOC: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.TOC; + case RESOURCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.RESOURCE; + default: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PAGE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.PAGE; + case EXAMPLE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.EXAMPLE; + case LIST: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.LIST; + case INCLUDE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.INCLUDE; + case DIRECTORY: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.DIRECTORY; + case DICTIONARY: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.DICTIONARY; + case TOC: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.TOC; + case RESOURCE: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.RESOURCE; + default: return org.hl7.fhir.dstu2016may.model.ImplementationGuide.GuidePageKind.NULL; + } + } + + public static org.hl7.fhir.r4.model.NamingSystem convertNamingSystem(org.hl7.fhir.dstu2016may.model.NamingSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.NamingSystem tgt = new org.hl7.fhir.r4.model.NamingSystem(); + copyDomainResource(src, tgt); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertNamingSystemType(src.getKind())); + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent t : src.getContact()) + tgt.addContact(convertNamingSystemContactComponent(t)); + if (src.hasResponsible()) + tgt.setResponsible(src.getResponsible()); + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + for (org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) + tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); + tgt.setReplacedBy(convertReference(src.getReplacedBy())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.NamingSystem convertNamingSystem(org.hl7.fhir.r4.model.NamingSystem src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.NamingSystem tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem(); + copyDomainResource(src, tgt); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertNamingSystemType(src.getKind())); + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertNamingSystemContactComponent(t)); + if (src.hasResponsible()) + tgt.setResponsible(src.getResponsible()); + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + for (org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) + tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); + tgt.setReplacedBy(convertReference(src.getReplacedBy())); + return tgt; + } + + private static org.hl7.fhir.r4.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODESYSTEM: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.CODESYSTEM; + case IDENTIFIER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.IDENTIFIER; + case ROOT: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.ROOT; + default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODESYSTEM: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.CODESYSTEM; + case IDENTIFIER: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.IDENTIFIER; + case ROOT: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.ROOT; + default: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemType.NULL; + } + } + + public static org.hl7.fhir.r4.model.ContactDetail convertNamingSystemContactComponent(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent convertNamingSystemContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent(); + copyElement(src, tgt); + tgt.setType(convertNamingSystemIdentifierType(src.getType())); + tgt.setValue(src.getValue()); + if (src.hasPreferred()) + tgt.setPreferred(src.getPreferred()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemUniqueIdComponent(); + copyElement(src, tgt); + tgt.setType(convertNamingSystemIdentifierType(src.getType())); + tgt.setValue(src.getValue()); + if (src.hasPreferred()) + tgt.setPreferred(src.getPreferred()); + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OID; + case UUID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.UUID; + case URI: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.URI; + case OTHER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OTHER; + default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OID: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.OID; + case UUID: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.UUID; + case URI: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.URI; + case OTHER: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.OTHER; + default: return org.hl7.fhir.dstu2016may.model.NamingSystem.NamingSystemIdentifierType.NULL; + } + } + + public static org.hl7.fhir.r4.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.dstu2016may.model.OperationDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.OperationDefinition tgt = new org.hl7.fhir.r4.model.OperationDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertOperationKind(src.getKind())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent t : src.getContact()) + tgt.addContact(convertOperationDefinitionContactComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasIdempotent()) + tgt.setIdempotent(src.getIdempotent()); + tgt.setCode(src.getCode()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + tgt.setBase(convertReference(src.getBase())); + tgt.setSystem(src.getSystem()); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getType()) + tgt.addResource(t.getValue()); + tgt.setType(tgt.hasResource()); + tgt.setInstance(src.getInstance()); + for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) + tgt.addParameter(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.r4.model.OperationDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationDefinition tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setKind(convertOperationKind(src.getKind())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertOperationDefinitionContactComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasIdempotent()) + tgt.setIdempotent(src.getIdempotent()); + tgt.setCode(src.getCode()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + tgt.setBase(convertReference(src.getBase())); + tgt.setSystem(src.getSystem()); + if (src.getType()) + for (org.hl7.fhir.r4.model.CodeType t : src.getResource()) + tgt.addType(t.getValue()); + tgt.setInstance(src.getInstance()); + for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) + tgt.addParameter(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OPERATION: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.OPERATION; + case QUERY: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.QUERY; + default: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.r4.model.OperationDefinition.OperationKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OPERATION: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.OPERATION; + case QUERY: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.QUERY; + default: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationKind.NULL; + } + } + + public static org.hl7.fhir.r4.model.ContactDetail convertOperationDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent convertOperationDefinitionContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setUse(convertOperationParameterUse(src.getUse())); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasType()) + tgt.setType(src.getType()); + tgt.setSearchType(convertSearchParamType(src.getSearchType())); + tgt.setProfile(convertReference(src.getProfile())); + tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); + for (org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) + tgt.addPart(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setUse(convertOperationParameterUse(src.getUse())); + tgt.setMin(src.getMin()); + tgt.setMax(src.getMax()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasType()) + tgt.setType(src.getType()); + tgt.setSearchType(convertSearchParamType(src.getSearchType())); + tgt.setProfile(convertReference(src.getProfile())); + tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); + for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) + tgt.addPart(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.IN; + case OUT: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.OUT; + default: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.IN; + case OUT: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.OUT; + default: return org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationParameterUse.NULL; + } + } + + public static org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); + copyElement(src, tgt); + tgt.setStrength(convertBindingStrength(src.getStrength())); + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public static org.hl7.fhir.r4.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.dstu2016may.model.OperationOutcome src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.OperationOutcome tgt = new org.hl7.fhir.r4.model.OperationOutcome(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) + tgt.addIssue(convertOperationOutcomeIssueComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.r4.model.OperationOutcome src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationOutcome tgt = new org.hl7.fhir.dstu2016may.model.OperationOutcome(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) + tgt.addIssue(convertOperationOutcomeIssueComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent(); + copyElement(src, tgt); + tgt.setSeverity(convertIssueSeverity(src.getSeverity())); + tgt.setCode(convertIssueType(src.getCode())); + tgt.setDetails(convertCodeableConcept(src.getDetails())); + if (src.hasDiagnostics()) + tgt.setDiagnostics(src.getDiagnostics()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getLocation()) + tgt.addLocation(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getExpression()) + tgt.addExpression(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.dstu2016may.model.OperationOutcome.OperationOutcomeIssueComponent(); + copyElement(src, tgt); + tgt.setSeverity(convertIssueSeverity(src.getSeverity())); + tgt.setCode(convertIssueType(src.getCode())); + tgt.setDetails(convertCodeableConcept(src.getDetails())); + if (src.hasDiagnostics()) + tgt.setDiagnostics(src.getDiagnostics()); + for (org.hl7.fhir.r4.model.StringType t : src.getLocation()) + tgt.addLocation(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getExpression()) + tgt.addExpression(t.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FATAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.FATAL; + case ERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.ERROR; + case WARNING: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.WARNING; + case INFORMATION: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.INFORMATION; + default: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FATAL: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.FATAL; + case ERROR: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.ERROR; + case WARNING: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.WARNING; + case INFORMATION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.INFORMATION; + default: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueSeverity.NULL; + } + } + + private static org.hl7.fhir.r4.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVALID; + case STRUCTURE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.STRUCTURE; + case REQUIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.REQUIRED; + case VALUE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.VALUE; + case INVARIANT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVARIANT; + case SECURITY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SECURITY; + case LOGIN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOGIN; + case UNKNOWN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.UNKNOWN; + case EXPIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXPIRED; + case FORBIDDEN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.FORBIDDEN; + case SUPPRESSED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SUPPRESSED; + case PROCESSING: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.PROCESSING; + case NOTSUPPORTED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTSUPPORTED; + case DUPLICATE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.DUPLICATE; + case NOTFOUND: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTFOUND; + case TOOLONG: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOLONG; + case CODEINVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CODEINVALID; + case EXTENSION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXTENSION; + case TOOCOSTLY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOCOSTLY; + case BUSINESSRULE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.BUSINESSRULE; + case CONFLICT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CONFLICT; + case INCOMPLETE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INCOMPLETE; + case TRANSIENT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TRANSIENT; + case LOCKERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOCKERROR; + case NOSTORE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOSTORE; + case EXCEPTION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXCEPTION; + case TIMEOUT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TIMEOUT; + case THROTTLED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.THROTTLED; + case INFORMATIONAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INFORMATIONAL; + default: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.r4.model.OperationOutcome.IssueType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INVALID: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INVALID; + case STRUCTURE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.STRUCTURE; + case REQUIRED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.REQUIRED; + case VALUE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.VALUE; + case INVARIANT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INVARIANT; + case SECURITY: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.SECURITY; + case LOGIN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.LOGIN; + case UNKNOWN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.UNKNOWN; + case EXPIRED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXPIRED; + case FORBIDDEN: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.FORBIDDEN; + case SUPPRESSED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.SUPPRESSED; + case PROCESSING: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.PROCESSING; + case NOTSUPPORTED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOTSUPPORTED; + case DUPLICATE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.DUPLICATE; + case NOTFOUND: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOTFOUND; + case TOOLONG: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TOOLONG; + case CODEINVALID: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.CODEINVALID; + case EXTENSION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXTENSION; + case TOOCOSTLY: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TOOCOSTLY; + case BUSINESSRULE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.BUSINESSRULE; + case CONFLICT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.CONFLICT; + case INCOMPLETE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INCOMPLETE; + case TRANSIENT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TRANSIENT; + case LOCKERROR: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.LOCKERROR; + case NOSTORE: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NOSTORE; + case EXCEPTION: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.EXCEPTION; + case TIMEOUT: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.TIMEOUT; + case THROTTLED: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.THROTTLED; + case INFORMATIONAL: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.INFORMATIONAL; + default: return org.hl7.fhir.dstu2016may.model.OperationOutcome.IssueType.NULL; + } + } + + + public static org.hl7.fhir.r4.model.Questionnaire convertQuestionnaire(org.hl7.fhir.dstu2016may.model.Questionnaire src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Questionnaire tgt = new org.hl7.fhir.r4.model.Questionnaire(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addContact(convertQuestionnaireContactComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getConcept()) + tgt.addCode(convertCoding(t)); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getSubjectType()) + tgt.addSubjectType(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Questionnaire convertQuestionnaire(org.hl7.fhir.r4.model.Questionnaire src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Questionnaire tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setStatus(convertQuestionnaireStatus(src.getStatus())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (ContactDetail t : src.getContact()) + for (org.hl7.fhir.r4.model.ContactPoint t1 : t.getTelecom()) + tgt.addTelecom(convertContactPoint(t1)); + for (UsageContext t : src.getUseContext()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + for (org.hl7.fhir.r4.model.Coding t : src.getCode()) + tgt.addConcept(convertCoding(t)); + for (org.hl7.fhir.r4.model.CodeType t : src.getSubjectType()) + tgt.addSubjectType(t.getValue()); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ContactDetail convertQuestionnaireContactComponent(org.hl7.fhir.dstu2016may.model.ContactPoint src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + tgt.addTelecom(convertContactPoint(src)); + return tgt; + } + + + private static org.hl7.fhir.r4.model.Enumerations.PublicationStatus convertQuestionnaireStatus(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.DRAFT; + case PUBLISHED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.RETIRED; + default: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus convertQuestionnaireStatus(org.hl7.fhir.r4.model.Enumerations.PublicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.PUBLISHED; + case RETIRED: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.RETIRED; + default: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireStatus.NULL; + } + } + + public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getConcept()) + tgt.addCode(convertCoding(t)); + if (src.hasPrefix()) + tgt.setPrefix(src.getPrefix()); + if (src.hasText()) + tgt.setText(src.getText()); + tgt.setType(convertQuestionnaireItemType(src.getType())); + for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) + tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasRepeats()) + tgt.setRepeats(src.getRepeats()); + if (src.hasReadOnly()) + tgt.setReadOnly(src.getReadOnly()); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + tgt.setOptions(convertReference(src.getOptions())); + for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) + tgt.addOption(convertQuestionnaireItemOptionComponent(t)); + tgt.setInitial(convertType(src.getInitial())); + for (org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + for (org.hl7.fhir.r4.model.Coding t : src.getCode()) + tgt.addConcept(convertCoding(t)); + if (src.hasPrefix()) + tgt.setPrefix(src.getPrefix()); + if (src.hasText()) + tgt.setText(src.getText()); + tgt.setType(convertQuestionnaireItemType(src.getType())); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) + tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasRepeats()) + tgt.setRepeats(src.getRepeats()); + if (src.hasReadOnly()) + tgt.setReadOnly(src.getReadOnly()); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + tgt.setOptions(convertReference(src.getOptions())); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) + tgt.addOption(convertQuestionnaireItemOptionComponent(t)); + tgt.setInitial(convertType(src.getInitial())); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GROUP: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.GROUP; + case DISPLAY: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DISPLAY; + case QUESTION: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.QUESTION; + case BOOLEAN: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.BOOLEAN; + case DECIMAL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DECIMAL; + case INTEGER: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.INTEGER; + case DATE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATE; + case DATETIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATETIME; + case INSTANT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATETIME; + case TIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TIME; + case STRING: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.STRING; + case TEXT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TEXT; + case URL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.URL; + case CHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.CHOICE; + case OPENCHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; + case ATTACHMENT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; + case REFERENCE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.REFERENCE; + case QUANTITY: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.QUANTITY; + default: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GROUP: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.GROUP; + case DISPLAY: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DISPLAY; + case QUESTION: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.QUESTION; + case BOOLEAN: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.BOOLEAN; + case DECIMAL: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DECIMAL; + case INTEGER: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.INTEGER; + case DATE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DATE; + case DATETIME: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.DATETIME; + case TIME: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.TIME; + case STRING: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.STRING; + case TEXT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.TEXT; + case URL: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.URL; + case CHOICE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.CHOICE; + case OPENCHOICE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; + case ATTACHMENT: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; + case REFERENCE: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.REFERENCE; + case QUANTITY: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.QUANTITY; + default: return org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemType.NULL; + } + } + + public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); + copyElement(src, tgt); + tgt.setQuestion(src.getQuestion()); + if (src.hasAnswered()) + tgt.setHasAnswer(src.getAnswered()); + tgt.setAnswer(convertType(src.getAnswer())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); + copyElement(src, tgt); + tgt.setQuestion(src.getQuestion()); + if (src.hasHasAnswer()) + tgt.setAnswered(src.getHasAnswer()); + tgt.setAnswer(convertType(src.getAnswer())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.dstu2016may.model.Questionnaire.QuestionnaireItemOptionComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.QuestionnaireResponse tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); + tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setContext(convertReference(src.getEncounter())); + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasAuthored()) + tgt.setAuthored(src.getAuthored()); + tgt.setSource(convertReference(src.getSource())); + for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.r4.model.QuestionnaireResponse src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.QuestionnaireResponse tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse(); + copyDomainResource(src, tgt); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); + tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); + tgt.setSubject(convertReference(src.getSubject())); + tgt.setEncounter(convertReference(src.getContext())); + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasAuthored()) + tgt.setAuthored(src.getAuthored()); + tgt.setSource(convertReference(src.getSource())); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; + case AMENDED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; + default: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; + case AMENDED: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; + default: return org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; + } + } + + public static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + if (src.hasText()) + tgt.setText(src.getText()); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) + tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); + for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + if (src.hasText()) + tgt.setText(src.getText()); + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) + tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + for (org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.dstu2016may.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); + copyElement(src, tgt); + tgt.setValue(convertType(src.getValue())); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.SearchParameter convertSearchParameter(org.hl7.fhir.dstu2016may.model.SearchParameter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.SearchParameter tgt = new org.hl7.fhir.r4.model.SearchParameter(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent t : src.getContact()) + tgt.addContact(convertSearchParameterContactComponent(t)); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + tgt.setCode(src.getCode()); + tgt.addBase(src.getBase()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDescription(src.getDescription()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasXpath()) + tgt.setXpath(src.getXpath()); + tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); + for (org.hl7.fhir.dstu2016may.model.CodeType t : src.getTarget()) + tgt.addTarget(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.SearchParameter convertSearchParameter(org.hl7.fhir.r4.model.SearchParameter src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.SearchParameter tgt = new org.hl7.fhir.dstu2016may.model.SearchParameter(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertSearchParameterContactComponent(t)); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + tgt.setCode(src.getCode()); + for (org.hl7.fhir.r4.model.CodeType t : src.getBase()) + tgt.setBase(t.asStringValue()); + tgt.setType(convertSearchParamType(src.getType())); + tgt.setDescription(src.getDescription()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasXpath()) + tgt.setXpath(src.getXpath()); + tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); + for (org.hl7.fhir.r4.model.CodeType t : src.getTarget()) + tgt.addTarget(t.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NORMAL: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NORMAL; + case PHONETIC: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.PHONETIC; + case NEARBY: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NEARBY; + case DISTANCE: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.DISTANCE; + case OTHER: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.OTHER; + default: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.r4.model.SearchParameter.XPathUsageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NORMAL: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NORMAL; + case PHONETIC: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.PHONETIC; + case NEARBY: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NEARBY; + case DISTANCE: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.DISTANCE; + case OTHER: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.OTHER; + default: return org.hl7.fhir.dstu2016may.model.SearchParameter.XPathUsageType.NULL; + } + } + + public static org.hl7.fhir.r4.model.ContactDetail convertSearchParameterContactComponent(org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent convertSearchParameterContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent tgt = new org.hl7.fhir.dstu2016may.model.SearchParameter.SearchParameterContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.dstu2016may.model.StructureDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + if (src.hasDisplay()) + tgt.setTitle(src.getDisplay()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent t : src.getContact()) + tgt.addContact(convertStructureDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu2016may.model.Coding t : src.getCode()) + tgt.addKeyword(convertCoding(t)); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertStructureDefinitionMappingComponent(t)); + tgt.setKind(convertStructureDefinitionKind(src.getKind())); + tgt.setAbstract(src.getAbstract()); + tgt.setContextType(convertExtensionContext(src.getContextType())); + for (org.hl7.fhir.dstu2016may.model.StringType t : src.getContext()) + tgt.addContext(t.getValue()); + if (src.getDerivation() == org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.CONSTRAINT) + tgt.setType(src.getBaseType()); + else + tgt.setType(src.getId()); + if (src.hasBaseDefinition()) + tgt.setBaseDefinition(src.getBaseDefinition()); + tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); + if (src.hasSnapshot()) { + tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); + tgt.getSnapshot().getElementFirstRep().getType().clear(); + } + if (src.hasDifferential()) { + tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); + tgt.getDifferential().getElementFirstRep().getType().clear(); + } + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.r4.model.StructureDefinition src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.StructureDefinition tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setDisplay(src.getTitle()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertStructureDefinitionContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.Coding t : src.getKeyword()) + tgt.addCode(convertCoding(t)); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertStructureDefinitionMappingComponent(t)); + tgt.setKind(convertStructureDefinitionKind(src.getKind())); + tgt.setAbstract(src.getAbstract()); + tgt.setContextType(convertExtensionContext(src.getContextType())); + for (org.hl7.fhir.r4.model.StringType t : src.getContext()) + tgt.addContext(t.getValue()); + if (src.hasBaseDefinition()) + tgt.setBaseDefinition(src.getBaseDefinition()); + if (src.hasType() && src.getDerivation() == org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.CONSTRAINT) + tgt.setBaseType(src.getType()); + tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); + if (src.hasSnapshot()) + tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); + tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); + return tgt; + } + + private static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DATATYPE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; + case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.RESOURCE; + case LOGICAL: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.LOGICAL; + default: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRIMITIVETYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.DATATYPE; + case COMPLEXTYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.DATATYPE; + case RESOURCE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.RESOURCE; + case LOGICAL: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.LOGICAL; + default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionKind.NULL; + } + } + + private static org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.RESOURCE; + case DATATYPE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.DATATYPE; + case EXTENSION: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.EXTENSION; + default: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESOURCE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.RESOURCE; + case DATATYPE: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.DATATYPE; + case EXTENSION: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.EXTENSION; + default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.ExtensionContext.NULL; + } + } + + private static org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SPECIALIZATION: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; + case CONSTRAINT: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; + default: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SPECIALIZATION: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; + case CONSTRAINT: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; + default: return org.hl7.fhir.dstu2016may.model.StructureDefinition.TypeDerivationRule.NULL; + } + } + + public static org.hl7.fhir.r4.model.ContactDetail convertStructureDefinitionContactComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent convertStructureDefinitionContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComments()) + tgt.setComment(src.getComments()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + tgt.setIdentity(src.getIdentity()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComment()) + tgt.setComments(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionSnapshotComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.dstu2016may.model.StructureDefinition.StructureDefinitionDifferentialComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript convertTestScript(org.hl7.fhir.dstu2016may.model.TestScript src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript tgt = new org.hl7.fhir.r4.model.TestScript(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent t : src.getContact()) + tgt.addContact(convertTestScriptContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) + tgt.addOrigin(convertTestScriptOriginComponent(t)); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) + tgt.addDestination(convertTestScriptDestinationComponent(t)); + tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) + tgt.addFixture(convertTestScriptFixtureComponent(t)); + for (org.hl7.fhir.dstu2016may.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent t : src.getVariable()) + tgt.addVariable(convertTestScriptVariableComponent(t)); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent t : src.getRule()) + tgt.addRule(convertTestScriptRuleComponent(t)); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) + tgt.addRuleset(convertTestScriptRulesetComponent(t)); + tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent t : src.getTest()) + tgt.addTest(convertTestScriptTestComponent(t)); + tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript convertTestScript(org.hl7.fhir.r4.model.TestScript src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript tgt = new org.hl7.fhir.dstu2016may.model.TestScript(); + copyDomainResource(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertTestScriptContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) + tgt.addOrigin(convertTestScriptOriginComponent(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) + tgt.addDestination(convertTestScriptDestinationComponent(t)); + tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); + for (org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) + tgt.addFixture(convertTestScriptFixtureComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent t : src.getVariable()) + tgt.addVariable(convertTestScriptVariableComponent(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent t : src.getRule()) + tgt.addRule(convertTestScriptRuleComponent(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) + tgt.addRuleset(convertTestScriptRulesetComponent(t)); + tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); + for (org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent t : src.getTest()) + tgt.addTest(convertTestScriptTestComponent(t)); + tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ContactDetail convertTestScriptContactComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent convertTestScriptContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent(); + copyElement(src, tgt); + tgt.setIndex(src.getIndex()); + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptOriginComponent(); + copyElement(src, tgt); + tgt.setIndex(src.getIndex()); + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent(); + copyElement(src, tgt); + tgt.setIndex(src.getIndex()); + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptDestinationComponent(); + copyElement(src, tgt); + tgt.setIndex(src.getIndex()); + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) + tgt.addLink(convertTestScriptMetadataLinkComponent(t)); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) + tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) + tgt.addLink(convertTestScriptMetadataLinkComponent(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) + tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataLinkComponent(); + copyElement(src, tgt); + tgt.setUrl(src.getUrl()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent(); + copyElement(src, tgt); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasValidated()) + tgt.setValidated(src.getValidated()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.IntegerType t : src.getOrigin()) + tgt.addOrigin(t.getValue()); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getLink()) + tgt.addLink(t.getValue()); + tgt.setCapabilities(convertReference(src.getConformance())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptMetadataCapabilityComponent(); + copyElement(src, tgt); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasValidated()) + tgt.setValidated(src.getValidated()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.IntegerType t : src.getOrigin()) + tgt.addOrigin(t.getValue()); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + for (org.hl7.fhir.r4.model.UriType t : src.getLink()) + tgt.addLink(t.getValue()); + tgt.setConformance(convertReference(src.getCapabilities())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent(); + copyElement(src, tgt); + if (src.hasAutocreate()) + tgt.setAutocreate(src.getAutocreate()); + if (src.hasAutodelete()) + tgt.setAutodelete(src.getAutodelete()); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptFixtureComponent(); + copyElement(src, tgt); + if (src.hasAutocreate()) + tgt.setAutocreate(src.getAutocreate()); + if (src.hasAutodelete()) + tgt.setAutodelete(src.getAutodelete()); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDefaultValue()) + tgt.setDefaultValue(src.getDefaultValue()); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptVariableComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasDefaultValue()) + tgt.setDefaultValue(src.getDefaultValue()); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent(); + copyElement(src, tgt); + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent t : src.getParam()) + tgt.addParam(convertTestScriptRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleComponent(); + copyElement(src, tgt); + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.r4.model.TestScript.RuleParamComponent t : src.getParam()) + tgt.addParam(convertTestScriptRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.RuleParamComponent convertTestScriptRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.RuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.RuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent convertTestScriptRuleParamComponent(org.hl7.fhir.r4.model.TestScript.RuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent(); + copyElement(src, tgt); + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent t : src.getRule()) + tgt.addRule(convertTestScriptRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetComponent(); + copyElement(src, tgt); + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent t : src.getRule()) + tgt.addRule(convertTestScriptRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent convertTestScriptRulesetRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertTestScriptRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent convertTestScriptRulesetRuleComponent(org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertTestScriptRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent convertTestScriptRulesetRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent convertTestScriptRulesetRuleParamComponent(org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptRulesetRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.SetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.r4.model.TestScript.SetupActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent(); + copyElement(src, tgt); + tgt.setType(convertCoding(src.getType())); + if (src.hasResource()) + tgt.setResource(src.getResource()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setAccept(convertContentType(src.getAccept())); + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + if (src.hasEncodeRequestUrl()) + tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); + if (src.hasOrigin()) + tgt.setOrigin(src.getOrigin()); + if (src.hasParams()) + tgt.setParams(src.getParams()); + for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) + tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); + if (src.hasResponseId()) + tgt.setResponseId(src.getResponseId()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasTargetId()) + tgt.setTargetId(src.getTargetId()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationComponent(); + copyElement(src, tgt); + if (src.hasResource()) + tgt.setResource(src.getResource()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setAccept(convertContentType(src.getAccept())); + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + if (src.hasEncodeRequestUrl()) + tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); + if (src.hasOrigin()) + tgt.setOrigin(src.getOrigin()); + if (src.hasParams()) + tgt.setParams(src.getParams()); + for (org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) + tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); + if (src.hasResponseId()) + tgt.setResponseId(src.getResponseId()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasTargetId()) + tgt.setTargetId(src.getTargetId()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + private static org.hl7.fhir.r4.model.TestScript.ContentType convertContentType(org.hl7.fhir.dstu2016may.model.TestScript.ContentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XML: return org.hl7.fhir.r4.model.TestScript.ContentType.XML; + case JSON: return org.hl7.fhir.r4.model.TestScript.ContentType.JSON; + default: return org.hl7.fhir.r4.model.TestScript.ContentType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.TestScript.ContentType convertContentType(org.hl7.fhir.r4.model.TestScript.ContentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XML: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.XML; + case JSON: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.JSON; + default: return org.hl7.fhir.dstu2016may.model.TestScript.ContentType.NULL; + } + } + + public static org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent(); + copyElement(src, tgt); + tgt.setField(src.getField()); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionOperationRequestHeaderComponent(); + copyElement(src, tgt); + tgt.setField(src.getField()); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setDirection(convertAssertionDirectionType(src.getDirection())); + if (src.hasCompareToSourceId()) + tgt.setCompareToSourceId(src.getCompareToSourceId()); + if (src.hasCompareToSourcePath()) + tgt.setCompareToSourcePath(src.getCompareToSourcePath()); + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasMinimumId()) + tgt.setMinimumId(src.getMinimumId()); + if (src.hasNavigationLinks()) + tgt.setNavigationLinks(src.getNavigationLinks()); + tgt.setOperator(convertAssertionOperatorType(src.getOperator())); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasResource()) + tgt.setResource(src.getResource()); + tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); + if (src.hasResponseCode()) + tgt.setResponseCode(src.getResponseCode()); + tgt.setRule(convertSetupActionAssertRuleComponent(src.getRule())); + tgt.setRuleset(convertSetupActionAssertRulesetComponent(src.getRuleset())); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasValidateProfileId()) + tgt.setValidateProfileId(src.getValidateProfileId()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasWarningOnly()) + tgt.setWarningOnly(src.getWarningOnly()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + tgt.setDirection(convertAssertionDirectionType(src.getDirection())); + if (src.hasCompareToSourceId()) + tgt.setCompareToSourceId(src.getCompareToSourceId()); + if (src.hasCompareToSourcePath()) + tgt.setCompareToSourcePath(src.getCompareToSourcePath()); + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasMinimumId()) + tgt.setMinimumId(src.getMinimumId()); + if (src.hasNavigationLinks()) + tgt.setNavigationLinks(src.getNavigationLinks()); + tgt.setOperator(convertAssertionOperatorType(src.getOperator())); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasResource()) + tgt.setResource(src.getResource()); + tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); + if (src.hasResponseCode()) + tgt.setResponseCode(src.getResponseCode()); + tgt.setRule(convertSetupActionAssertRuleComponent(src.getRule())); + tgt.setRuleset(convertSetupActionAssertRulesetComponent(src.getRuleset())); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasValidateProfileId()) + tgt.setValidateProfileId(src.getValidateProfileId()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasWarningOnly()) + tgt.setWarningOnly(src.getWarningOnly()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent convertSetupActionAssertRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent t : src.getParam()) + tgt.addParam(convertSetupActionAssertRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent convertSetupActionAssertRuleComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent t : src.getParam()) + tgt.addParam(convertSetupActionAssertRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent convertSetupActionAssertRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent convertSetupActionAssertRuleParamComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent convertSetupActionAssertRulesetComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent t : src.getRule()) + tgt.addRule(convertSetupActionAssertRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent convertSetupActionAssertRulesetComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent t : src.getRule()) + tgt.addRule(convertSetupActionAssertRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent convertSetupActionAssertRulesetRuleComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertSetupActionAssertRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent convertSetupActionAssertRulesetRuleComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertSetupActionAssertRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent convertSetupActionAssertRulesetRuleParamComponent(org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent convertSetupActionAssertRulesetRuleParamComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.SetupActionAssertRulesetRuleParamComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESPONSE: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.RESPONSE; + case REQUEST: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.REQUEST; + default: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.r4.model.TestScript.AssertionDirectionType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESPONSE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.RESPONSE; + case REQUEST: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.REQUEST; + default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionDirectionType.NULL; + } + } + + private static org.hl7.fhir.r4.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EQUALS; + case NOTEQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEQUALS; + case IN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.IN; + case NOTIN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTIN; + case GREATERTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.GREATERTHAN; + case LESSTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.LESSTHAN; + case EMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EMPTY; + case NOTEMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEMPTY; + case CONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.CONTAINS; + case NOTCONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTCONTAINS; + default: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.r4.model.TestScript.AssertionOperatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUALS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.EQUALS; + case NOTEQUALS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTEQUALS; + case IN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.IN; + case NOTIN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTIN; + case GREATERTHAN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.GREATERTHAN; + case LESSTHAN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.LESSTHAN; + case EMPTY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.EMPTY; + case NOTEMPTY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTEMPTY; + case CONTAINS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.CONTAINS; + case NOTCONTAINS: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NOTCONTAINS; + default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionOperatorType.NULL; + } + } + + private static org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OKAY: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.OKAY; + case CREATED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CREATED; + case NOCONTENT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOCONTENT; + case NOTMODIFIED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTMODIFIED; + case BAD: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.BAD; + case FORBIDDEN: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.FORBIDDEN; + case NOTFOUND: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTFOUND; + case METHODNOTALLOWED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; + case CONFLICT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CONFLICT; + case GONE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.GONE; + case PRECONDITIONFAILED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; + case UNPROCESSABLE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; + default: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OKAY: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.OKAY; + case CREATED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.CREATED; + case NOCONTENT: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOCONTENT; + case NOTMODIFIED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOTMODIFIED; + case BAD: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.BAD; + case FORBIDDEN: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.FORBIDDEN; + case NOTFOUND: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NOTFOUND; + case METHODNOTALLOWED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; + case CONFLICT: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.CONFLICT; + case GONE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.GONE; + case PRECONDITIONFAILED: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; + case UNPROCESSABLE: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; + default: return org.hl7.fhir.dstu2016may.model.TestScript.AssertionResponseTypes.NULL; + } + } + + + public static org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTestComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.TestScript.TestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.r4.model.TestScript.TestActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TestScriptTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.TeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TeardownActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.r4.model.TestScript.TeardownActionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.dstu2016may.model.TestScript.TeardownActionComponent(); + copyElement(src, tgt); + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet convertValueSet(org.hl7.fhir.dstu2016may.model.ValueSet src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet tgt = new org.hl7.fhir.r4.model.ValueSet(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.addIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent t : src.getContact()) + tgt.addContact(convertValueSetContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu2016may.model.CodeableConcept t : src.getUseContext()) + if (isJurisdiction(t)) + tgt.addJurisdiction(convertCodeableConcept(t)); + else + tgt.addUseContext(convertCodeableConceptToUsageContext(t)); + if (src.hasImmutable()) + tgt.setImmutable(src.getImmutable()); + if (src.hasRequirements()) + tgt.setPurpose(src.getRequirements()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasExtensible()) + tgt.setExtensible(src.getExtensible()); + tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); + if (src.hasLockedDate()) + tgt.getCompose().setLockedDate(src.getLockedDate()); + tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet convertValueSet(org.hl7.fhir.r4.model.ValueSet src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet tgt = new org.hl7.fhir.dstu2016may.model.ValueSet(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.setIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + tgt.setStatus(convertConformanceResourceStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertValueSetContactComponent(t)); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.getCompose().hasLockedDate()) + tgt.setLockedDate(src.getCompose().getLockedDate()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + if (t.hasValueCodeableConcept()) + tgt.addUseContext(convertCodeableConcept(t.getValueCodeableConcept())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addUseContext(convertCodeableConcept(t)); + if (src.hasImmutable()) + tgt.setImmutable(src.getImmutable()); + if (src.hasPurpose()) + tgt.setRequirements(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasExtensible()) + tgt.setExtensible(src.getExtensible()); + tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); + if (src.hasExpansion()) + tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ContactDetail convertValueSetContactComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu2016may.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent convertValueSetContactComponent(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetContactComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu2016may.model.UriType t : src.getImport()) + tgt.addInclude().addValueSet(t.getValue()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent t : src.getInclude()) + tgt.addInclude(convertConceptSetComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent t : src.getExclude()) + tgt.addExclude(convertConceptSetComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetComposeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getInclude()) { + for (org.hl7.fhir.r4.model.UriType ti : t.getValueSet()) + tgt.addImport(ti.getValue()); + tgt.addInclude(convertConceptSetComponent(t)); + } + for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getExclude()) + tgt.addExclude(convertConceptSetComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) + tgt.addConcept(convertConceptReferenceComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) + tgt.addFilter(convertConceptSetFilterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetComponent(); + copyElement(src, tgt); + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) + tgt.addConcept(convertConceptReferenceComponent(t)); + for (org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) + tgt.addFilter(convertConceptSetFilterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceComponent(); + copyElement(src, tgt); + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptReferenceDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + tgt.setUse(convertCoding(src.getUse())); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getProperty()); + tgt.setOp(convertFilterOperator(src.getOp())); + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ConceptSetFilterComponent(); + copyElement(src, tgt); + tgt.setProperty(src.getProperty()); + tgt.setOp(convertFilterOperator(src.getOp())); + tgt.setValue(src.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISA; + case ISNOTA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.REGEX; + case IN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NOTIN; + default: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.r4.model.ValueSet.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.ISA; + case ISNOTA: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.REGEX; + case IN: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.NOTIN; + default: return org.hl7.fhir.dstu2016may.model.ValueSet.FilterOperator.NULL; + } + } + + public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setTimestamp(src.getTimestamp()); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) + tgt.addParameter(convertValueSetExpansionParameterComponent(t)); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionComponent(); + copyElement(src, tgt); + tgt.setIdentifier(src.getIdentifier()); + tgt.setTimestamp(src.getTimestamp()); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) + tgt.addParameter(convertValueSetExpansionParameterComponent(t)); + for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionParameterComponent(); + copyElement(src, tgt); + tgt.setName(src.getName()); + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasAbstract()) + tgt.setAbstract(src.getAbstract()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.dstu2016may.model.ValueSet.ValueSetExpansionContainsComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasAbstract()) + tgt.setAbstract(src.getAbstract()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + +/* public static org.hl7.fhir.r4.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.dstu2016may.model.VisionPrescription src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.VisionPrescription tgt = new org.hl7.fhir.r4.model.VisionPrescription(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu2016may.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setDateWritten(src.getDateWritten()); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setPrescriber(convertReference(src.getPrescriber())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) + tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.r4.model.VisionPrescription src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.VisionPrescription tgt = new org.hl7.fhir.dstu2016may.model.VisionPrescription(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + tgt.setDateWritten(src.getDateWritten()); + tgt.setPatient(convertReference(src.getPatient())); + tgt.setPrescriber(convertReference(src.getPrescriber())); + tgt.setEncounter(convertReference(src.getEncounter())); + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) + tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent(); + copyElement(src, tgt); + tgt.setProduct(convertCoding(src.getProduct())); + tgt.setEye(convertVisionEyes(src.getEye())); + tgt.setSphere(src.getSphere()); + tgt.setCylinder(src.getCylinder()); + tgt.setAxis(src.getAxis()); + tgt.setPrism(src.getPrism()); + tgt.setBase(convertVisionBase(src.getBase())); + tgt.setAdd(src.getAdd()); + tgt.setPower(src.getPower()); + tgt.setBackCurve(src.getBackCurve()); + tgt.setDiameter(src.getDiameter()); + tgt.setDuration(convertSimpleQuantity(src.getDuration())); + tgt.setColor(src.getColor()); + tgt.setBrand(src.getBrand()); + tgt.setNotes(src.getNotes()); + return tgt; + } + + public static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionPrescriptionDispenseComponent(); + copyElement(src, tgt); + tgt.setProduct(convertCoding(src.getProduct())); + tgt.setEye(convertVisionEyes(src.getEye())); + tgt.setSphere(src.getSphere()); + tgt.setCylinder(src.getCylinder()); + tgt.setAxis(src.getAxis()); + tgt.setPrism(src.getPrism()); + tgt.setBase(convertVisionBase(src.getBase())); + tgt.setAdd(src.getAdd()); + tgt.setPower(src.getPower()); + tgt.setBackCurve(src.getBackCurve()); + tgt.setDiameter(src.getDiameter()); + tgt.setDuration(convertSimpleQuantity(src.getDuration())); + tgt.setColor(src.getColor()); + tgt.setBrand(src.getBrand()); + tgt.setNotes(src.getNotes()); + return tgt; + } + + private static org.hl7.fhir.r4.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RIGHT: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.RIGHT; + case LEFT: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.LEFT; + default: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.r4.model.VisionPrescription.VisionEyes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RIGHT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.RIGHT; + case LEFT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.LEFT; + default: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionEyes.NULL; + } + } + + private static org.hl7.fhir.r4.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UP: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.UP; + case DOWN: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.DOWN; + case IN: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.IN; + case OUT: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.OUT; + default: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.NULL; + } + } + + private static org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.r4.model.VisionPrescription.VisionBase src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UP: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.UP; + case DOWN: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.DOWN; + case IN: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.IN; + case OUT: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.OUT; + default: return org.hl7.fhir.dstu2016may.model.VisionPrescription.VisionBase.NULL; + } + } +*/ + public static org.hl7.fhir.r4.model.Resource convertResource(org.hl7.fhir.dstu2016may.model.Resource src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.dstu2016may.model.Parameters) + return convertParameters((org.hl7.fhir.dstu2016may.model.Parameters) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Bundle) + return convertBundle((org.hl7.fhir.dstu2016may.model.Bundle) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.CodeSystem) + return convertCodeSystem((org.hl7.fhir.dstu2016may.model.CodeSystem) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.CompartmentDefinition) + return convertCompartmentDefinition((org.hl7.fhir.dstu2016may.model.CompartmentDefinition) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.ConceptMap) + return convertConceptMap((org.hl7.fhir.dstu2016may.model.ConceptMap) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Conformance) + return convertConformance((org.hl7.fhir.dstu2016may.model.Conformance) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.DataElement) + return convertDataElement((org.hl7.fhir.dstu2016may.model.DataElement) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.ImplementationGuide) + return convertImplementationGuide((org.hl7.fhir.dstu2016may.model.ImplementationGuide) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.NamingSystem) + return convertNamingSystem((org.hl7.fhir.dstu2016may.model.NamingSystem) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.OperationDefinition) + return convertOperationDefinition((org.hl7.fhir.dstu2016may.model.OperationDefinition) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.OperationOutcome) + return convertOperationOutcome((org.hl7.fhir.dstu2016may.model.OperationOutcome) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.Questionnaire) + return convertQuestionnaire((org.hl7.fhir.dstu2016may.model.Questionnaire) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.QuestionnaireResponse) + return convertQuestionnaireResponse((org.hl7.fhir.dstu2016may.model.QuestionnaireResponse) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.SearchParameter) + return convertSearchParameter((org.hl7.fhir.dstu2016may.model.SearchParameter) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.StructureDefinition) + return convertStructureDefinition((org.hl7.fhir.dstu2016may.model.StructureDefinition) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.TestScript) + return convertTestScript((org.hl7.fhir.dstu2016may.model.TestScript) src); + if (src instanceof org.hl7.fhir.dstu2016may.model.ValueSet) + return convertValueSet((org.hl7.fhir.dstu2016may.model.ValueSet) src); +/* if (src instanceof org.hl7.fhir.dstu2016may.model.VisionPrescription) + return convertVisionPrescription((org.hl7.fhir.dstu2016may.model.VisionPrescription) src);*/ + throw new Error("Unknown resource "+src.fhirType()); + } + + public static org.hl7.fhir.dstu2016may.model.Resource convertResource(org.hl7.fhir.r4.model.Resource src) throws FHIRException { + if (src == null || src.isEmpty()) + return null; + if (src instanceof org.hl7.fhir.r4.model.Parameters) + return convertParameters((org.hl7.fhir.r4.model.Parameters) src); + if (src instanceof org.hl7.fhir.r4.model.Bundle) + return convertBundle((org.hl7.fhir.r4.model.Bundle) src); + if (src instanceof org.hl7.fhir.r4.model.CodeSystem) + return convertCodeSystem((org.hl7.fhir.r4.model.CodeSystem) src); + if (src instanceof org.hl7.fhir.r4.model.CompartmentDefinition) + return convertCompartmentDefinition((org.hl7.fhir.r4.model.CompartmentDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.ConceptMap) + return convertConceptMap((org.hl7.fhir.r4.model.ConceptMap) src); + if (src instanceof org.hl7.fhir.r4.model.CapabilityStatement) + return convertConformance((org.hl7.fhir.r4.model.CapabilityStatement) src); +// if (src instanceof org.hl7.fhir.r4.model.DataElement) +// return convertDataElement((org.hl7.fhir.r4.model.DataElement) src); + if (src instanceof org.hl7.fhir.r4.model.ImplementationGuide) + return convertImplementationGuide((org.hl7.fhir.r4.model.ImplementationGuide) src); + if (src instanceof org.hl7.fhir.r4.model.NamingSystem) + return convertNamingSystem((org.hl7.fhir.r4.model.NamingSystem) src); + if (src instanceof org.hl7.fhir.r4.model.OperationDefinition) + return convertOperationDefinition((org.hl7.fhir.r4.model.OperationDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.OperationOutcome) + return convertOperationOutcome((org.hl7.fhir.r4.model.OperationOutcome) src); + if (src instanceof org.hl7.fhir.r4.model.Questionnaire) + return convertQuestionnaire((org.hl7.fhir.r4.model.Questionnaire) src); + if (src instanceof org.hl7.fhir.r4.model.QuestionnaireResponse) + return convertQuestionnaireResponse((org.hl7.fhir.r4.model.QuestionnaireResponse) src); + if (src instanceof org.hl7.fhir.r4.model.SearchParameter) + return convertSearchParameter((org.hl7.fhir.r4.model.SearchParameter) src); + if (src instanceof org.hl7.fhir.r4.model.StructureDefinition) + return convertStructureDefinition((org.hl7.fhir.r4.model.StructureDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.TestScript) + return convertTestScript((org.hl7.fhir.r4.model.TestScript) src); + if (src instanceof org.hl7.fhir.r4.model.ValueSet) + return convertValueSet((org.hl7.fhir.r4.model.ValueSet) src); +/* if (src instanceof org.hl7.fhir.r4.model.VisionPrescription) + return convertVisionPrescription((org.hl7.fhir.r4.model.VisionPrescription) src);*/ + throw new Error("Unknown resource "+src.fhirType()); + } + + +} diff --git a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_30_40.java b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_30_40.java index fbc317b580f..ae24e4462b7 100644 --- a/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_30_40.java +++ b/hapi-fhir-converter/src/main/java/org/hl7/fhir/convertors/VersionConvertor_30_40.java @@ -1,28645 +1,28666 @@ -package org.hl7.fhir.convertors; - -import org.hl7.fhir.exceptions.FHIRException; -import org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind; -import org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule; - - -/* - Copyright (c) 2011+, HL7, Inc. - All rights reserved. - - Redistribution and use in source and binary forms, with or without modification, - are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - * Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - * Neither the name of HL7 nor the names of its contributors may be used to - endorse or promote products derived from this software without specific - prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND - ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. - IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, - INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT - NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - POSSIBILITY OF SUCH DAMAGE. - -*/ - -// Generated on Mon, Apr 24, 2017 09:30+1000 for FHIR v3.1.0 - - -public class VersionConvertor_30_40 { - - private static void copyElement(org.hl7.fhir.dstu3.model.Element src, org.hl7.fhir.r4.model.Element tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - for (org.hl7.fhir.dstu3.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - private static void copyElement(org.hl7.fhir.r4.model.Element src, org.hl7.fhir.dstu3.model.Element tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - for (org.hl7.fhir.r4.model.Extension e : src.getExtension()) { - tgt.addExtension(convertExtension(e)); - } - } - - private static void copyBackboneElement(org.hl7.fhir.dstu3.model.BackboneElement src, org.hl7.fhir.r4.model.BackboneElement tgt) throws FHIRException { - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Extension e : src.getModifierExtension()) { - tgt.addModifierExtension(convertExtension(e)); - } - } - - private static void copyBackboneElement(org.hl7.fhir.r4.model.BackboneElement src, org.hl7.fhir.dstu3.model.BackboneElement tgt) throws FHIRException { - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Extension e : src.getModifierExtension()) { - tgt.addModifierExtension(convertExtension(e)); - } - } - - public static org.hl7.fhir.r4.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.dstu3.model.Base64BinaryType src) throws FHIRException { - org.hl7.fhir.r4.model.Base64BinaryType tgt = new org.hl7.fhir.r4.model.Base64BinaryType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.r4.model.Base64BinaryType src) throws FHIRException { - org.hl7.fhir.dstu3.model.Base64BinaryType tgt = new org.hl7.fhir.dstu3.model.Base64BinaryType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.BooleanType convertBoolean(org.hl7.fhir.dstu3.model.BooleanType src) throws FHIRException { - org.hl7.fhir.r4.model.BooleanType tgt = new org.hl7.fhir.r4.model.BooleanType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.BooleanType convertBoolean(org.hl7.fhir.r4.model.BooleanType src) throws FHIRException { - org.hl7.fhir.dstu3.model.BooleanType tgt = new org.hl7.fhir.dstu3.model.BooleanType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeType convertCode(org.hl7.fhir.dstu3.model.CodeType src) throws FHIRException { - org.hl7.fhir.r4.model.CodeType tgt = new org.hl7.fhir.r4.model.CodeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeType convertCode(org.hl7.fhir.r4.model.CodeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.CodeType tgt = new org.hl7.fhir.dstu3.model.CodeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.DateType convertDate(org.hl7.fhir.dstu3.model.DateType src) throws FHIRException { - org.hl7.fhir.r4.model.DateType tgt = new org.hl7.fhir.r4.model.DateType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DateType convertDate(org.hl7.fhir.r4.model.DateType src) throws FHIRException { - org.hl7.fhir.dstu3.model.DateType tgt = new org.hl7.fhir.dstu3.model.DateType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.DateTimeType convertDateTime(org.hl7.fhir.dstu3.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.r4.model.DateTimeType tgt = new org.hl7.fhir.r4.model.DateTimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DateTimeType convertDateTime(org.hl7.fhir.r4.model.DateTimeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.DateTimeType tgt = new org.hl7.fhir.dstu3.model.DateTimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.DecimalType convertDecimal(org.hl7.fhir.dstu3.model.DecimalType src) throws FHIRException { - org.hl7.fhir.r4.model.DecimalType tgt = new org.hl7.fhir.r4.model.DecimalType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DecimalType convertDecimal(org.hl7.fhir.r4.model.DecimalType src) throws FHIRException { - org.hl7.fhir.dstu3.model.DecimalType tgt = new org.hl7.fhir.dstu3.model.DecimalType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.IdType convertId(org.hl7.fhir.dstu3.model.IdType src) throws FHIRException { - org.hl7.fhir.r4.model.IdType tgt = new org.hl7.fhir.r4.model.IdType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.IdType convertId(org.hl7.fhir.r4.model.IdType src) throws FHIRException { - org.hl7.fhir.dstu3.model.IdType tgt = new org.hl7.fhir.dstu3.model.IdType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.InstantType convertInstant(org.hl7.fhir.dstu3.model.InstantType src) throws FHIRException { - org.hl7.fhir.r4.model.InstantType tgt = new org.hl7.fhir.r4.model.InstantType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.InstantType convertInstant(org.hl7.fhir.r4.model.InstantType src) throws FHIRException { - org.hl7.fhir.dstu3.model.InstantType tgt = new org.hl7.fhir.dstu3.model.InstantType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.IntegerType convertInteger(org.hl7.fhir.dstu3.model.IntegerType src) throws FHIRException { - org.hl7.fhir.r4.model.IntegerType tgt = new org.hl7.fhir.r4.model.IntegerType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.IntegerType convertInteger(org.hl7.fhir.r4.model.IntegerType src) throws FHIRException { - org.hl7.fhir.dstu3.model.IntegerType tgt = new org.hl7.fhir.dstu3.model.IntegerType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.MarkdownType convertMarkdown(org.hl7.fhir.dstu3.model.MarkdownType src) throws FHIRException { - org.hl7.fhir.r4.model.MarkdownType tgt = new org.hl7.fhir.r4.model.MarkdownType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MarkdownType convertMarkdown(org.hl7.fhir.r4.model.MarkdownType src) throws FHIRException { - org.hl7.fhir.dstu3.model.MarkdownType tgt = new org.hl7.fhir.dstu3.model.MarkdownType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.OidType convertOid(org.hl7.fhir.dstu3.model.OidType src) throws FHIRException { - org.hl7.fhir.r4.model.OidType tgt = new org.hl7.fhir.r4.model.OidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OidType convertOid(org.hl7.fhir.r4.model.OidType src) throws FHIRException { - org.hl7.fhir.dstu3.model.OidType tgt = new org.hl7.fhir.dstu3.model.OidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.PositiveIntType convertPositiveInt(org.hl7.fhir.dstu3.model.PositiveIntType src) throws FHIRException { - org.hl7.fhir.r4.model.PositiveIntType tgt = new org.hl7.fhir.r4.model.PositiveIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PositiveIntType convertPositiveInt(org.hl7.fhir.r4.model.PositiveIntType src) throws FHIRException { - org.hl7.fhir.dstu3.model.PositiveIntType tgt = new org.hl7.fhir.dstu3.model.PositiveIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.StringType convertString(org.hl7.fhir.dstu3.model.StringType src) throws FHIRException { - org.hl7.fhir.r4.model.StringType tgt = new org.hl7.fhir.r4.model.StringType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StringType convertString(org.hl7.fhir.r4.model.StringType src) throws FHIRException { - org.hl7.fhir.dstu3.model.StringType tgt = new org.hl7.fhir.dstu3.model.StringType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.TimeType convertTime(org.hl7.fhir.dstu3.model.TimeType src) throws FHIRException { - org.hl7.fhir.r4.model.TimeType tgt = new org.hl7.fhir.r4.model.TimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TimeType convertTime(org.hl7.fhir.r4.model.TimeType src) throws FHIRException { - org.hl7.fhir.dstu3.model.TimeType tgt = new org.hl7.fhir.dstu3.model.TimeType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.dstu3.model.UnsignedIntType src) throws FHIRException { - org.hl7.fhir.r4.model.UnsignedIntType tgt = new org.hl7.fhir.r4.model.UnsignedIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.r4.model.UnsignedIntType src) throws FHIRException { - org.hl7.fhir.dstu3.model.UnsignedIntType tgt = new org.hl7.fhir.dstu3.model.UnsignedIntType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.UriType convertUri(org.hl7.fhir.dstu3.model.UriType src) throws FHIRException { - org.hl7.fhir.r4.model.UriType tgt = new org.hl7.fhir.r4.model.UriType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.UriType convertUri(org.hl7.fhir.r4.model.UriType src) throws FHIRException { - org.hl7.fhir.dstu3.model.UriType tgt = new org.hl7.fhir.dstu3.model.UriType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.UuidType convertUuid(org.hl7.fhir.dstu3.model.UuidType src) throws FHIRException { - org.hl7.fhir.r4.model.UuidType tgt = new org.hl7.fhir.r4.model.UuidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.UuidType convertUuid(org.hl7.fhir.r4.model.UuidType src) throws FHIRException { - org.hl7.fhir.dstu3.model.UuidType tgt = new org.hl7.fhir.dstu3.model.UuidType(src.getValue()); - copyElement(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.Extension convertExtension(org.hl7.fhir.dstu3.model.Extension src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Extension tgt = new org.hl7.fhir.r4.model.Extension(); - copyElement(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Extension convertExtension(org.hl7.fhir.r4.model.Extension src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Extension tgt = new org.hl7.fhir.dstu3.model.Extension(); - copyElement(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Narrative convertNarrative(org.hl7.fhir.dstu3.model.Narrative src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Narrative tgt = new org.hl7.fhir.r4.model.Narrative(); - copyElement(src, tgt); - if (src.hasStatus()) - tgt.setStatus(convertNarrativeStatus(src.getStatus())); - if (src.hasDiv()) - tgt.setDiv(src.getDiv()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Narrative convertNarrative(org.hl7.fhir.r4.model.Narrative src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Narrative tgt = new org.hl7.fhir.dstu3.model.Narrative(); - copyElement(src, tgt); - if (src.hasStatus()) - tgt.setStatus(convertNarrativeStatus(src.getStatus())); - if (src.hasDiv()) - tgt.setDiv(src.getDiv()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GENERATED: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.GENERATED; - case EXTENSIONS: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EXTENSIONS; - case ADDITIONAL: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.ADDITIONAL; - case EMPTY: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EMPTY; - default: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.r4.model.Narrative.NarrativeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GENERATED: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.GENERATED; - case EXTENSIONS: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EXTENSIONS; - case ADDITIONAL: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.ADDITIONAL; - case EMPTY: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EMPTY; - default: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Age convertAge(org.hl7.fhir.dstu3.model.Age src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Age tgt = new org.hl7.fhir.r4.model.Age(); - copyQuantity(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Age convertAge(org.hl7.fhir.r4.model.Age src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Age tgt = new org.hl7.fhir.dstu3.model.Age(); - copyQuantity(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.Annotation convertAnnotation(org.hl7.fhir.dstu3.model.Annotation src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Annotation tgt = new org.hl7.fhir.r4.model.Annotation(); - copyElement(src, tgt); - if (src.hasAuthor()) - tgt.setAuthor(convertType(src.getAuthor())); - if (src.hasTime()) - tgt.setTime(src.getTime()); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Annotation convertAnnotation(org.hl7.fhir.r4.model.Annotation src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Annotation tgt = new org.hl7.fhir.dstu3.model.Annotation(); - copyElement(src, tgt); - if (src.hasAuthor()) - tgt.setAuthor(convertType(src.getAuthor())); - if (src.hasTime()) - tgt.setTime(src.getTime()); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Attachment convertAttachment(org.hl7.fhir.dstu3.model.Attachment src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Attachment tgt = new org.hl7.fhir.r4.model.Attachment(); - copyElement(src, tgt); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasData()) - tgt.setData(src.getData()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasSize()) - tgt.setSize(src.getSize()); - if (src.hasHash()) - tgt.setHash(src.getHash()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasCreation()) - tgt.setCreation(src.getCreation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Attachment convertAttachment(org.hl7.fhir.r4.model.Attachment src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Attachment tgt = new org.hl7.fhir.dstu3.model.Attachment(); - copyElement(src, tgt); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasData()) - tgt.setData(src.getData()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasSize()) - tgt.setSize(src.getSize()); - if (src.hasHash()) - tgt.setHash(src.getHash()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasCreation()) - tgt.setCreation(src.getCreation()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.dstu3.model.CodeableConcept src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CodeableConcept tgt = new org.hl7.fhir.r4.model.CodeableConcept(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCoding()) - tgt.addCoding(convertCoding(t)); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.r4.model.CodeableConcept src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CodeableConcept tgt = new org.hl7.fhir.dstu3.model.CodeableConcept(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Coding t : src.getCoding()) - tgt.addCoding(convertCoding(t)); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Coding convertCoding(org.hl7.fhir.dstu3.model.Coding src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Coding tgt = new org.hl7.fhir.r4.model.Coding(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasUserSelected()) - tgt.setUserSelected(src.getUserSelected()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Coding convertCoding(org.hl7.fhir.r4.model.Coding src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Coding tgt = new org.hl7.fhir.dstu3.model.Coding(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasUserSelected()) - tgt.setUserSelected(src.getUserSelected()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Count convertCount(org.hl7.fhir.dstu3.model.Count src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Count tgt = new org.hl7.fhir.r4.model.Count(); - copyQuantity(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Count convertCount(org.hl7.fhir.r4.model.Count src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Count tgt = new org.hl7.fhir.dstu3.model.Count(); - copyQuantity(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.Distance convertDistance(org.hl7.fhir.dstu3.model.Distance src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Distance tgt = new org.hl7.fhir.r4.model.Distance(); - copyQuantity(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Distance convertDistance(org.hl7.fhir.r4.model.Distance src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Distance tgt = new org.hl7.fhir.dstu3.model.Distance(); - copyQuantity(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.Duration convertDuration(org.hl7.fhir.dstu3.model.Duration src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Duration tgt = new org.hl7.fhir.r4.model.Duration(); - copyQuantity(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Duration convertDuration(org.hl7.fhir.r4.model.Duration src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Duration tgt = new org.hl7.fhir.dstu3.model.Duration(); - copyQuantity(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.Identifier convertIdentifier(org.hl7.fhir.dstu3.model.Identifier src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Identifier tgt = new org.hl7.fhir.r4.model.Identifier(); - copyElement(src, tgt); - if (src.hasUse()) - tgt.setUse(convertIdentifierUse(src.getUse())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasAssigner()) - tgt.setAssigner(convertReference(src.getAssigner())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Identifier convertIdentifier(org.hl7.fhir.r4.model.Identifier src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Identifier tgt = new org.hl7.fhir.dstu3.model.Identifier(); - copyElement(src, tgt); - if (src.hasUse()) - tgt.setUse(convertIdentifierUse(src.getUse())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasAssigner()) - tgt.setAssigner(convertReference(src.getAssigner())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.dstu3.model.Identifier.IdentifierUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.USUAL; - case OFFICIAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.OFFICIAL; - case TEMP: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.TEMP; - case SECONDARY: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.SECONDARY; - default: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.r4.model.Identifier.IdentifierUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.USUAL; - case OFFICIAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.OFFICIAL; - case TEMP: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.TEMP; - case SECONDARY: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.SECONDARY; - default: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.NULL; - } -} - - public static org.hl7.fhir.r4.model.Money convertMoney(org.hl7.fhir.dstu3.model.Money src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Money tgt = new org.hl7.fhir.r4.model.Money(); - copyQuantity(src, tgt); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Money convertMoney(org.hl7.fhir.r4.model.Money src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Money tgt = new org.hl7.fhir.dstu3.model.Money(); - copyQuantity(src, tgt); - return tgt; - } - - public static org.hl7.fhir.r4.model.Period convertPeriod(org.hl7.fhir.dstu3.model.Period src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Period tgt = new org.hl7.fhir.r4.model.Period(); - copyElement(src, tgt); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Period convertPeriod(org.hl7.fhir.r4.model.Period src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Period tgt = new org.hl7.fhir.dstu3.model.Period(); - copyElement(src, tgt); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - return tgt; - } - - public static void copyQuantity(org.hl7.fhir.dstu3.model.Quantity src, org.hl7.fhir.r4.model.Quantity tgt) throws FHIRException { - if (src == null || tgt == null) - return; - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasComparator()) - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - } - - public static void copyQuantity(org.hl7.fhir.r4.model.Quantity src, org.hl7.fhir.dstu3.model.Quantity tgt) throws FHIRException { - if (src == null || tgt == null) - return; - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasComparator()) - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); -} - - public static org.hl7.fhir.r4.model.Quantity convertQuantity(org.hl7.fhir.dstu3.model.Quantity src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Quantity tgt = new org.hl7.fhir.r4.model.Quantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasComparator()) - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Quantity convertQuantity(org.hl7.fhir.r4.model.Quantity src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Quantity tgt = new org.hl7.fhir.dstu3.model.Quantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasComparator()) - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.dstu3.model.Quantity.QuantityComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LESS_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_THAN; - case LESS_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_OR_EQUAL; - case GREATER_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; - case GREATER_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_THAN; - default: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.r4.model.Quantity.QuantityComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LESS_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_THAN; - case LESS_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_OR_EQUAL; - case GREATER_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; - case GREATER_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_THAN; - default: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.NULL; - } -} - - public static org.hl7.fhir.r4.model.Range convertRange(org.hl7.fhir.dstu3.model.Range src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Range tgt = new org.hl7.fhir.r4.model.Range(); - copyElement(src, tgt); - if (src.hasLow()) - tgt.setLow(convertSimpleQuantity(src.getLow())); - if (src.hasHigh()) - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Range convertRange(org.hl7.fhir.r4.model.Range src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Range tgt = new org.hl7.fhir.dstu3.model.Range(); - copyElement(src, tgt); - if (src.hasLow()) - tgt.setLow(convertSimpleQuantity(src.getLow())); - if (src.hasHigh()) - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Ratio convertRatio(org.hl7.fhir.dstu3.model.Ratio src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Ratio tgt = new org.hl7.fhir.r4.model.Ratio(); - copyElement(src, tgt); - if (src.hasNumerator()) - tgt.setNumerator(convertQuantity(src.getNumerator())); - if (src.hasDenominator()) - tgt.setDenominator(convertQuantity(src.getDenominator())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Ratio convertRatio(org.hl7.fhir.r4.model.Ratio src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Ratio tgt = new org.hl7.fhir.dstu3.model.Ratio(); - copyElement(src, tgt); - if (src.hasNumerator()) - tgt.setNumerator(convertQuantity(src.getNumerator())); - if (src.hasDenominator()) - tgt.setDenominator(convertQuantity(src.getDenominator())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Reference convertReference(org.hl7.fhir.dstu3.model.Reference src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Reference tgt = new org.hl7.fhir.r4.model.Reference(); - copyElement(src, tgt); - if (src.hasReference()) - tgt.setReference(src.getReference()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Reference convertReference(org.hl7.fhir.r4.model.Reference src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Reference tgt = new org.hl7.fhir.dstu3.model.Reference(); - copyElement(src, tgt); - if (src.hasReference()) - tgt.setReference(src.getReference()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public static org.hl7.fhir.r4.model.SampledData convertSampledData(org.hl7.fhir.dstu3.model.SampledData src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.SampledData tgt = new org.hl7.fhir.r4.model.SampledData(); - copyElement(src, tgt); - if (src.hasOrigin()) - tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); - if (src.hasPeriod()) - tgt.setPeriod(src.getPeriod()); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasLowerLimit()) - tgt.setLowerLimit(src.getLowerLimit()); - if (src.hasUpperLimit()) - tgt.setUpperLimit(src.getUpperLimit()); - if (src.hasDimensions()) - tgt.setDimensions(src.getDimensions()); - if (src.hasData()) - tgt.setData(src.getData()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SampledData convertSampledData(org.hl7.fhir.r4.model.SampledData src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.SampledData tgt = new org.hl7.fhir.dstu3.model.SampledData(); - copyElement(src, tgt); - if (src.hasOrigin()) - tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); - if (src.hasPeriod()) - tgt.setPeriod(src.getPeriod()); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasLowerLimit()) - tgt.setLowerLimit(src.getLowerLimit()); - if (src.hasUpperLimit()) - tgt.setUpperLimit(src.getUpperLimit()); - if (src.hasDimensions()) - tgt.setDimensions(src.getDimensions()); - if (src.hasData()) - tgt.setData(src.getData()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Signature convertSignature(org.hl7.fhir.dstu3.model.Signature src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Signature tgt = new org.hl7.fhir.r4.model.Signature(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - if (src.hasWhen()) - tgt.setWhen(src.getWhen()); - if (src.hasWho()) - tgt.setWho(convertType(src.getWho())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertType(src.getOnBehalfOf())); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Signature convertSignature(org.hl7.fhir.r4.model.Signature src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Signature tgt = new org.hl7.fhir.dstu3.model.Signature(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - if (src.hasWhen()) - tgt.setWhen(src.getWhen()); - if (src.hasWho()) - tgt.setWho(convertType(src.getWho())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertType(src.getOnBehalfOf())); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Address convertAddress(org.hl7.fhir.dstu3.model.Address src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Address tgt = new org.hl7.fhir.r4.model.Address(); - copyElement(src, tgt); - if (src.hasUse()) - tgt.setUse(convertAddressUse(src.getUse())); - if (src.hasType()) - tgt.setType(convertAddressType(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getLine()) - tgt.addLine(t.getValue()); - if (src.hasCity()) - tgt.setCity(src.getCity()); - if (src.hasDistrict()) - tgt.setDistrict(src.getDistrict()); - if (src.hasState()) - tgt.setState(src.getState()); - if (src.hasPostalCode()) - tgt.setPostalCode(src.getPostalCode()); - if (src.hasCountry()) - tgt.setCountry(src.getCountry()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Address convertAddress(org.hl7.fhir.r4.model.Address src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Address tgt = new org.hl7.fhir.dstu3.model.Address(); - copyElement(src, tgt); - if (src.hasUse()) - tgt.setUse(convertAddressUse(src.getUse())); - if (src.hasType()) - tgt.setType(convertAddressType(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - for (org.hl7.fhir.r4.model.StringType t : src.getLine()) - tgt.addLine(t.getValue()); - if (src.hasCity()) - tgt.setCity(src.getCity()); - if (src.hasDistrict()) - tgt.setDistrict(src.getDistrict()); - if (src.hasState()) - tgt.setState(src.getState()); - if (src.hasPostalCode()) - tgt.setPostalCode(src.getPostalCode()); - if (src.hasCountry()) - tgt.setCountry(src.getCountry()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Address.AddressUse convertAddressUse(org.hl7.fhir.dstu3.model.Address.AddressUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.r4.model.Address.AddressUse.HOME; - case WORK: return org.hl7.fhir.r4.model.Address.AddressUse.WORK; - case TEMP: return org.hl7.fhir.r4.model.Address.AddressUse.TEMP; - case OLD: return org.hl7.fhir.r4.model.Address.AddressUse.OLD; - default: return org.hl7.fhir.r4.model.Address.AddressUse.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Address.AddressUse convertAddressUse(org.hl7.fhir.r4.model.Address.AddressUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.dstu3.model.Address.AddressUse.HOME; - case WORK: return org.hl7.fhir.dstu3.model.Address.AddressUse.WORK; - case TEMP: return org.hl7.fhir.dstu3.model.Address.AddressUse.TEMP; - case OLD: return org.hl7.fhir.dstu3.model.Address.AddressUse.OLD; - default: return org.hl7.fhir.dstu3.model.Address.AddressUse.NULL; - } -} - - private static org.hl7.fhir.r4.model.Address.AddressType convertAddressType(org.hl7.fhir.dstu3.model.Address.AddressType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case POSTAL: return org.hl7.fhir.r4.model.Address.AddressType.POSTAL; - case PHYSICAL: return org.hl7.fhir.r4.model.Address.AddressType.PHYSICAL; - case BOTH: return org.hl7.fhir.r4.model.Address.AddressType.BOTH; - default: return org.hl7.fhir.r4.model.Address.AddressType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Address.AddressType convertAddressType(org.hl7.fhir.r4.model.Address.AddressType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case POSTAL: return org.hl7.fhir.dstu3.model.Address.AddressType.POSTAL; - case PHYSICAL: return org.hl7.fhir.dstu3.model.Address.AddressType.PHYSICAL; - case BOTH: return org.hl7.fhir.dstu3.model.Address.AddressType.BOTH; - default: return org.hl7.fhir.dstu3.model.Address.AddressType.NULL; - } -} - - public static org.hl7.fhir.r4.model.ContactDetail convertContactDetail(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ContactDetail convertContactDetail(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ContactPoint convertContactPoint(org.hl7.fhir.dstu3.model.ContactPoint src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ContactPoint tgt = new org.hl7.fhir.r4.model.ContactPoint(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(convertContactPointSystem(src.getSystem())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasUse()) - tgt.setUse(convertContactPointUse(src.getUse())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ContactPoint convertContactPoint(org.hl7.fhir.r4.model.ContactPoint src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ContactPoint tgt = new org.hl7.fhir.dstu3.model.ContactPoint(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(convertContactPointSystem(src.getSystem())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasUse()) - tgt.setUse(convertContactPointUse(src.getUse())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHONE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PHONE; - case FAX: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.FAX; - case EMAIL: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.EMAIL; - case PAGER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PAGER; - case URL: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.URL; - case SMS: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.SMS; - case OTHER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.OTHER; - default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHONE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PHONE; - case FAX: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.FAX; - case EMAIL: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.EMAIL; - case PAGER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PAGER; - case URL: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.URL; - case SMS: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.SMS; - case OTHER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.OTHER; - default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.NULL; - } -} - - private static org.hl7.fhir.r4.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.HOME; - case WORK: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.WORK; - case TEMP: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.TEMP; - case OLD: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.OLD; - case MOBILE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.MOBILE; - default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.r4.model.ContactPoint.ContactPointUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HOME: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.HOME; - case WORK: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.WORK; - case TEMP: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.TEMP; - case OLD: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.OLD; - case MOBILE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.MOBILE; - default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.NULL; - } -} - - public static org.hl7.fhir.r4.model.Contributor convertContributor(org.hl7.fhir.dstu3.model.Contributor src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contributor tgt = new org.hl7.fhir.r4.model.Contributor(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertContributorType(src.getType())); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contributor convertContributor(org.hl7.fhir.r4.model.Contributor src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contributor tgt = new org.hl7.fhir.dstu3.model.Contributor(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertContributorType(src.getType())); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Contributor.ContributorType convertContributorType(org.hl7.fhir.dstu3.model.Contributor.ContributorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case AUTHOR: return org.hl7.fhir.r4.model.Contributor.ContributorType.AUTHOR; - case EDITOR: return org.hl7.fhir.r4.model.Contributor.ContributorType.EDITOR; - case REVIEWER: return org.hl7.fhir.r4.model.Contributor.ContributorType.REVIEWER; - case ENDORSER: return org.hl7.fhir.r4.model.Contributor.ContributorType.ENDORSER; - default: return org.hl7.fhir.r4.model.Contributor.ContributorType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Contributor.ContributorType convertContributorType(org.hl7.fhir.r4.model.Contributor.ContributorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case AUTHOR: return org.hl7.fhir.dstu3.model.Contributor.ContributorType.AUTHOR; - case EDITOR: return org.hl7.fhir.dstu3.model.Contributor.ContributorType.EDITOR; - case REVIEWER: return org.hl7.fhir.dstu3.model.Contributor.ContributorType.REVIEWER; - case ENDORSER: return org.hl7.fhir.dstu3.model.Contributor.ContributorType.ENDORSER; - default: return org.hl7.fhir.dstu3.model.Contributor.ContributorType.NULL; - } -} - - public static org.hl7.fhir.r4.model.DataRequirement convertDataRequirement(org.hl7.fhir.dstu3.model.DataRequirement src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DataRequirement tgt = new org.hl7.fhir.r4.model.DataRequirement(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - for (org.hl7.fhir.dstu3.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getMustSupport()) - tgt.addMustSupport(t.getValue()); - for (org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent t : src.getCodeFilter()) - tgt.addCodeFilter(convertDataRequirementCodeFilterComponent(t)); - for (org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent t : src.getDateFilter()) - tgt.addDateFilter(convertDataRequirementDateFilterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DataRequirement convertDataRequirement(org.hl7.fhir.r4.model.DataRequirement src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DataRequirement tgt = new org.hl7.fhir.dstu3.model.DataRequirement(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - for (org.hl7.fhir.r4.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getMustSupport()) - tgt.addMustSupport(t.getValue()); - for (org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent t : src.getCodeFilter()) - tgt.addCodeFilter(convertDataRequirementCodeFilterComponent(t)); - for (org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent t : src.getDateFilter()) - tgt.addDateFilter(convertDataRequirementDateFilterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent convertDataRequirementCodeFilterComponent(org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent tgt = new org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent(); - copyElement(src, tgt); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasValueSet()) - tgt.setValueSet(convertType(src.getValueSet())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getValueCode()) - tgt.addValueCode(t.getValue()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getValueCoding()) - tgt.addValueCoding(convertCoding(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getValueCodeableConcept()) - tgt.addValueCodeableConcept(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent convertDataRequirementCodeFilterComponent(org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent tgt = new org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent(); - copyElement(src, tgt); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasValueSet()) - tgt.setValueSet(convertType(src.getValueSet())); - for (org.hl7.fhir.r4.model.CodeType t : src.getValueCode()) - tgt.addValueCode(t.getValue()); - for (org.hl7.fhir.r4.model.Coding t : src.getValueCoding()) - tgt.addValueCoding(convertCoding(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getValueCodeableConcept()) - tgt.addValueCodeableConcept(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent convertDataRequirementDateFilterComponent(org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent tgt = new org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent(); - copyElement(src, tgt); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent convertDataRequirementDateFilterComponent(org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent tgt = new org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent(); - copyElement(src, tgt); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Dosage convertDosage(org.hl7.fhir.dstu3.model.Dosage src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Dosage tgt = new org.hl7.fhir.r4.model.Dosage(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasText()) - tgt.setText(src.getText()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAdditionalInstruction()) - tgt.addAdditionalInstruction(convertCodeableConcept(t)); - if (src.hasPatientInstruction()) - tgt.setPatientInstruction(src.getPatientInstruction()); - if (src.hasTiming()) - tgt.setTiming(convertTiming(src.getTiming())); - if (src.hasAsNeeded()) - tgt.setAsNeeded(convertType(src.getAsNeeded())); - if (src.hasSite()) - tgt.setSite(convertCodeableConcept(src.getSite())); - if (src.hasRoute()) - tgt.setRoute(convertCodeableConcept(src.getRoute())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasDose()) - tgt.setDose(convertType(src.getDose())); - if (src.hasMaxDosePerPeriod()) - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - if (src.hasMaxDosePerAdministration()) - tgt.setMaxDosePerAdministration(convertSimpleQuantity(src.getMaxDosePerAdministration())); - if (src.hasMaxDosePerLifetime()) - tgt.setMaxDosePerLifetime(convertSimpleQuantity(src.getMaxDosePerLifetime())); - if (src.hasRate()) - tgt.setRate(convertType(src.getRate())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Dosage convertDosage(org.hl7.fhir.r4.model.Dosage src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Dosage tgt = new org.hl7.fhir.dstu3.model.Dosage(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasText()) - tgt.setText(src.getText()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAdditionalInstruction()) - tgt.addAdditionalInstruction(convertCodeableConcept(t)); - if (src.hasPatientInstruction()) - tgt.setPatientInstruction(src.getPatientInstruction()); - if (src.hasTiming()) - tgt.setTiming(convertTiming(src.getTiming())); - if (src.hasAsNeeded()) - tgt.setAsNeeded(convertType(src.getAsNeeded())); - if (src.hasSite()) - tgt.setSite(convertCodeableConcept(src.getSite())); - if (src.hasRoute()) - tgt.setRoute(convertCodeableConcept(src.getRoute())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasDose()) - tgt.setDose(convertType(src.getDose())); - if (src.hasMaxDosePerPeriod()) - tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); - if (src.hasMaxDosePerAdministration()) - tgt.setMaxDosePerAdministration(convertSimpleQuantity(src.getMaxDosePerAdministration())); - if (src.hasMaxDosePerLifetime()) - tgt.setMaxDosePerLifetime(convertSimpleQuantity(src.getMaxDosePerLifetime())); - if (src.hasRate()) - tgt.setRate(convertType(src.getRate())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ElementDefinition convertElementDefinition(org.hl7.fhir.dstu3.model.ElementDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ElementDefinition tgt = new org.hl7.fhir.r4.model.ElementDefinition(); - copyElement(src, tgt); - if (src.hasPath()) - tgt.setPath(src.getPath()); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getRepresentation()) - tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); - if (src.hasSliceName()) - tgt.setSliceName(src.getSliceName()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - if (src.hasSlicing()) - tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); - if (src.hasShort()) - tgt.setShort(src.getShort()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasBase()) - tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); - if (src.hasContentReference()) - tgt.setContentReference(src.getContentReference()); - for (org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent t : src.getType()) - tgt.addType(convertTypeRefComponent(t)); - if (src.hasDefaultValue()) - tgt.setDefaultValue(convertType(src.getDefaultValue())); - if (src.hasMeaningWhenMissing()) - tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); - if (src.hasOrderMeaning()) - tgt.setOrderMeaning(src.getOrderMeaning()); - if (src.hasFixed()) - tgt.setFixed(convertType(src.getFixed())); - if (src.hasPattern()) - tgt.setPattern(convertType(src.getPattern())); - for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionExampleComponent t : src.getExample()) - tgt.addExample(convertElementDefinitionExampleComponent(t)); - if (src.hasMinValue()) - tgt.setMinValue(convertType(src.getMinValue())); - if (src.hasMaxValue()) - tgt.setMaxValue(convertType(src.getMaxValue())); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - for (org.hl7.fhir.dstu3.model.IdType t : src.getCondition()) - tgt.addCondition(t.getValue()); - for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) - tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); - if (src.hasMustSupport()) - tgt.setMustSupport(src.getMustSupport()); - if (src.hasIsModifier()) - tgt.setIsModifier(src.getIsModifier()); - if (src.hasIsSummary()) - tgt.setIsSummary(src.getIsSummary()); - if (src.hasBinding()) - tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); - for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertElementDefinitionMappingComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition convertElementDefinition(org.hl7.fhir.r4.model.ElementDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition tgt = new org.hl7.fhir.dstu3.model.ElementDefinition(); - copyElement(src, tgt); - if (src.hasPath()) - tgt.setPath(src.getPath()); - for (org.hl7.fhir.r4.model.Enumeration t : src.getRepresentation()) - tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); - if (src.hasSliceName()) - tgt.setSliceName(src.getSliceName()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - for (org.hl7.fhir.r4.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - if (src.hasSlicing()) - tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); - if (src.hasShort()) - tgt.setShort(src.getShort()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - for (org.hl7.fhir.r4.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasBase()) - tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); - if (src.hasContentReference()) - tgt.setContentReference(src.getContentReference()); - for (org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent t : src.getType()) - tgt.addType(convertTypeRefComponent(t)); - if (src.hasDefaultValue()) - tgt.setDefaultValue(convertType(src.getDefaultValue())); - if (src.hasMeaningWhenMissing()) - tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); - if (src.hasOrderMeaning()) - tgt.setOrderMeaning(src.getOrderMeaning()); - if (src.hasFixed()) - tgt.setFixed(convertType(src.getFixed())); - if (src.hasPattern()) - tgt.setPattern(convertType(src.getPattern())); - for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionExampleComponent t : src.getExample()) - tgt.addExample(convertElementDefinitionExampleComponent(t)); - if (src.hasMinValue()) - tgt.setMinValue(convertType(src.getMinValue())); - if (src.hasMaxValue()) - tgt.setMaxValue(convertType(src.getMaxValue())); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - for (org.hl7.fhir.r4.model.IdType t : src.getCondition()) - tgt.addCondition(t.getValue()); - for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) - tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); - if (src.hasMustSupport()) - tgt.setMustSupport(src.getMustSupport()); - if (src.hasIsModifier()) - tgt.setIsModifier(src.getIsModifier()); - if (src.hasIsSummary()) - tgt.setIsSummary(src.getIsSummary()); - if (src.hasBinding()) - tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); - for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertElementDefinitionMappingComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XMLATTR: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XMLATTR; - case XMLTEXT: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XMLTEXT; - case TYPEATTR: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.TYPEATTR; - case CDATEXT: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.CDATEXT; - case XHTML: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XHTML; - default: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XMLATTR: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XMLATTR; - case XMLTEXT: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XMLTEXT; - case TYPEATTR: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.TYPEATTR; - case CDATEXT: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.CDATEXT; - case XHTML: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XHTML; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.NULL; - } -} - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) - tgt.addDiscriminator(convertElementDefinitionSlicingDiscriminatorComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasOrdered()) - tgt.setOrdered(src.getOrdered()); - if (src.hasRules()) - tgt.setRules(convertSlicingRules(src.getRules())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) - tgt.addDiscriminator(convertElementDefinitionSlicingDiscriminatorComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasOrdered()) - tgt.setOrdered(src.getOrdered()); - if (src.hasRules()) - tgt.setRules(convertSlicingRules(src.getRules())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLOSED: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.CLOSED; - case OPEN: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPEN; - case OPENATEND: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPENATEND; - default: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.r4.model.ElementDefinition.SlicingRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLOSED: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.CLOSED; - case OPEN: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPEN; - case OPENATEND: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPENATEND; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.NULL; - } -} - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent convertElementDefinitionSlicingDiscriminatorComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertDiscriminatorType(src.getType())); - if (src.hasPath()) - tgt.setPath(src.getPath()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent convertElementDefinitionSlicingDiscriminatorComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertDiscriminatorType(src.getType())); - if (src.hasPath()) - tgt.setPath(src.getPath()); - return tgt; - } - - private static org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType convertDiscriminatorType(org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case VALUE: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.VALUE; - case EXISTS: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.EXISTS; - case PATTERN: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.PATTERN; - case TYPE: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.TYPE; - case PROFILE: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.PROFILE; - default: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType convertDiscriminatorType(org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case VALUE: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.VALUE; - case EXISTS: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.EXISTS; - case PATTERN: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.PATTERN; - case TYPE: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.TYPE; - case PROFILE: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.PROFILE; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.NULL; - } -} - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent(); - copyElement(src, tgt); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent(); - copyElement(src, tgt); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasProfile()) - tgt.setProfile(src.getProfile()); - if (src.hasTargetProfile()) - tgt.setTargetProfile(src.getTargetProfile()); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getAggregation()) - tgt.addAggregation(convertAggregationMode(t.getValue())); - if (src.hasVersioning()) - tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasProfile()) - tgt.setProfile(src.getProfile()); - if (src.hasTargetProfile()) - tgt.setTargetProfile(src.getTargetProfile()); - for (org.hl7.fhir.r4.model.Enumeration t : src.getAggregation()) - tgt.addAggregation(convertAggregationMode(t.getValue())); - if (src.hasVersioning()) - tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONTAINED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.CONTAINED; - case REFERENCED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.REFERENCED; - case BUNDLED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.BUNDLED; - default: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.r4.model.ElementDefinition.AggregationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONTAINED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.CONTAINED; - case REFERENCED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.REFERENCED; - case BUNDLED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.BUNDLED; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.NULL; - } -} - - private static org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EITHER: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.EITHER; - case INDEPENDENT: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; - case SPECIFIC: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; - default: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EITHER: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.EITHER; - case INDEPENDENT: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; - case SPECIFIC: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.NULL; - } -} - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionExampleComponent convertElementDefinitionExampleComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionExampleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionExampleComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionExampleComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionExampleComponent convertElementDefinitionExampleComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionExampleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionExampleComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionExampleComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent(); - copyElement(src, tgt); - if (src.hasKey()) - tgt.setKey(src.getKey()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - if (src.hasSeverity()) - tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); - if (src.hasHuman()) - tgt.setHuman(src.getHuman()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasXpath()) - tgt.setXpath(src.getXpath()); - if (src.hasSource()) - tgt.setSource(src.getSource()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent(); - copyElement(src, tgt); - if (src.hasKey()) - tgt.setKey(src.getKey()); - if (src.hasRequirements()) - tgt.setRequirements(src.getRequirements()); - if (src.hasSeverity()) - tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); - if (src.hasHuman()) - tgt.setHuman(src.getHuman()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasXpath()) - tgt.setXpath(src.getXpath()); - if (src.hasSource()) - tgt.setSource(src.getSource()); - return tgt; - } - - private static org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ERROR: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.ERROR; - case WARNING: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.WARNING; - default: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ERROR: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.ERROR; - case WARNING: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.WARNING; - default: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.NULL; - } -} - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent(); - copyElement(src, tgt); - if (src.hasStrength()) - tgt.setStrength(convertBindingStrength(src.getStrength())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasValueSet()) - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent(); - copyElement(src, tgt); - if (src.hasStrength()) - tgt.setStrength(convertBindingStrength(src.getStrength())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasValueSet()) - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.dstu3.model.Enumerations.BindingStrength src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.REQUIRED; - case EXTENSIBLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXTENSIBLE; - case PREFERRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.PREFERRED; - case EXAMPLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXAMPLE; - default: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.r4.model.Enumerations.BindingStrength src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.REQUIRED; - case EXTENSIBLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXTENSIBLE; - case PREFERRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.PREFERRED; - case EXAMPLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXAMPLE; - default: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.NULL; - } -} - - public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent(); - copyElement(src, tgt); - if (src.hasIdentity()) - tgt.setIdentity(src.getIdentity()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasMap()) - tgt.setMap(src.getMap()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent(); - copyElement(src, tgt); - if (src.hasIdentity()) - tgt.setIdentity(src.getIdentity()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasMap()) - tgt.setMap(src.getMap()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.r4.model.HumanName convertHumanName(org.hl7.fhir.dstu3.model.HumanName src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.HumanName tgt = new org.hl7.fhir.r4.model.HumanName(); - copyElement(src, tgt); - if (src.hasUse()) - tgt.setUse(convertNameUse(src.getUse())); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasFamily()) - tgt.setFamily(src.getFamily()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getGiven()) - tgt.addGiven(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getPrefix()) - tgt.addPrefix(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getSuffix()) - tgt.addSuffix(t.getValue()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.HumanName convertHumanName(org.hl7.fhir.r4.model.HumanName src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.HumanName tgt = new org.hl7.fhir.dstu3.model.HumanName(); - copyElement(src, tgt); - if (src.hasUse()) - tgt.setUse(convertNameUse(src.getUse())); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasFamily()) - tgt.setFamily(src.getFamily()); - for (org.hl7.fhir.r4.model.StringType t : src.getGiven()) - tgt.addGiven(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getPrefix()) - tgt.addPrefix(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getSuffix()) - tgt.addSuffix(t.getValue()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.r4.model.HumanName.NameUse convertNameUse(org.hl7.fhir.dstu3.model.HumanName.NameUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.r4.model.HumanName.NameUse.USUAL; - case OFFICIAL: return org.hl7.fhir.r4.model.HumanName.NameUse.OFFICIAL; - case TEMP: return org.hl7.fhir.r4.model.HumanName.NameUse.TEMP; - case NICKNAME: return org.hl7.fhir.r4.model.HumanName.NameUse.NICKNAME; - case ANONYMOUS: return org.hl7.fhir.r4.model.HumanName.NameUse.ANONYMOUS; - case OLD: return org.hl7.fhir.r4.model.HumanName.NameUse.OLD; - case MAIDEN: return org.hl7.fhir.r4.model.HumanName.NameUse.MAIDEN; - default: return org.hl7.fhir.r4.model.HumanName.NameUse.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.HumanName.NameUse convertNameUse(org.hl7.fhir.r4.model.HumanName.NameUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case USUAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.USUAL; - case OFFICIAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OFFICIAL; - case TEMP: return org.hl7.fhir.dstu3.model.HumanName.NameUse.TEMP; - case NICKNAME: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NICKNAME; - case ANONYMOUS: return org.hl7.fhir.dstu3.model.HumanName.NameUse.ANONYMOUS; - case OLD: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OLD; - case MAIDEN: return org.hl7.fhir.dstu3.model.HumanName.NameUse.MAIDEN; - default: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NULL; - } -} - - public static org.hl7.fhir.r4.model.Meta convertMeta(org.hl7.fhir.dstu3.model.Meta src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Meta tgt = new org.hl7.fhir.r4.model.Meta(); - copyElement(src, tgt); - if (src.hasVersionId()) - tgt.setVersionId(src.getVersionId()); - if (src.hasLastUpdated()) - tgt.setLastUpdated(src.getLastUpdated()); - for (org.hl7.fhir.dstu3.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurity()) - tgt.addSecurity(convertCoding(t)); - for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Meta convertMeta(org.hl7.fhir.r4.model.Meta src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Meta tgt = new org.hl7.fhir.dstu3.model.Meta(); - copyElement(src, tgt); - if (src.hasVersionId()) - tgt.setVersionId(src.getVersionId()); - if (src.hasLastUpdated()) - tgt.setLastUpdated(src.getLastUpdated()); - for (org.hl7.fhir.r4.model.UriType t : src.getProfile()) - tgt.addProfile(t.getValue()); - for (org.hl7.fhir.r4.model.Coding t : src.getSecurity()) - tgt.addSecurity(convertCoding(t)); - for (org.hl7.fhir.r4.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ParameterDefinition convertParameterDefinition(org.hl7.fhir.dstu3.model.ParameterDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ParameterDefinition tgt = new org.hl7.fhir.r4.model.ParameterDefinition(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasUse()) - tgt.setUse(convertParameterUse(src.getUse())); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ParameterDefinition convertParameterDefinition(org.hl7.fhir.r4.model.ParameterDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ParameterDefinition tgt = new org.hl7.fhir.dstu3.model.ParameterDefinition(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasUse()) - tgt.setUse(convertParameterUse(src.getUse())); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ParameterDefinition.ParameterUse convertParameterUse(org.hl7.fhir.dstu3.model.ParameterDefinition.ParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.r4.model.ParameterDefinition.ParameterUse.IN; - case OUT: return org.hl7.fhir.r4.model.ParameterDefinition.ParameterUse.OUT; - default: return org.hl7.fhir.r4.model.ParameterDefinition.ParameterUse.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ParameterDefinition.ParameterUse convertParameterUse(org.hl7.fhir.r4.model.ParameterDefinition.ParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.dstu3.model.ParameterDefinition.ParameterUse.IN; - case OUT: return org.hl7.fhir.dstu3.model.ParameterDefinition.ParameterUse.OUT; - default: return org.hl7.fhir.dstu3.model.ParameterDefinition.ParameterUse.NULL; - } -} - - public static org.hl7.fhir.r4.model.RelatedArtifact convertRelatedArtifact(org.hl7.fhir.dstu3.model.RelatedArtifact src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.RelatedArtifact tgt = new org.hl7.fhir.r4.model.RelatedArtifact(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertRelatedArtifactType(src.getType())); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasCitation()) - tgt.setCitation(src.getCitation()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasDocument()) - tgt.setDocument(convertAttachment(src.getDocument())); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.RelatedArtifact convertRelatedArtifact(org.hl7.fhir.r4.model.RelatedArtifact src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.RelatedArtifact tgt = new org.hl7.fhir.dstu3.model.RelatedArtifact(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertRelatedArtifactType(src.getType())); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasCitation()) - tgt.setCitation(src.getCitation()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasDocument()) - tgt.setDocument(convertAttachment(src.getDocument())); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - private static org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType convertRelatedArtifactType(org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENTATION: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.DOCUMENTATION; - case JUSTIFICATION: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.JUSTIFICATION; - case CITATION: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.CITATION; - case PREDECESSOR: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.PREDECESSOR; - case SUCCESSOR: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.SUCCESSOR; - case DERIVEDFROM: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.DERIVEDFROM; - case DEPENDSON: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.DEPENDSON; - case COMPOSEDOF: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.COMPOSEDOF; - default: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType convertRelatedArtifactType(org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENTATION: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.DOCUMENTATION; - case JUSTIFICATION: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.JUSTIFICATION; - case CITATION: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.CITATION; - case PREDECESSOR: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.PREDECESSOR; - case SUCCESSOR: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.SUCCESSOR; - case DERIVEDFROM: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.DERIVEDFROM; - case DEPENDSON: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.DEPENDSON; - case COMPOSEDOF: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.COMPOSEDOF; - default: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Timing convertTiming(org.hl7.fhir.dstu3.model.Timing src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Timing tgt = new org.hl7.fhir.r4.model.Timing(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.DateTimeType t : src.getEvent()) - tgt.addEvent(t.getValue()); - if (src.hasRepeat()) - tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Timing convertTiming(org.hl7.fhir.r4.model.Timing src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Timing tgt = new org.hl7.fhir.dstu3.model.Timing(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.DateTimeType t : src.getEvent()) - tgt.addEvent(t.getValue()); - if (src.hasRepeat()) - tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.r4.model.Timing.TimingRepeatComponent(); - copyElement(src, tgt); - if (src.hasBounds()) - tgt.setBounds(convertType(src.getBounds())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - if (src.hasCountMax()) - tgt.setCountMax(src.getCountMax()); - if (src.hasDuration()) - tgt.setDuration(src.getDuration()); - if (src.hasDurationMax()) - tgt.setDurationMax(src.getDurationMax()); - if (src.hasDurationUnit()) - tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); - if (src.hasFrequency()) - tgt.setFrequency(src.getFrequency()); - if (src.hasFrequencyMax()) - tgt.setFrequencyMax(src.getFrequencyMax()); - if (src.hasPeriod()) - tgt.setPeriod(src.getPeriod()); - if (src.hasPeriodMax()) - tgt.setPeriodMax(src.getPeriodMax()); - if (src.hasPeriodUnit()) - tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getDayOfWeek()) - tgt.addDayOfWeek(convertDayOfWeek(t.getValue())); - for (org.hl7.fhir.dstu3.model.TimeType t : src.getTimeOfDay()) - tgt.addTimeOfDay(t.getValue()); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getWhen()) - tgt.addWhen(convertEventTiming(t.getValue())); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.r4.model.Timing.TimingRepeatComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent(); - copyElement(src, tgt); - if (src.hasBounds()) - tgt.setBounds(convertType(src.getBounds())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - if (src.hasCountMax()) - tgt.setCountMax(src.getCountMax()); - if (src.hasDuration()) - tgt.setDuration(src.getDuration()); - if (src.hasDurationMax()) - tgt.setDurationMax(src.getDurationMax()); - if (src.hasDurationUnit()) - tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); - if (src.hasFrequency()) - tgt.setFrequency(src.getFrequency()); - if (src.hasFrequencyMax()) - tgt.setFrequencyMax(src.getFrequencyMax()); - if (src.hasPeriod()) - tgt.setPeriod(src.getPeriod()); - if (src.hasPeriodMax()) - tgt.setPeriodMax(src.getPeriodMax()); - if (src.hasPeriodUnit()) - tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); - for (org.hl7.fhir.r4.model.Enumeration t : src.getDayOfWeek()) - tgt.addDayOfWeek(convertDayOfWeek(t.getValue())); - for (org.hl7.fhir.r4.model.TimeType t : src.getTimeOfDay()) - tgt.addTimeOfDay(t.getValue()); - for (org.hl7.fhir.r4.model.Enumeration t : src.getWhen()) - tgt.addWhen(convertEventTiming(t.getValue())); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.dstu3.model.Timing.UnitsOfTime src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case S: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.S; - case MIN: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MIN; - case H: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.H; - case D: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.D; - case WK: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.WK; - case MO: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MO; - case A: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.A; - default: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.r4.model.Timing.UnitsOfTime src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case S: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.S; - case MIN: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MIN; - case H: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.H; - case D: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.D; - case WK: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.WK; - case MO: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MO; - case A: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.A; - default: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.NULL; - } -} - - private static org.hl7.fhir.r4.model.Timing.DayOfWeek convertDayOfWeek(org.hl7.fhir.dstu3.model.Timing.DayOfWeek src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MON: return org.hl7.fhir.r4.model.Timing.DayOfWeek.MON; - case TUE: return org.hl7.fhir.r4.model.Timing.DayOfWeek.TUE; - case WED: return org.hl7.fhir.r4.model.Timing.DayOfWeek.WED; - case THU: return org.hl7.fhir.r4.model.Timing.DayOfWeek.THU; - case FRI: return org.hl7.fhir.r4.model.Timing.DayOfWeek.FRI; - case SAT: return org.hl7.fhir.r4.model.Timing.DayOfWeek.SAT; - case SUN: return org.hl7.fhir.r4.model.Timing.DayOfWeek.SUN; - default: return org.hl7.fhir.r4.model.Timing.DayOfWeek.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Timing.DayOfWeek convertDayOfWeek(org.hl7.fhir.r4.model.Timing.DayOfWeek src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MON: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.MON; - case TUE: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.TUE; - case WED: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.WED; - case THU: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.THU; - case FRI: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.FRI; - case SAT: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.SAT; - case SUN: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.SUN; - default: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.NULL; - } -} - - private static org.hl7.fhir.r4.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.dstu3.model.Timing.EventTiming src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MORN: return org.hl7.fhir.r4.model.Timing.EventTiming.MORN; - case AFT: return org.hl7.fhir.r4.model.Timing.EventTiming.AFT; - case EVE: return org.hl7.fhir.r4.model.Timing.EventTiming.EVE; - case NIGHT: return org.hl7.fhir.r4.model.Timing.EventTiming.NIGHT; - case PHS: return org.hl7.fhir.r4.model.Timing.EventTiming.PHS; - case HS: return org.hl7.fhir.r4.model.Timing.EventTiming.HS; - case WAKE: return org.hl7.fhir.r4.model.Timing.EventTiming.WAKE; - case C: return org.hl7.fhir.r4.model.Timing.EventTiming.C; - case CM: return org.hl7.fhir.r4.model.Timing.EventTiming.CM; - case CD: return org.hl7.fhir.r4.model.Timing.EventTiming.CD; - case CV: return org.hl7.fhir.r4.model.Timing.EventTiming.CV; - case AC: return org.hl7.fhir.r4.model.Timing.EventTiming.AC; - case ACM: return org.hl7.fhir.r4.model.Timing.EventTiming.ACM; - case ACD: return org.hl7.fhir.r4.model.Timing.EventTiming.ACD; - case ACV: return org.hl7.fhir.r4.model.Timing.EventTiming.ACV; - case PC: return org.hl7.fhir.r4.model.Timing.EventTiming.PC; - case PCM: return org.hl7.fhir.r4.model.Timing.EventTiming.PCM; - case PCD: return org.hl7.fhir.r4.model.Timing.EventTiming.PCD; - case PCV: return org.hl7.fhir.r4.model.Timing.EventTiming.PCV; - default: return org.hl7.fhir.r4.model.Timing.EventTiming.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.r4.model.Timing.EventTiming src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MORN: return org.hl7.fhir.dstu3.model.Timing.EventTiming.MORN; - case AFT: return org.hl7.fhir.dstu3.model.Timing.EventTiming.AFT; - case EVE: return org.hl7.fhir.dstu3.model.Timing.EventTiming.EVE; - case NIGHT: return org.hl7.fhir.dstu3.model.Timing.EventTiming.NIGHT; - case PHS: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PHS; - case HS: return org.hl7.fhir.dstu3.model.Timing.EventTiming.HS; - case WAKE: return org.hl7.fhir.dstu3.model.Timing.EventTiming.WAKE; - case C: return org.hl7.fhir.dstu3.model.Timing.EventTiming.C; - case CM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CM; - case CD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CD; - case CV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CV; - case AC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.AC; - case ACM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACM; - case ACD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACD; - case ACV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACV; - case PC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PC; - case PCM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCM; - case PCD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCD; - case PCV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCV; - default: return org.hl7.fhir.dstu3.model.Timing.EventTiming.NULL; - } -} - - public static org.hl7.fhir.r4.model.TriggerDefinition convertTriggerDefinition(org.hl7.fhir.dstu3.model.TriggerDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TriggerDefinition tgt = new org.hl7.fhir.r4.model.TriggerDefinition(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertTriggerType(src.getType())); - if (src.hasEventName()) - tgt.setEventName(src.getEventName()); - if (src.hasEventTiming()) - tgt.setEventTiming(convertType(src.getEventTiming())); - if (src.hasEventData()) - tgt.setEventData(convertDataRequirement(src.getEventData())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TriggerDefinition convertTriggerDefinition(org.hl7.fhir.r4.model.TriggerDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TriggerDefinition tgt = new org.hl7.fhir.dstu3.model.TriggerDefinition(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertTriggerType(src.getType())); - if (src.hasEventName()) - tgt.setEventName(src.getEventName()); - if (src.hasEventTiming()) - tgt.setEventTiming(convertType(src.getEventTiming())); - if (src.hasEventData()) - tgt.setEventData(convertDataRequirement(src.getEventData())); - return tgt; - } - - private static org.hl7.fhir.r4.model.TriggerDefinition.TriggerType convertTriggerType(org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NAMEDEVENT: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.NAMEDEVENT; - case PERIODIC: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.PERIODIC; - case DATAADDED: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.DATAADDED; - case DATAMODIFIED: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.DATAMODIFIED; - case DATAREMOVED: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.DATAREMOVED; - case DATAACCESSED: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.DATAACCESSED; - case DATAACCESSENDED: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.DATAACCESSENDED; - default: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType convertTriggerType(org.hl7.fhir.r4.model.TriggerDefinition.TriggerType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NAMEDEVENT: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.NAMEDEVENT; - case PERIODIC: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.PERIODIC; - case DATAADDED: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAADDED; - case DATAMODIFIED: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAMODIFIED; - case DATAREMOVED: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAREMOVED; - case DATAACCESSED: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAACCESSED; - case DATAACCESSENDED: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAACCESSENDED; - default: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.NULL; - } -} - - public static org.hl7.fhir.r4.model.UsageContext convertUsageContext(org.hl7.fhir.dstu3.model.UsageContext src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.UsageContext tgt = new org.hl7.fhir.r4.model.UsageContext(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCoding(src.getCode())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.UsageContext convertUsageContext(org.hl7.fhir.r4.model.UsageContext src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.UsageContext tgt = new org.hl7.fhir.dstu3.model.UsageContext(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCoding(src.getCode())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.dstu3.model.SimpleQuantity src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.SimpleQuantity tgt = new org.hl7.fhir.r4.model.SimpleQuantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasComparator()) - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.r4.model.SimpleQuantity src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.SimpleQuantity tgt = new org.hl7.fhir.dstu3.model.SimpleQuantity(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasComparator()) - tgt.setComparator(convertQuantityComparator(src.getComparator())); - if (src.hasUnit()) - tgt.setUnit(src.getUnit()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Type convertType(org.hl7.fhir.dstu3.model.Type src) throws FHIRException { - if (src == null) - return null; - if (src instanceof org.hl7.fhir.dstu3.model.Base64BinaryType) - return convertBase64Binary((org.hl7.fhir.dstu3.model.Base64BinaryType) src); - if (src instanceof org.hl7.fhir.dstu3.model.BooleanType) - return convertBoolean((org.hl7.fhir.dstu3.model.BooleanType) src); - if (src instanceof org.hl7.fhir.dstu3.model.CodeType) - return convertCode((org.hl7.fhir.dstu3.model.CodeType) src); - if (src instanceof org.hl7.fhir.dstu3.model.DateType) - return convertDate((org.hl7.fhir.dstu3.model.DateType) src); - if (src instanceof org.hl7.fhir.dstu3.model.DateTimeType) - return convertDateTime((org.hl7.fhir.dstu3.model.DateTimeType) src); - if (src instanceof org.hl7.fhir.dstu3.model.DecimalType) - return convertDecimal((org.hl7.fhir.dstu3.model.DecimalType) src); - if (src instanceof org.hl7.fhir.dstu3.model.IdType) - return convertId((org.hl7.fhir.dstu3.model.IdType) src); - if (src instanceof org.hl7.fhir.dstu3.model.InstantType) - return convertInstant((org.hl7.fhir.dstu3.model.InstantType) src); - if (src instanceof org.hl7.fhir.dstu3.model.IntegerType) - return convertInteger((org.hl7.fhir.dstu3.model.IntegerType) src); - if (src instanceof org.hl7.fhir.dstu3.model.MarkdownType) - return convertMarkdown((org.hl7.fhir.dstu3.model.MarkdownType) src); - if (src instanceof org.hl7.fhir.dstu3.model.OidType) - return convertOid((org.hl7.fhir.dstu3.model.OidType) src); - if (src instanceof org.hl7.fhir.dstu3.model.PositiveIntType) - return convertPositiveInt((org.hl7.fhir.dstu3.model.PositiveIntType) src); - if (src instanceof org.hl7.fhir.dstu3.model.StringType) - return convertString((org.hl7.fhir.dstu3.model.StringType) src); - if (src instanceof org.hl7.fhir.dstu3.model.TimeType) - return convertTime((org.hl7.fhir.dstu3.model.TimeType) src); - if (src instanceof org.hl7.fhir.dstu3.model.UnsignedIntType) - return convertUnsignedInt((org.hl7.fhir.dstu3.model.UnsignedIntType) src); - if (src instanceof org.hl7.fhir.dstu3.model.UriType) - return convertUri((org.hl7.fhir.dstu3.model.UriType) src); - if (src instanceof org.hl7.fhir.dstu3.model.UuidType) - return convertUuid((org.hl7.fhir.dstu3.model.UuidType) src); - if (src instanceof org.hl7.fhir.dstu3.model.Extension) - return convertExtension((org.hl7.fhir.dstu3.model.Extension) src); - if (src instanceof org.hl7.fhir.dstu3.model.Narrative) - return convertNarrative((org.hl7.fhir.dstu3.model.Narrative) src); - if (src instanceof org.hl7.fhir.dstu3.model.Age) - return convertAge((org.hl7.fhir.dstu3.model.Age) src); - if (src instanceof org.hl7.fhir.dstu3.model.Annotation) - return convertAnnotation((org.hl7.fhir.dstu3.model.Annotation) src); - if (src instanceof org.hl7.fhir.dstu3.model.Attachment) - return convertAttachment((org.hl7.fhir.dstu3.model.Attachment) src); - if (src instanceof org.hl7.fhir.dstu3.model.CodeableConcept) - return convertCodeableConcept((org.hl7.fhir.dstu3.model.CodeableConcept) src); - if (src instanceof org.hl7.fhir.dstu3.model.Coding) - return convertCoding((org.hl7.fhir.dstu3.model.Coding) src); - if (src instanceof org.hl7.fhir.dstu3.model.Count) - return convertCount((org.hl7.fhir.dstu3.model.Count) src); - if (src instanceof org.hl7.fhir.dstu3.model.Distance) - return convertDistance((org.hl7.fhir.dstu3.model.Distance) src); - if (src instanceof org.hl7.fhir.dstu3.model.Duration) - return convertDuration((org.hl7.fhir.dstu3.model.Duration) src); - if (src instanceof org.hl7.fhir.dstu3.model.Identifier) - return convertIdentifier((org.hl7.fhir.dstu3.model.Identifier) src); - if (src instanceof org.hl7.fhir.dstu3.model.Money) - return convertMoney((org.hl7.fhir.dstu3.model.Money) src); - if (src instanceof org.hl7.fhir.dstu3.model.Period) - return convertPeriod((org.hl7.fhir.dstu3.model.Period) src); - if (src instanceof org.hl7.fhir.dstu3.model.Quantity) - return convertQuantity((org.hl7.fhir.dstu3.model.Quantity) src); - if (src instanceof org.hl7.fhir.dstu3.model.Range) - return convertRange((org.hl7.fhir.dstu3.model.Range) src); - if (src instanceof org.hl7.fhir.dstu3.model.Ratio) - return convertRatio((org.hl7.fhir.dstu3.model.Ratio) src); - if (src instanceof org.hl7.fhir.dstu3.model.Reference) - return convertReference((org.hl7.fhir.dstu3.model.Reference) src); - if (src instanceof org.hl7.fhir.dstu3.model.SampledData) - return convertSampledData((org.hl7.fhir.dstu3.model.SampledData) src); - if (src instanceof org.hl7.fhir.dstu3.model.Signature) - return convertSignature((org.hl7.fhir.dstu3.model.Signature) src); - if (src instanceof org.hl7.fhir.dstu3.model.Address) - return convertAddress((org.hl7.fhir.dstu3.model.Address) src); - if (src instanceof org.hl7.fhir.dstu3.model.ContactDetail) - return convertContactDetail((org.hl7.fhir.dstu3.model.ContactDetail) src); - if (src instanceof org.hl7.fhir.dstu3.model.ContactPoint) - return convertContactPoint((org.hl7.fhir.dstu3.model.ContactPoint) src); - if (src instanceof org.hl7.fhir.dstu3.model.Contributor) - return convertContributor((org.hl7.fhir.dstu3.model.Contributor) src); - if (src instanceof org.hl7.fhir.dstu3.model.DataRequirement) - return convertDataRequirement((org.hl7.fhir.dstu3.model.DataRequirement) src); - if (src instanceof org.hl7.fhir.dstu3.model.Dosage) - return convertDosage((org.hl7.fhir.dstu3.model.Dosage) src); - if (src instanceof org.hl7.fhir.dstu3.model.ElementDefinition) - return convertElementDefinition((org.hl7.fhir.dstu3.model.ElementDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.HumanName) - return convertHumanName((org.hl7.fhir.dstu3.model.HumanName) src); - if (src instanceof org.hl7.fhir.dstu3.model.Meta) - return convertMeta((org.hl7.fhir.dstu3.model.Meta) src); - if (src instanceof org.hl7.fhir.dstu3.model.ParameterDefinition) - return convertParameterDefinition((org.hl7.fhir.dstu3.model.ParameterDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.RelatedArtifact) - return convertRelatedArtifact((org.hl7.fhir.dstu3.model.RelatedArtifact) src); - if (src instanceof org.hl7.fhir.dstu3.model.Timing) - return convertTiming((org.hl7.fhir.dstu3.model.Timing) src); - if (src instanceof org.hl7.fhir.dstu3.model.TriggerDefinition) - return convertTriggerDefinition((org.hl7.fhir.dstu3.model.TriggerDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.UsageContext) - return convertUsageContext((org.hl7.fhir.dstu3.model.UsageContext) src); - if (src instanceof org.hl7.fhir.dstu3.model.SimpleQuantity) - return convertSimpleQuantity((org.hl7.fhir.dstu3.model.SimpleQuantity) src); - throw new Error("Unknown type "+src.fhirType()); - } - - public static org.hl7.fhir.dstu3.model.Type convertType(org.hl7.fhir.r4.model.Type src) throws FHIRException { - if (src == null) - return null; - if (src instanceof org.hl7.fhir.r4.model.Base64BinaryType) - return convertBase64Binary((org.hl7.fhir.r4.model.Base64BinaryType) src); - if (src instanceof org.hl7.fhir.r4.model.BooleanType) - return convertBoolean((org.hl7.fhir.r4.model.BooleanType) src); - if (src instanceof org.hl7.fhir.r4.model.CodeType) - return convertCode((org.hl7.fhir.r4.model.CodeType) src); - if (src instanceof org.hl7.fhir.r4.model.DateType) - return convertDate((org.hl7.fhir.r4.model.DateType) src); - if (src instanceof org.hl7.fhir.r4.model.DateTimeType) - return convertDateTime((org.hl7.fhir.r4.model.DateTimeType) src); - if (src instanceof org.hl7.fhir.r4.model.DecimalType) - return convertDecimal((org.hl7.fhir.r4.model.DecimalType) src); - if (src instanceof org.hl7.fhir.r4.model.IdType) - return convertId((org.hl7.fhir.r4.model.IdType) src); - if (src instanceof org.hl7.fhir.r4.model.InstantType) - return convertInstant((org.hl7.fhir.r4.model.InstantType) src); - if (src instanceof org.hl7.fhir.r4.model.IntegerType) - return convertInteger((org.hl7.fhir.r4.model.IntegerType) src); - if (src instanceof org.hl7.fhir.r4.model.MarkdownType) - return convertMarkdown((org.hl7.fhir.r4.model.MarkdownType) src); - if (src instanceof org.hl7.fhir.r4.model.OidType) - return convertOid((org.hl7.fhir.r4.model.OidType) src); - if (src instanceof org.hl7.fhir.r4.model.PositiveIntType) - return convertPositiveInt((org.hl7.fhir.r4.model.PositiveIntType) src); - if (src instanceof org.hl7.fhir.r4.model.StringType) - return convertString((org.hl7.fhir.r4.model.StringType) src); - if (src instanceof org.hl7.fhir.r4.model.TimeType) - return convertTime((org.hl7.fhir.r4.model.TimeType) src); - if (src instanceof org.hl7.fhir.r4.model.UnsignedIntType) - return convertUnsignedInt((org.hl7.fhir.r4.model.UnsignedIntType) src); - if (src instanceof org.hl7.fhir.r4.model.UriType) - return convertUri((org.hl7.fhir.r4.model.UriType) src); - if (src instanceof org.hl7.fhir.r4.model.UuidType) - return convertUuid((org.hl7.fhir.r4.model.UuidType) src); - if (src instanceof org.hl7.fhir.r4.model.Extension) - return convertExtension((org.hl7.fhir.r4.model.Extension) src); - if (src instanceof org.hl7.fhir.r4.model.Narrative) - return convertNarrative((org.hl7.fhir.r4.model.Narrative) src); - if (src instanceof org.hl7.fhir.r4.model.Age) - return convertAge((org.hl7.fhir.r4.model.Age) src); - if (src instanceof org.hl7.fhir.r4.model.Annotation) - return convertAnnotation((org.hl7.fhir.r4.model.Annotation) src); - if (src instanceof org.hl7.fhir.r4.model.Attachment) - return convertAttachment((org.hl7.fhir.r4.model.Attachment) src); - if (src instanceof org.hl7.fhir.r4.model.CodeableConcept) - return convertCodeableConcept((org.hl7.fhir.r4.model.CodeableConcept) src); - if (src instanceof org.hl7.fhir.r4.model.Coding) - return convertCoding((org.hl7.fhir.r4.model.Coding) src); - if (src instanceof org.hl7.fhir.r4.model.Count) - return convertCount((org.hl7.fhir.r4.model.Count) src); - if (src instanceof org.hl7.fhir.r4.model.Distance) - return convertDistance((org.hl7.fhir.r4.model.Distance) src); - if (src instanceof org.hl7.fhir.r4.model.Duration) - return convertDuration((org.hl7.fhir.r4.model.Duration) src); - if (src instanceof org.hl7.fhir.r4.model.Identifier) - return convertIdentifier((org.hl7.fhir.r4.model.Identifier) src); - if (src instanceof org.hl7.fhir.r4.model.Money) - return convertMoney((org.hl7.fhir.r4.model.Money) src); - if (src instanceof org.hl7.fhir.r4.model.Period) - return convertPeriod((org.hl7.fhir.r4.model.Period) src); - if (src instanceof org.hl7.fhir.r4.model.Quantity) - return convertQuantity((org.hl7.fhir.r4.model.Quantity) src); - if (src instanceof org.hl7.fhir.r4.model.Range) - return convertRange((org.hl7.fhir.r4.model.Range) src); - if (src instanceof org.hl7.fhir.r4.model.Ratio) - return convertRatio((org.hl7.fhir.r4.model.Ratio) src); - if (src instanceof org.hl7.fhir.r4.model.Reference) - return convertReference((org.hl7.fhir.r4.model.Reference) src); - if (src instanceof org.hl7.fhir.r4.model.SampledData) - return convertSampledData((org.hl7.fhir.r4.model.SampledData) src); - if (src instanceof org.hl7.fhir.r4.model.Signature) - return convertSignature((org.hl7.fhir.r4.model.Signature) src); - if (src instanceof org.hl7.fhir.r4.model.Address) - return convertAddress((org.hl7.fhir.r4.model.Address) src); - if (src instanceof org.hl7.fhir.r4.model.ContactDetail) - return convertContactDetail((org.hl7.fhir.r4.model.ContactDetail) src); - if (src instanceof org.hl7.fhir.r4.model.ContactPoint) - return convertContactPoint((org.hl7.fhir.r4.model.ContactPoint) src); - if (src instanceof org.hl7.fhir.r4.model.Contributor) - return convertContributor((org.hl7.fhir.r4.model.Contributor) src); - if (src instanceof org.hl7.fhir.r4.model.DataRequirement) - return convertDataRequirement((org.hl7.fhir.r4.model.DataRequirement) src); - if (src instanceof org.hl7.fhir.r4.model.Dosage) - return convertDosage((org.hl7.fhir.r4.model.Dosage) src); - if (src instanceof org.hl7.fhir.r4.model.ElementDefinition) - return convertElementDefinition((org.hl7.fhir.r4.model.ElementDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.HumanName) - return convertHumanName((org.hl7.fhir.r4.model.HumanName) src); - if (src instanceof org.hl7.fhir.r4.model.Meta) - return convertMeta((org.hl7.fhir.r4.model.Meta) src); - if (src instanceof org.hl7.fhir.r4.model.ParameterDefinition) - return convertParameterDefinition((org.hl7.fhir.r4.model.ParameterDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.RelatedArtifact) - return convertRelatedArtifact((org.hl7.fhir.r4.model.RelatedArtifact) src); - if (src instanceof org.hl7.fhir.r4.model.Timing) - return convertTiming((org.hl7.fhir.r4.model.Timing) src); - if (src instanceof org.hl7.fhir.r4.model.TriggerDefinition) - return convertTriggerDefinition((org.hl7.fhir.r4.model.TriggerDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.UsageContext) - return convertUsageContext((org.hl7.fhir.r4.model.UsageContext) src); - if (src instanceof org.hl7.fhir.r4.model.SimpleQuantity) - return convertSimpleQuantity((org.hl7.fhir.r4.model.SimpleQuantity) src); - throw new Error("Unknown type "+src.fhirType()); - } - - private static void copyDomainResource(org.hl7.fhir.dstu3.model.DomainResource src, org.hl7.fhir.r4.model.DomainResource tgt) throws FHIRException { - copyResource(src, tgt); - if (src.hasText()) - tgt.setText(convertNarrative(src.getText())); - for (org.hl7.fhir.dstu3.model.Resource t : src.getContained()) - tgt.addContained(convertResource(t)); - for (org.hl7.fhir.dstu3.model.Extension t : src.getExtension()) - tgt.addExtension(convertExtension(t)); - for (org.hl7.fhir.dstu3.model.Extension t : src.getModifierExtension()) - tgt.addModifierExtension(convertExtension(t)); - } - private static void copyDomainResource(org.hl7.fhir.r4.model.DomainResource src, org.hl7.fhir.dstu3.model.DomainResource tgt) throws FHIRException { - copyResource(src, tgt); - if (src.hasText()) - tgt.setText(convertNarrative(src.getText())); - for (org.hl7.fhir.r4.model.Resource t : src.getContained()) - tgt.addContained(convertResource(t)); - for (org.hl7.fhir.r4.model.Extension t : src.getExtension()) - tgt.addExtension(convertExtension(t)); - for (org.hl7.fhir.r4.model.Extension t : src.getModifierExtension()) - tgt.addModifierExtension(convertExtension(t)); - } - public static org.hl7.fhir.r4.model.Parameters convertParameters(org.hl7.fhir.dstu3.model.Parameters src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Parameters tgt = new org.hl7.fhir.r4.model.Parameters(); - copyResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getParameter()) - tgt.addParameter(convertParametersParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Parameters convertParameters(org.hl7.fhir.r4.model.Parameters src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Parameters tgt = new org.hl7.fhir.dstu3.model.Parameters(); - copyResource(src, tgt); - for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getParameter()) - tgt.addParameter(convertParametersParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasResource()) - tgt.setResource(convertResource(src.getResource())); - for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getPart()) - tgt.addPart(convertParametersParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasResource()) - tgt.setResource(convertResource(src.getResource())); - for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getPart()) - tgt.addPart(convertParametersParameterComponent(t)); - return tgt; - } - - private static void copyResource(org.hl7.fhir.dstu3.model.Resource src, org.hl7.fhir.r4.model.Resource tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - if (src.hasMeta()) - tgt.setMeta(convertMeta(src.getMeta())); - if (src.hasImplicitRules()) - tgt.setImplicitRules(src.getImplicitRules()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - } - private static void copyResource(org.hl7.fhir.r4.model.Resource src, org.hl7.fhir.dstu3.model.Resource tgt) throws FHIRException { - if (src.hasId()) - tgt.setId(src.getId()); - if (src.hasMeta()) - tgt.setMeta(convertMeta(src.getMeta())); - if (src.hasImplicitRules()) - tgt.setImplicitRules(src.getImplicitRules()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - } - public static org.hl7.fhir.r4.model.Account convertAccount(org.hl7.fhir.dstu3.model.Account src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Account tgt = new org.hl7.fhir.r4.model.Account(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertAccountStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasActive()) - tgt.setActive(convertPeriod(src.getActive())); - if (src.hasBalance()) - tgt.setBalance(convertMoney(src.getBalance())); - for (org.hl7.fhir.dstu3.model.Account.CoverageComponent t : src.getCoverage()) - tgt.addCoverage(convertCoverageComponent(t)); - if (src.hasOwner()) - tgt.setOwner(convertReference(src.getOwner())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.Account.GuarantorComponent t : src.getGuarantor()) - tgt.addGuarantor(convertGuarantorComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Account convertAccount(org.hl7.fhir.r4.model.Account src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Account tgt = new org.hl7.fhir.dstu3.model.Account(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertAccountStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasActive()) - tgt.setActive(convertPeriod(src.getActive())); - if (src.hasBalance()) - tgt.setBalance(convertMoney(src.getBalance())); - for (org.hl7.fhir.r4.model.Account.CoverageComponent t : src.getCoverage()) - tgt.addCoverage(convertCoverageComponent(t)); - if (src.hasOwner()) - tgt.setOwner(convertReference(src.getOwner())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.Account.GuarantorComponent t : src.getGuarantor()) - tgt.addGuarantor(convertGuarantorComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.dstu3.model.Account.AccountStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Account.AccountStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.r4.model.Account.AccountStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Account.AccountStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Account.AccountStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.r4.model.Account.AccountStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Account.AccountStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.dstu3.model.Account.AccountStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Account.AccountStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Account.AccountStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Account.CoverageComponent convertCoverageComponent(org.hl7.fhir.dstu3.model.Account.CoverageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Account.CoverageComponent tgt = new org.hl7.fhir.r4.model.Account.CoverageComponent(); - copyElement(src, tgt); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - if (src.hasPriority()) - tgt.setPriority(src.getPriority()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Account.CoverageComponent convertCoverageComponent(org.hl7.fhir.r4.model.Account.CoverageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Account.CoverageComponent tgt = new org.hl7.fhir.dstu3.model.Account.CoverageComponent(); - copyElement(src, tgt); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - if (src.hasPriority()) - tgt.setPriority(src.getPriority()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Account.GuarantorComponent convertGuarantorComponent(org.hl7.fhir.dstu3.model.Account.GuarantorComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Account.GuarantorComponent tgt = new org.hl7.fhir.r4.model.Account.GuarantorComponent(); - copyElement(src, tgt); - if (src.hasParty()) - tgt.setParty(convertReference(src.getParty())); - if (src.hasOnHold()) - tgt.setOnHold(src.getOnHold()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Account.GuarantorComponent convertGuarantorComponent(org.hl7.fhir.r4.model.Account.GuarantorComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Account.GuarantorComponent tgt = new org.hl7.fhir.dstu3.model.Account.GuarantorComponent(); - copyElement(src, tgt); - if (src.hasParty()) - tgt.setParty(convertReference(src.getParty())); - if (src.hasOnHold()) - tgt.setOnHold(src.getOnHold()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ActivityDefinition convertActivityDefinition(org.hl7.fhir.dstu3.model.ActivityDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ActivityDefinition tgt = new org.hl7.fhir.r4.model.ActivityDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTopic()) - tgt.addTopic(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Contributor t : src.getContributor()) - tgt.addContributor(convertContributor(t)); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getLibrary()) - tgt.addLibrary(convertReference(t)); - if (src.hasKind()) - tgt.setKind(convertActivityDefinitionKind(src.getKind())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertActivityDefinitionParticipantComponent(t)); - if (src.hasProduct()) - tgt.setProduct(convertType(src.getProduct())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosage()) - tgt.addDosage(convertDosage(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - if (src.hasTransform()) - tgt.setTransform(convertReference(src.getTransform())); - for (org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent t : src.getDynamicValue()) - tgt.addDynamicValue(convertActivityDefinitionDynamicValueComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ActivityDefinition convertActivityDefinition(org.hl7.fhir.r4.model.ActivityDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ActivityDefinition tgt = new org.hl7.fhir.dstu3.model.ActivityDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTopic()) - tgt.addTopic(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Contributor t : src.getContributor()) - tgt.addContributor(convertContributor(t)); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getLibrary()) - tgt.addLibrary(convertReference(t)); - if (src.hasKind()) - tgt.setKind(convertActivityDefinitionKind(src.getKind())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertActivityDefinitionParticipantComponent(t)); - if (src.hasProduct()) - tgt.setProduct(convertType(src.getProduct())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - for (org.hl7.fhir.r4.model.Dosage t : src.getDosage()) - tgt.addDosage(convertDosage(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - if (src.hasTransform()) - tgt.setTransform(convertReference(src.getTransform())); - for (org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent t : src.getDynamicValue()) - tgt.addDynamicValue(convertActivityDefinitionDynamicValueComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Enumerations.PublicationStatus convertPublicationStatus(org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.RETIRED; - case UNKNOWN: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus convertPublicationStatus(org.hl7.fhir.r4.model.Enumerations.PublicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.ACTIVE; - case RETIRED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.RETIRED; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind convertActivityDefinitionKind(org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACCOUNT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ACCOUNT; - case ACTIVITYDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ACTIVITYDEFINITION; - case ADVERSEEVENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ADVERSEEVENT; - case ALLERGYINTOLERANCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ALLERGYINTOLERANCE; - case APPOINTMENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.APPOINTMENT; - case APPOINTMENTRESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.APPOINTMENTRESPONSE; - case AUDITEVENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.AUDITEVENT; - case BASIC: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.BASIC; - case BINARY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.BINARY; - case BODYSITE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.BODYSTRUCTURE; - case BUNDLE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.BUNDLE; - case CAPABILITYSTATEMENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CAPABILITYSTATEMENT; - case CAREPLAN: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CAREPLAN; - case CARETEAM: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CARETEAM; - case CHARGEITEM: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CHARGEITEM; - case CLAIM: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CLAIM; - case CLAIMRESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CLAIMRESPONSE; - case CLINICALIMPRESSION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CLINICALIMPRESSION; - case CODESYSTEM: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CODESYSTEM; - case COMMUNICATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.COMMUNICATION; - case COMMUNICATIONREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.COMMUNICATIONREQUEST; - case COMPARTMENTDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.COMPARTMENTDEFINITION; - case COMPOSITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.COMPOSITION; - case CONCEPTMAP: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CONCEPTMAP; - case CONDITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CONDITION; - case CONSENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CONSENT; - case CONTRACT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CONTRACT; - case COVERAGE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.COVERAGE; - case DETECTEDISSUE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DETECTEDISSUE; - case DEVICE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DEVICE; - case DEVICECOMPONENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DEVICECOMPONENT; - case DEVICEMETRIC: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DEVICEMETRIC; - case DEVICEREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DEVICEREQUEST; - case DEVICEUSESTATEMENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DEVICEUSESTATEMENT; - case DIAGNOSTICREPORT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DIAGNOSTICREPORT; - case DOCUMENTMANIFEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DOCUMENTMANIFEST; - case DOCUMENTREFERENCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DOCUMENTREFERENCE; - case DOMAINRESOURCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DOMAINRESOURCE; - case ELIGIBILITYREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ELIGIBILITYREQUEST; - case ELIGIBILITYRESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ELIGIBILITYRESPONSE; - case ENCOUNTER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ENCOUNTER; - case ENDPOINT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ENDPOINT; - case ENROLLMENTREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ENROLLMENTREQUEST; - case ENROLLMENTRESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ENROLLMENTRESPONSE; - case EPISODEOFCARE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.EPISODEOFCARE; - case EXPANSIONPROFILE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.EXPANSIONPROFILE; - case EXPLANATIONOFBENEFIT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.EXPLANATIONOFBENEFIT; - case FAMILYMEMBERHISTORY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.FAMILYMEMBERHISTORY; - case FLAG: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.FLAG; - case GOAL: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.GOAL; - case GRAPHDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.GRAPHDEFINITION; - case GROUP: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.GROUP; - case GUIDANCERESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.GUIDANCERESPONSE; - case HEALTHCARESERVICE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.HEALTHCARESERVICE; - case IMAGINGMANIFEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.IMAGINGMANIFEST; - case IMAGINGSTUDY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.IMAGINGSTUDY; - case IMMUNIZATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.IMMUNIZATION; - case IMMUNIZATIONRECOMMENDATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.IMMUNIZATIONRECOMMENDATION; - case IMPLEMENTATIONGUIDE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.IMPLEMENTATIONGUIDE; - case LIBRARY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.LIBRARY; - case LINKAGE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.LINKAGE; - case LIST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.LIST; - case LOCATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.LOCATION; - case MEASURE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEASURE; - case MEASUREREPORT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEASUREREPORT; - case MEDIA: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDIA; - case MEDICATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDICATION; - case MEDICATIONADMINISTRATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONADMINISTRATION; - case MEDICATIONDISPENSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONDISPENSE; - case MEDICATIONREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONREQUEST; - case MEDICATIONSTATEMENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONSTATEMENT; - case MESSAGEDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MESSAGEDEFINITION; - case MESSAGEHEADER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MESSAGEHEADER; - case NAMINGSYSTEM: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.NAMINGSYSTEM; - case NUTRITIONORDER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.NUTRITIONORDER; - case OBSERVATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.OBSERVATION; - case OPERATIONDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.OPERATIONDEFINITION; - case OPERATIONOUTCOME: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.OPERATIONOUTCOME; - case ORGANIZATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ORGANIZATION; - case PARAMETERS: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PARAMETERS; - case PATIENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PATIENT; - case PAYMENTNOTICE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PAYMENTNOTICE; - case PAYMENTRECONCILIATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PAYMENTRECONCILIATION; - case PERSON: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PERSON; - case PLANDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PLANDEFINITION; - case PRACTITIONER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PRACTITIONER; - case PRACTITIONERROLE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PRACTITIONERROLE; - case PROCEDURE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROCEDURE; - case PROCEDUREREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROCEDUREREQUEST; - case PROCESSREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROCESSREQUEST; - case PROCESSRESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROCESSRESPONSE; - case PROVENANCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROVENANCE; - case QUESTIONNAIRE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.QUESTIONNAIRE; - case QUESTIONNAIRERESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.QUESTIONNAIRERESPONSE; - case REFERRALREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROCEDUREREQUEST; - case RELATEDPERSON: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.RELATEDPERSON; - case REQUESTGROUP: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.REQUESTGROUP; - case RESEARCHSTUDY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.RESEARCHSTUDY; - case RESEARCHSUBJECT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.RESEARCHSUBJECT; - case RESOURCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.RESOURCE; - case RISKASSESSMENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.RISKASSESSMENT; - case SCHEDULE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SCHEDULE; - case SEARCHPARAMETER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SEARCHPARAMETER; - case SEQUENCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SEQUENCE; - case SERVICEDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SERVICEDEFINITION; - case SLOT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SLOT; - case SPECIMEN: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SPECIMEN; - case STRUCTUREDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.STRUCTUREDEFINITION; - case STRUCTUREMAP: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.STRUCTUREMAP; - case SUBSCRIPTION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SUBSCRIPTION; - case SUBSTANCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SUBSTANCE; - case SUPPLYDELIVERY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SUPPLYDELIVERY; - case SUPPLYREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SUPPLYREQUEST; - case TASK: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.TASK; - case TESTREPORT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.TESTREPORT; - case TESTSCRIPT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.TESTSCRIPT; - case VALUESET: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.VALUESET; - case VISIONPRESCRIPTION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.VISIONPRESCRIPTION; - default: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind convertActivityDefinitionKind(org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACCOUNT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ACCOUNT; - case ACTIVITYDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ACTIVITYDEFINITION; - case ADVERSEEVENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ADVERSEEVENT; - case ALLERGYINTOLERANCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ALLERGYINTOLERANCE; - case APPOINTMENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.APPOINTMENT; - case APPOINTMENTRESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.APPOINTMENTRESPONSE; - case AUDITEVENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.AUDITEVENT; - case BASIC: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.BASIC; - case BINARY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.BINARY; - case BODYSTRUCTURE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.BODYSITE; - case BUNDLE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.BUNDLE; - case CAPABILITYSTATEMENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CAPABILITYSTATEMENT; - case CAREPLAN: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CAREPLAN; - case CARETEAM: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CARETEAM; - case CHARGEITEM: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CHARGEITEM; - case CLAIM: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CLAIM; - case CLAIMRESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CLAIMRESPONSE; - case CLINICALIMPRESSION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CLINICALIMPRESSION; - case CODESYSTEM: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CODESYSTEM; - case COMMUNICATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.COMMUNICATION; - case COMMUNICATIONREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.COMMUNICATIONREQUEST; - case COMPARTMENTDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.COMPARTMENTDEFINITION; - case COMPOSITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.COMPOSITION; - case CONCEPTMAP: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CONCEPTMAP; - case CONDITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CONDITION; - case CONSENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CONSENT; - case CONTRACT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CONTRACT; - case COVERAGE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.COVERAGE; - case DETECTEDISSUE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DETECTEDISSUE; - case DEVICE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DEVICE; - case DEVICECOMPONENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DEVICECOMPONENT; - case DEVICEMETRIC: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DEVICEMETRIC; - case DEVICEREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DEVICEREQUEST; - case DEVICEUSESTATEMENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DEVICEUSESTATEMENT; - case DIAGNOSTICREPORT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DIAGNOSTICREPORT; - case DOCUMENTMANIFEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DOCUMENTMANIFEST; - case DOCUMENTREFERENCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DOCUMENTREFERENCE; - case DOMAINRESOURCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DOMAINRESOURCE; - case ELIGIBILITYREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ELIGIBILITYREQUEST; - case ELIGIBILITYRESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ELIGIBILITYRESPONSE; - case ENCOUNTER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ENCOUNTER; - case ENDPOINT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ENDPOINT; - case ENROLLMENTREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ENROLLMENTREQUEST; - case ENROLLMENTRESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ENROLLMENTRESPONSE; - case EPISODEOFCARE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.EPISODEOFCARE; - case EXPANSIONPROFILE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.EXPANSIONPROFILE; - case EXPLANATIONOFBENEFIT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.EXPLANATIONOFBENEFIT; - case FAMILYMEMBERHISTORY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.FAMILYMEMBERHISTORY; - case FLAG: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.FLAG; - case GOAL: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.GOAL; - case GRAPHDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.GRAPHDEFINITION; - case GROUP: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.GROUP; - case GUIDANCERESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.GUIDANCERESPONSE; - case HEALTHCARESERVICE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.HEALTHCARESERVICE; - case IMAGINGMANIFEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.IMAGINGMANIFEST; - case IMAGINGSTUDY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.IMAGINGSTUDY; - case IMMUNIZATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.IMMUNIZATION; - case IMMUNIZATIONRECOMMENDATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.IMMUNIZATIONRECOMMENDATION; - case IMPLEMENTATIONGUIDE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.IMPLEMENTATIONGUIDE; - case LIBRARY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.LIBRARY; - case LINKAGE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.LINKAGE; - case LIST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.LIST; - case LOCATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.LOCATION; - case MEASURE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEASURE; - case MEASUREREPORT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEASUREREPORT; - case MEDIA: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDIA; - case MEDICATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDICATION; - case MEDICATIONADMINISTRATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONADMINISTRATION; - case MEDICATIONDISPENSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONDISPENSE; - case MEDICATIONREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONREQUEST; - case MEDICATIONSTATEMENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONSTATEMENT; - case MESSAGEDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MESSAGEDEFINITION; - case MESSAGEHEADER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MESSAGEHEADER; - case NAMINGSYSTEM: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.NAMINGSYSTEM; - case NUTRITIONORDER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.NUTRITIONORDER; - case OBSERVATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.OBSERVATION; - case OPERATIONDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.OPERATIONDEFINITION; - case OPERATIONOUTCOME: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.OPERATIONOUTCOME; - case ORGANIZATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ORGANIZATION; - case PARAMETERS: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PARAMETERS; - case PATIENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PATIENT; - case PAYMENTNOTICE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PAYMENTNOTICE; - case PAYMENTRECONCILIATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PAYMENTRECONCILIATION; - case PERSON: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PERSON; - case PLANDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PLANDEFINITION; - case PRACTITIONER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PRACTITIONER; - case PRACTITIONERROLE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PRACTITIONERROLE; - case PROCEDURE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PROCEDURE; - case PROCEDUREREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PROCEDUREREQUEST; - case PROCESSREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PROCESSREQUEST; - case PROCESSRESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PROCESSRESPONSE; - case PROVENANCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PROVENANCE; - case QUESTIONNAIRE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.QUESTIONNAIRE; - case QUESTIONNAIRERESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.QUESTIONNAIRERESPONSE; - case RELATEDPERSON: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.RELATEDPERSON; - case REQUESTGROUP: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.REQUESTGROUP; - case RESEARCHSTUDY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.RESEARCHSTUDY; - case RESEARCHSUBJECT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.RESEARCHSUBJECT; - case RESOURCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.RESOURCE; - case RISKASSESSMENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.RISKASSESSMENT; - case SCHEDULE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SCHEDULE; - case SEARCHPARAMETER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SEARCHPARAMETER; - case SEQUENCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SEQUENCE; - case SERVICEDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SERVICEDEFINITION; - case SLOT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SLOT; - case SPECIMEN: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SPECIMEN; - case STRUCTUREDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.STRUCTUREDEFINITION; - case STRUCTUREMAP: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.STRUCTUREMAP; - case SUBSCRIPTION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SUBSCRIPTION; - case SUBSTANCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SUBSTANCE; - case SUPPLYDELIVERY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SUPPLYDELIVERY; - case SUPPLYREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SUPPLYREQUEST; - case TASK: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.TASK; - case TESTREPORT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.TESTREPORT; - case TESTSCRIPT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.TESTSCRIPT; - case VALUESET: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.VALUESET; - case VISIONPRESCRIPTION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.VISIONPRESCRIPTION; - default: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.NULL; - } -} - - public static org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionParticipantComponent convertActivityDefinitionParticipantComponent(org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionParticipantComponent tgt = new org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionParticipantComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertActivityParticipantType(src.getType())); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionParticipantComponent convertActivityDefinitionParticipantComponent(org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionParticipantComponent tgt = new org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionParticipantComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertActivityParticipantType(src.getType())); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType convertActivityParticipantType(org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType.PATIENT; - case PRACTITIONER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType.PRACTITIONER; - case RELATEDPERSON: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType.RELATEDPERSON; - default: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType convertActivityParticipantType(org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType.PATIENT; - case PRACTITIONER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType.PRACTITIONER; - case RELATEDPERSON: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType.RELATEDPERSON; - default: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType.NULL; - } -} - - public static org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent convertActivityDefinitionDynamicValueComponent(org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent tgt = new org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent convertActivityDefinitionDynamicValueComponent(org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent tgt = new org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - return tgt; - } - - public static org.hl7.fhir.r4.model.AllergyIntolerance convertAllergyIntolerance(org.hl7.fhir.dstu3.model.AllergyIntolerance src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.AllergyIntolerance tgt = new org.hl7.fhir.r4.model.AllergyIntolerance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasClinicalStatus()) - tgt.setClinicalStatus(convertAllergyIntoleranceClinicalStatus(src.getClinicalStatus())); - if (src.hasVerificationStatus()) - tgt.setVerificationStatus(convertAllergyIntoleranceVerificationStatus(src.getVerificationStatus())); - if (src.hasType()) - tgt.setType(convertAllergyIntoleranceType(src.getType())); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getCategory()) - tgt.addCategory(convertAllergyIntoleranceCategory(t.getValue())); - if (src.hasCriticality()) - tgt.setCriticality(convertAllergyIntoleranceCriticality(src.getCriticality())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasOnset()) - tgt.setOnset(convertType(src.getOnset())); - if (src.hasAssertedDate()) - tgt.setAssertedDate(src.getAssertedDate()); - if (src.hasRecorder()) - tgt.setRecorder(convertReference(src.getRecorder())); - if (src.hasAsserter()) - tgt.setAsserter(convertReference(src.getAsserter())); - if (src.hasLastOccurrence()) - tgt.setLastOccurrence(src.getLastOccurrence()); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent t : src.getReaction()) - tgt.addReaction(convertAllergyIntoleranceReactionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.AllergyIntolerance convertAllergyIntolerance(org.hl7.fhir.r4.model.AllergyIntolerance src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.AllergyIntolerance tgt = new org.hl7.fhir.dstu3.model.AllergyIntolerance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasClinicalStatus()) - tgt.setClinicalStatus(convertAllergyIntoleranceClinicalStatus(src.getClinicalStatus())); - if (src.hasVerificationStatus()) - tgt.setVerificationStatus(convertAllergyIntoleranceVerificationStatus(src.getVerificationStatus())); - if (src.hasType()) - tgt.setType(convertAllergyIntoleranceType(src.getType())); - for (org.hl7.fhir.r4.model.Enumeration t : src.getCategory()) - tgt.addCategory(convertAllergyIntoleranceCategory(t.getValue())); - if (src.hasCriticality()) - tgt.setCriticality(convertAllergyIntoleranceCriticality(src.getCriticality())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasOnset()) - tgt.setOnset(convertType(src.getOnset())); - if (src.hasAssertedDate()) - tgt.setAssertedDate(src.getAssertedDate()); - if (src.hasRecorder()) - tgt.setRecorder(convertReference(src.getRecorder())); - if (src.hasAsserter()) - tgt.setAsserter(convertReference(src.getAsserter())); - if (src.hasLastOccurrence()) - tgt.setLastOccurrence(src.getLastOccurrence()); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceReactionComponent t : src.getReaction()) - tgt.addReaction(convertAllergyIntoleranceReactionComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus convertAllergyIntoleranceClinicalStatus(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.INACTIVE; - case RESOLVED: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.RESOLVED; - default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus convertAllergyIntoleranceClinicalStatus(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.INACTIVE; - case RESOLVED: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.RESOLVED; - default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus convertAllergyIntoleranceVerificationStatus(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UNCONFIRMED: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.UNCONFIRMED; - case CONFIRMED: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.CONFIRMED; - case REFUTED: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.REFUTED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus convertAllergyIntoleranceVerificationStatus(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UNCONFIRMED: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.UNCONFIRMED; - case CONFIRMED: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.CONFIRMED; - case REFUTED: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.REFUTED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceType convertAllergyIntoleranceType(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ALLERGY: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceType.ALLERGY; - case INTOLERANCE: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceType.INTOLERANCE; - default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType convertAllergyIntoleranceType(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ALLERGY: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType.ALLERGY; - case INTOLERANCE: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType.INTOLERANCE; - default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType.NULL; - } -} - - private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory convertAllergyIntoleranceCategory(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FOOD: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory.FOOD; - case MEDICATION: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory.MEDICATION; - case ENVIRONMENT: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory.ENVIRONMENT; - case BIOLOGIC: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory.BIOLOGIC; - default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory convertAllergyIntoleranceCategory(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FOOD: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory.FOOD; - case MEDICATION: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory.MEDICATION; - case ENVIRONMENT: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory.ENVIRONMENT; - case BIOLOGIC: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory.BIOLOGIC; - default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory.NULL; - } -} - - private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality convertAllergyIntoleranceCriticality(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LOW: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality.LOW; - case HIGH: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality.HIGH; - case UNABLETOASSESS: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality.UNABLETOASSESS; - default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality convertAllergyIntoleranceCriticality(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LOW: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality.LOW; - case HIGH: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality.HIGH; - case UNABLETOASSESS: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality.UNABLETOASSESS; - default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality.NULL; - } -} - - public static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceReactionComponent convertAllergyIntoleranceReactionComponent(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceReactionComponent tgt = new org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceReactionComponent(); - copyElement(src, tgt); - if (src.hasSubstance()) - tgt.setSubstance(convertCodeableConcept(src.getSubstance())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getManifestation()) - tgt.addManifestation(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasOnset()) - tgt.setOnset(src.getOnset()); - if (src.hasSeverity()) - tgt.setSeverity(convertAllergyIntoleranceSeverity(src.getSeverity())); - if (src.hasExposureRoute()) - tgt.setExposureRoute(convertCodeableConcept(src.getExposureRoute())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent convertAllergyIntoleranceReactionComponent(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceReactionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent tgt = new org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent(); - copyElement(src, tgt); - if (src.hasSubstance()) - tgt.setSubstance(convertCodeableConcept(src.getSubstance())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getManifestation()) - tgt.addManifestation(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasOnset()) - tgt.setOnset(src.getOnset()); - if (src.hasSeverity()) - tgt.setSeverity(convertAllergyIntoleranceSeverity(src.getSeverity())); - if (src.hasExposureRoute()) - tgt.setExposureRoute(convertCodeableConcept(src.getExposureRoute())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity convertAllergyIntoleranceSeverity(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MILD: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity.MILD; - case MODERATE: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity.MODERATE; - case SEVERE: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity.SEVERE; - default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity convertAllergyIntoleranceSeverity(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MILD: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity.MILD; - case MODERATE: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity.MODERATE; - case SEVERE: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity.SEVERE; - default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity.NULL; - } -} - - public static org.hl7.fhir.r4.model.Appointment convertAppointment(org.hl7.fhir.dstu3.model.Appointment src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Appointment tgt = new org.hl7.fhir.r4.model.Appointment(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertAppointmentStatus(src.getStatus())); - if (src.hasServiceCategory()) - tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) - tgt.addServiceType(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(t)); - if (src.hasAppointmentType()) - tgt.setAppointmentType(convertCodeableConcept(src.getAppointmentType())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getIndication()) - tgt.addIndication(convertReference(t)); - if (src.hasPriority()) - tgt.setPriority(src.getPriority()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInformation(convertReference(t)); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - if (src.hasMinutesDuration()) - tgt.setMinutesDuration(src.getMinutesDuration()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSlot()) - tgt.addSlot(convertReference(t)); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getIncomingReferral()) - tgt.addIncomingReferral(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertAppointmentParticipantComponent(t)); - for (org.hl7.fhir.dstu3.model.Period t : src.getRequestedPeriod()) - tgt.addRequestedPeriod(convertPeriod(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Appointment convertAppointment(org.hl7.fhir.r4.model.Appointment src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Appointment tgt = new org.hl7.fhir.dstu3.model.Appointment(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertAppointmentStatus(src.getStatus())); - if (src.hasServiceCategory()) - tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) - tgt.addServiceType(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(t)); - if (src.hasAppointmentType()) - tgt.setAppointmentType(convertCodeableConcept(src.getAppointmentType())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getIndication()) - tgt.addIndication(convertReference(t)); - if (src.hasPriority()) - tgt.setPriority(src.getPriority()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInformation(convertReference(t)); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - if (src.hasMinutesDuration()) - tgt.setMinutesDuration(src.getMinutesDuration()); - for (org.hl7.fhir.r4.model.Reference t : src.getSlot()) - tgt.addSlot(convertReference(t)); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - for (org.hl7.fhir.r4.model.Reference t : src.getIncomingReferral()) - tgt.addIncomingReferral(convertReference(t)); - for (org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertAppointmentParticipantComponent(t)); - for (org.hl7.fhir.r4.model.Period t : src.getRequestedPeriod()) - tgt.addRequestedPeriod(convertPeriod(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.PROPOSED; - case PENDING: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.PENDING; - case BOOKED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.BOOKED; - case ARRIVED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.ARRIVED; - case FULFILLED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.FULFILLED; - case CANCELLED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.CANCELLED; - case NOSHOW: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.NOSHOW; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.r4.model.Appointment.AppointmentStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.PROPOSED; - case PENDING: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.PENDING; - case BOOKED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.BOOKED; - case ARRIVED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.ARRIVED; - case FULFILLED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.FULFILLED; - case CANCELLED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.CANCELLED; - case NOSHOW: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.NOSHOW; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - if (src.hasRequired()) - tgt.setRequired(convertParticipantRequired(src.getRequired())); - if (src.hasStatus()) - tgt.setStatus(convertParticipationStatus(src.getStatus())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - if (src.hasRequired()) - tgt.setRequired(convertParticipantRequired(src.getRequired())); - if (src.hasStatus()) - tgt.setStatus(convertParticipationStatus(src.getStatus())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.REQUIRED; - case OPTIONAL: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.OPTIONAL; - case INFORMATIONONLY: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.INFORMATIONONLY; - default: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.r4.model.Appointment.ParticipantRequired src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUIRED: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.REQUIRED; - case OPTIONAL: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.OPTIONAL; - case INFORMATIONONLY: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.INFORMATIONONLY; - default: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.NULL; - } -} - - private static org.hl7.fhir.r4.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.TENTATIVE; - case NEEDSACTION: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.NEEDSACTION; - default: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.r4.model.Appointment.ParticipationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.TENTATIVE; - case NEEDSACTION: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.NEEDSACTION; - default: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.dstu3.model.AppointmentResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.AppointmentResponse tgt = new org.hl7.fhir.r4.model.AppointmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasAppointment()) - tgt.setAppointment(convertReference(src.getAppointment())); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getParticipantType()) - tgt.addParticipantType(convertCodeableConcept(t)); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - if (src.hasParticipantStatus()) - tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.r4.model.AppointmentResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.AppointmentResponse tgt = new org.hl7.fhir.dstu3.model.AppointmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasAppointment()) - tgt.setAppointment(convertReference(src.getAppointment())); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getParticipantType()) - tgt.addParticipantType(convertCodeableConcept(t)); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - if (src.hasParticipantStatus()) - tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - private static org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.TENTATIVE; - case NEEDSACTION: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; - default: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACCEPTED: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.ACCEPTED; - case DECLINED: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.DECLINED; - case TENTATIVE: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.TENTATIVE; - case NEEDSACTION: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; - default: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.AuditEvent convertAuditEvent(org.hl7.fhir.dstu3.model.AuditEvent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.AuditEvent tgt = new org.hl7.fhir.r4.model.AuditEvent(); - copyDomainResource(src, tgt); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - for (org.hl7.fhir.dstu3.model.Coding t : src.getSubtype()) - tgt.addSubtype(convertCoding(t)); - if (src.hasAction()) - tgt.setAction(convertAuditEventAction(src.getAction())); - if (src.hasRecorded()) - tgt.setRecorded(src.getRecorded()); - if (src.hasOutcome()) - tgt.setOutcome(convertAuditEventOutcome(src.getOutcome())); - if (src.hasOutcomeDesc()) - tgt.setOutcomeDesc(src.getOutcomeDesc()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPurposeOfEvent()) - tgt.addPurposeOfEvent(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) - tgt.addAgent(convertAuditEventAgentComponent(t)); - if (src.hasSource()) - tgt.setSource(convertAuditEventSourceComponent(src.getSource())); - for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent t : src.getEntity()) - tgt.addEntity(convertAuditEventEntityComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.AuditEvent convertAuditEvent(org.hl7.fhir.r4.model.AuditEvent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.AuditEvent tgt = new org.hl7.fhir.dstu3.model.AuditEvent(); - copyDomainResource(src, tgt); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - for (org.hl7.fhir.r4.model.Coding t : src.getSubtype()) - tgt.addSubtype(convertCoding(t)); - if (src.hasAction()) - tgt.setAction(convertAuditEventAction(src.getAction())); - if (src.hasRecorded()) - tgt.setRecorded(src.getRecorded()); - if (src.hasOutcome()) - tgt.setOutcome(convertAuditEventOutcome(src.getOutcome())); - if (src.hasOutcomeDesc()) - tgt.setOutcomeDesc(src.getOutcomeDesc()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPurposeOfEvent()) - tgt.addPurposeOfEvent(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) - tgt.addAgent(convertAuditEventAgentComponent(t)); - if (src.hasSource()) - tgt.setSource(convertAuditEventSourceComponent(src.getSource())); - for (org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent t : src.getEntity()) - tgt.addEntity(convertAuditEventEntityComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case C: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.C; - case R: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.R; - case U: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.U; - case D: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.D; - case E: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.E; - default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.r4.model.AuditEvent.AuditEventAction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case C: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.C; - case R: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.R; - case U: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.U; - case D: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.D; - case E: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.E; - default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.NULL; - } -} - - private static org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _0: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._0; - case _4: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._4; - case _8: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._8; - case _12: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._12; - default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _0: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._0; - case _4: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._4; - case _8: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._8; - case _12: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._12; - default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome.NULL; - } -} - - public static org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent convertAuditEventAgentComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - if (src.hasReference()) - tgt.setReference(convertReference(src.getReference())); - if (src.hasUserId()) - tgt.setUserId(convertIdentifier(src.getUserId())); - if (src.hasAltId()) - tgt.setAltId(src.getAltId()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasRequestor()) - tgt.setRequestor(src.getRequestor()); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.dstu3.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - if (src.hasMedia()) - tgt.setMedia(convertCoding(src.getMedia())); - if (src.hasNetwork()) - tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPurposeOfUse()) - tgt.addPurposeOfUse(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent convertAuditEventAgentComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - if (src.hasReference()) - tgt.setReference(convertReference(src.getReference())); - if (src.hasUserId()) - tgt.setUserId(convertIdentifier(src.getUserId())); - if (src.hasAltId()) - tgt.setAltId(src.getAltId()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasRequestor()) - tgt.setRequestor(src.getRequestor()); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.r4.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - if (src.hasMedia()) - tgt.setMedia(convertCoding(src.getMedia())); - if (src.hasNetwork()) - tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPurposeOfUse()) - tgt.addPurposeOfUse(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent(); - copyElement(src, tgt); - if (src.hasAddress()) - tgt.setAddress(src.getAddress()); - if (src.hasType()) - tgt.setType(convertAuditEventAgentNetworkType(src.getType())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent(); - copyElement(src, tgt); - if (src.hasAddress()) - tgt.setAddress(src.getAddress()); - if (src.hasType()) - tgt.setType(convertAuditEventAgentNetworkType(src.getType())); - return tgt; - } - - private static org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType convertAuditEventAgentNetworkType(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _1: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._1; - case _2: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._2; - case _3: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._3; - case _4: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._4; - case _5: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._5; - default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType convertAuditEventAgentNetworkType(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case _1: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._1; - case _2: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._2; - case _3: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._3; - case _4: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._4; - case _5: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._5; - default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType.NULL; - } -} - - public static org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent(); - copyElement(src, tgt); - if (src.hasSite()) - tgt.setSite(src.getSite()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent(); - copyElement(src, tgt); - if (src.hasSite()) - tgt.setSite(src.getSite()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.r4.model.Coding t : src.getType()) - tgt.addType(convertCoding(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent convertAuditEventEntityComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasReference()) - tgt.setReference(convertReference(src.getReference())); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - if (src.hasRole()) - tgt.setRole(convertCoding(src.getRole())); - if (src.hasLifecycle()) - tgt.setLifecycle(convertCoding(src.getLifecycle())); - for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCoding(t)); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasQuery()) - tgt.setQuery(src.getQuery()); - for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent t : src.getDetail()) - tgt.addDetail(convertAuditEventEntityDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent convertAuditEventEntityComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasReference()) - tgt.setReference(convertReference(src.getReference())); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - if (src.hasRole()) - tgt.setRole(convertCoding(src.getRole())); - if (src.hasLifecycle()) - tgt.setLifecycle(convertCoding(src.getLifecycle())); - for (org.hl7.fhir.r4.model.Coding t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCoding(t)); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasQuery()) - tgt.setQuery(src.getQuery()); - for (org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent t : src.getDetail()) - tgt.addDetail(convertAuditEventEntityDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Basic convertBasic(org.hl7.fhir.dstu3.model.Basic src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Basic tgt = new org.hl7.fhir.r4.model.Basic(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Basic convertBasic(org.hl7.fhir.r4.model.Basic src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Basic tgt = new org.hl7.fhir.dstu3.model.Basic(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Binary convertBinary(org.hl7.fhir.dstu3.model.Binary src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Binary tgt = new org.hl7.fhir.r4.model.Binary(); - copyResource(src, tgt); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasSecurityContext()) - tgt.setSecurityContext(convertReference(src.getSecurityContext())); - if (src.hasContent()) - tgt.setContent(src.getContent()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Binary convertBinary(org.hl7.fhir.r4.model.Binary src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Binary tgt = new org.hl7.fhir.dstu3.model.Binary(); - copyResource(src, tgt); - if (src.hasContentType()) - tgt.setContentType(src.getContentType()); - if (src.hasSecurityContext()) - tgt.setSecurityContext(convertReference(src.getSecurityContext())); - if (src.hasContent()) - tgt.setContent(src.getContent()); - return tgt; - } - - public static org.hl7.fhir.r4.model.BodyStructure convertBodySite(org.hl7.fhir.dstu3.model.BodySite src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.BodyStructure tgt = new org.hl7.fhir.r4.model.BodyStructure(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); -// if (src.hasCode()) -// tgt.setCode(convertCodeableConcept(src.getCode())); -// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getQualifier()) -// tgt.addQualifier(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getImage()) - tgt.addImage(convertAttachment(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.BodySite convertBodySite(org.hl7.fhir.r4.model.BodyStructure src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.BodySite tgt = new org.hl7.fhir.dstu3.model.BodySite(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); -// if (src.hasCode()) -// tgt.setCode(convertCodeableConcept(src.getCode())); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getQualifier()) -// tgt.addQualifier(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.Attachment t : src.getImage()) - tgt.addImage(convertAttachment(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Bundle convertBundle(org.hl7.fhir.dstu3.model.Bundle src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Bundle tgt = new org.hl7.fhir.r4.model.Bundle(); - copyResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasType()) - tgt.setType(convertBundleType(src.getType())); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - for (org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent t : src.getEntry()) - tgt.addEntry(convertBundleEntryComponent(t)); - if (src.hasSignature()) - tgt.setSignature(convertSignature(src.getSignature())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Bundle convertBundle(org.hl7.fhir.r4.model.Bundle src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Bundle tgt = new org.hl7.fhir.dstu3.model.Bundle(); - copyResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasType()) - tgt.setType(convertBundleType(src.getType())); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - for (org.hl7.fhir.r4.model.Bundle.BundleEntryComponent t : src.getEntry()) - tgt.addEntry(convertBundleEntryComponent(t)); - if (src.hasSignature()) - tgt.setSignature(convertSignature(src.getSignature())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Bundle.BundleType convertBundleType(org.hl7.fhir.dstu3.model.Bundle.BundleType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENT: return org.hl7.fhir.r4.model.Bundle.BundleType.DOCUMENT; - case MESSAGE: return org.hl7.fhir.r4.model.Bundle.BundleType.MESSAGE; - case TRANSACTION: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTION; - case TRANSACTIONRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTIONRESPONSE; - case BATCH: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCH; - case BATCHRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCHRESPONSE; - case HISTORY: return org.hl7.fhir.r4.model.Bundle.BundleType.HISTORY; - case SEARCHSET: return org.hl7.fhir.r4.model.Bundle.BundleType.SEARCHSET; - case COLLECTION: return org.hl7.fhir.r4.model.Bundle.BundleType.COLLECTION; - default: return org.hl7.fhir.r4.model.Bundle.BundleType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Bundle.BundleType convertBundleType(org.hl7.fhir.r4.model.Bundle.BundleType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DOCUMENT: return org.hl7.fhir.dstu3.model.Bundle.BundleType.DOCUMENT; - case MESSAGE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.MESSAGE; - case TRANSACTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTION; - case TRANSACTIONRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTIONRESPONSE; - case BATCH: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCH; - case BATCHRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCHRESPONSE; - case HISTORY: return org.hl7.fhir.dstu3.model.Bundle.BundleType.HISTORY; - case SEARCHSET: return org.hl7.fhir.dstu3.model.Bundle.BundleType.SEARCHSET; - case COLLECTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.COLLECTION; - default: return org.hl7.fhir.dstu3.model.Bundle.BundleType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleLinkComponent(); - copyElement(src, tgt); - if (src.hasRelation()) - tgt.setRelation(src.getRelation()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.r4.model.Bundle.BundleLinkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent(); - copyElement(src, tgt); - if (src.hasRelation()) - tgt.setRelation(src.getRelation()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - if (src.hasFullUrl()) - tgt.setFullUrl(src.getFullUrl()); - if (src.hasResource()) - tgt.setResource(convertResource(src.getResource())); - if (src.hasSearch()) - tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); - if (src.hasRequest()) - tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) - tgt.addLink(convertBundleLinkComponent(t)); - if (src.hasFullUrl()) - tgt.setFullUrl(src.getFullUrl()); - if (src.hasResource()) - tgt.setResource(convertResource(src.getResource())); - if (src.hasSearch()) - tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); - if (src.hasRequest()) - tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent(); - copyElement(src, tgt); - if (src.hasMode()) - tgt.setMode(convertSearchEntryMode(src.getMode())); - if (src.hasScore()) - tgt.setScore(src.getScore()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent(); - copyElement(src, tgt); - if (src.hasMode()) - tgt.setMode(convertSearchEntryMode(src.getMode())); - if (src.hasScore()) - tgt.setScore(src.getScore()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MATCH: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.MATCH; - case INCLUDE: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.INCLUDE; - case OUTCOME: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.OUTCOME; - default: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.r4.model.Bundle.SearchEntryMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MATCH: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.MATCH; - case INCLUDE: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.INCLUDE; - case OUTCOME: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.OUTCOME; - default: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent(); - copyElement(src, tgt); - if (src.hasMethod()) - tgt.setMethod(convertHTTPVerb(src.getMethod())); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIfNoneMatch()) - tgt.setIfNoneMatch(src.getIfNoneMatch()); - if (src.hasIfModifiedSince()) - tgt.setIfModifiedSince(src.getIfModifiedSince()); - if (src.hasIfMatch()) - tgt.setIfMatch(src.getIfMatch()); - if (src.hasIfNoneExist()) - tgt.setIfNoneExist(src.getIfNoneExist()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent(); - copyElement(src, tgt); - if (src.hasMethod()) - tgt.setMethod(convertHTTPVerb(src.getMethod())); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIfNoneMatch()) - tgt.setIfNoneMatch(src.getIfNoneMatch()); - if (src.hasIfModifiedSince()) - tgt.setIfModifiedSince(src.getIfModifiedSince()); - if (src.hasIfMatch()) - tgt.setIfMatch(src.getIfMatch()); - if (src.hasIfNoneExist()) - tgt.setIfNoneExist(src.getIfNoneExist()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.dstu3.model.Bundle.HTTPVerb src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GET: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.GET; - case POST: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.POST; - case PUT: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.PUT; - case DELETE: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.DELETE; - default: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.r4.model.Bundle.HTTPVerb src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GET: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.GET; - case POST: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.POST; - case PUT: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.PUT; - case DELETE: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.DELETE; - default: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.NULL; - } -} - - public static org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent(); - copyElement(src, tgt); - if (src.hasStatus()) - tgt.setStatus(src.getStatus()); - if (src.hasLocation()) - tgt.setLocation(src.getLocation()); - if (src.hasEtag()) - tgt.setEtag(src.getEtag()); - if (src.hasLastModified()) - tgt.setLastModified(src.getLastModified()); - if (src.hasOutcome()) - tgt.setOutcome(convertResource(src.getOutcome())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent(); - copyElement(src, tgt); - if (src.hasStatus()) - tgt.setStatus(src.getStatus()); - if (src.hasLocation()) - tgt.setLocation(src.getLocation()); - if (src.hasEtag()) - tgt.setEtag(src.getEtag()); - if (src.hasLastModified()) - tgt.setLastModified(src.getLastModified()); - if (src.hasOutcome()) - tgt.setOutcome(convertResource(src.getOutcome())); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement convertCapabilityStatement(org.hl7.fhir.dstu3.model.CapabilityStatement src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement tgt = new org.hl7.fhir.r4.model.CapabilityStatement(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasKind()) - tgt.setKind(convertCapabilityStatementKind(src.getKind())); - for (org.hl7.fhir.dstu3.model.UriType t : src.getInstantiates()) - tgt.addInstantiates(t.getValue()); - if (src.hasSoftware()) - tgt.setSoftware(convertCapabilityStatementSoftwareComponent(src.getSoftware())); - if (src.hasImplementation()) - tgt.setImplementation(convertCapabilityStatementImplementationComponent(src.getImplementation())); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - if (src.hasAcceptUnknown()) - tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getFormat()) - tgt.addFormat(t.getValue()); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getPatchFormat()) - tgt.addPatchFormat(t.getValue()); - for (org.hl7.fhir.dstu3.model.UriType t : src.getImplementationGuide()) - tgt.addImplementationGuide(t.getValue()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) - tgt.addRest(convertCapabilityStatementRestComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) - tgt.addMessaging(convertCapabilityStatementMessagingComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) - tgt.addDocument(convertCapabilityStatementDocumentComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement convertCapabilityStatement(org.hl7.fhir.r4.model.CapabilityStatement src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasKind()) - tgt.setKind(convertCapabilityStatementKind(src.getKind())); - for (org.hl7.fhir.r4.model.UriType t : src.getInstantiates()) - tgt.addInstantiates(t.getValue()); - if (src.hasSoftware()) - tgt.setSoftware(convertCapabilityStatementSoftwareComponent(src.getSoftware())); - if (src.hasImplementation()) - tgt.setImplementation(convertCapabilityStatementImplementationComponent(src.getImplementation())); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - if (src.hasAcceptUnknown()) - tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); - for (org.hl7.fhir.r4.model.CodeType t : src.getFormat()) - tgt.addFormat(t.getValue()); - for (org.hl7.fhir.r4.model.CodeType t : src.getPatchFormat()) - tgt.addPatchFormat(t.getValue()); - for (org.hl7.fhir.r4.model.UriType t : src.getImplementationGuide()) - tgt.addImplementationGuide(t.getValue()); - for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) - tgt.addRest(convertCapabilityStatementRestComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) - tgt.addMessaging(convertCapabilityStatementMessagingComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) - tgt.addDocument(convertCapabilityStatementDocumentComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind convertCapabilityStatementKind(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; - case CAPABILITY: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; - case REQUIREMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; - default: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind convertCapabilityStatementKind(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; - case CAPABILITY: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; - case REQUIREMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.NULL; - } -} - - private static org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NO: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NO; - case EXTENSIONS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; - case ELEMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.ELEMENTS; - case BOTH: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.BOTH; - default: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NO: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NO; - case EXTENSIONS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; - case ELEMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.ELEMENTS; - case BOTH: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.BOTH; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NULL; - } -} - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertCapabilityStatementSoftwareComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasReleaseDate()) - tgt.setReleaseDate(src.getReleaseDate()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertCapabilityStatementSoftwareComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasReleaseDate()) - tgt.setReleaseDate(src.getReleaseDate()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent convertCapabilityStatementImplementationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent convertCapabilityStatementImplementationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent convertCapabilityStatementRestComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent(); - copyElement(src, tgt); - if (src.hasMode()) - tgt.setMode(convertRestfulCapabilityMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasSecurity()) - tgt.setSecurity(convertCapabilityStatementRestSecurityComponent(src.getSecurity())); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) - tgt.addResource(convertCapabilityStatementRestResourceComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertSystemInteractionComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertCapabilityStatementRestResourceSearchParamComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) - tgt.addOperation(convertCapabilityStatementRestOperationComponent(t)); - for (org.hl7.fhir.dstu3.model.UriType t : src.getCompartment()) - tgt.addCompartment(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent convertCapabilityStatementRestComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent(); - copyElement(src, tgt); - if (src.hasMode()) - tgt.setMode(convertRestfulCapabilityMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasSecurity()) - tgt.setSecurity(convertCapabilityStatementRestSecurityComponent(src.getSecurity())); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) - tgt.addResource(convertCapabilityStatementRestResourceComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertSystemInteractionComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertCapabilityStatementRestResourceSearchParamComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) - tgt.addOperation(convertCapabilityStatementRestOperationComponent(t)); - for (org.hl7.fhir.r4.model.UriType t : src.getCompartment()) - tgt.addCompartment(t.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode convertRestfulCapabilityMode(org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLIENT: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; - case SERVER: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.SERVER; - default: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode convertRestfulCapabilityMode(org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CLIENT: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; - case SERVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.SERVER; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertCapabilityStatementRestSecurityComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); - copyElement(src, tgt); - if (src.hasCors()) - tgt.setCors(src.getCors()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getService()) - tgt.addService(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) - tgt.addCertificate(convertCapabilityStatementRestSecurityCertificateComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertCapabilityStatementRestSecurityComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); - copyElement(src, tgt); - if (src.hasCors()) - tgt.setCors(src.getCors()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getService()) - tgt.addService(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) - tgt.addCertificate(convertCapabilityStatementRestSecurityCertificateComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertCapabilityStatementRestSecurityCertificateComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertCapabilityStatementRestSecurityCertificateComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasBlob()) - tgt.setBlob(src.getBlob()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertCapabilityStatementRestResourceComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertResourceInteractionComponent(t)); - if (src.hasVersioning()) - tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); - if (src.hasReadHistory()) - tgt.setReadHistory(src.getReadHistory()); - if (src.hasUpdateCreate()) - tgt.setUpdateCreate(src.getUpdateCreate()); - if (src.hasConditionalCreate()) - tgt.setConditionalCreate(src.getConditionalCreate()); - if (src.hasConditionalRead()) - tgt.setConditionalRead(convertConditionalReadStatus(src.getConditionalRead())); - if (src.hasConditionalUpdate()) - tgt.setConditionalUpdate(src.getConditionalUpdate()); - if (src.hasConditionalDelete()) - tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getReferencePolicy()) - tgt.addReferencePolicy(convertReferenceHandlingPolicy(t.getValue())); - for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchInclude()) - tgt.addSearchInclude(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchRevInclude()) - tgt.addSearchRevInclude(t.getValue()); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertCapabilityStatementRestResourceSearchParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertCapabilityStatementRestResourceComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) - tgt.addInteraction(convertResourceInteractionComponent(t)); - if (src.hasVersioning()) - tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); - if (src.hasReadHistory()) - tgt.setReadHistory(src.getReadHistory()); - if (src.hasUpdateCreate()) - tgt.setUpdateCreate(src.getUpdateCreate()); - if (src.hasConditionalCreate()) - tgt.setConditionalCreate(src.getConditionalCreate()); - if (src.hasConditionalRead()) - tgt.setConditionalRead(convertConditionalReadStatus(src.getConditionalRead())); - if (src.hasConditionalUpdate()) - tgt.setConditionalUpdate(src.getConditionalUpdate()); - if (src.hasConditionalDelete()) - tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); - for (org.hl7.fhir.r4.model.Enumeration t : src.getReferencePolicy()) - tgt.addReferencePolicy(convertReferenceHandlingPolicy(t.getValue())); - for (org.hl7.fhir.r4.model.StringType t : src.getSearchInclude()) - tgt.addSearchInclude(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getSearchRevInclude()) - tgt.addSearchRevInclude(t.getValue()); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) - tgt.addSearchParam(convertCapabilityStatementRestResourceSearchParamComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOVERSION: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; - case VERSIONED: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; - case VERSIONEDUPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; - default: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOVERSION: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; - case VERSIONED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; - case VERSIONEDUPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NULL; - } -} - - private static org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus convertConditionalReadStatus(org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus.NOTSUPPORTED; - case MODIFIEDSINCE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus.MODIFIEDSINCE; - case NOTMATCH: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus.NOTMATCH; - case FULLSUPPORT: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus.FULLSUPPORT; - default: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus convertConditionalReadStatus(org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus.NOTSUPPORTED; - case MODIFIEDSINCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus.MODIFIEDSINCE; - case NOTMATCH: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus.NOTMATCH; - case FULLSUPPORT: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus.FULLSUPPORT; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; - case SINGLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; - case MULTIPLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; - default: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; - case SINGLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; - case MULTIPLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy convertReferenceHandlingPolicy(org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LITERAL: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.LITERAL; - case LOGICAL: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.LOGICAL; - case RESOLVES: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.RESOLVES; - case ENFORCED: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.ENFORCED; - case LOCAL: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.LOCAL; - default: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy convertReferenceHandlingPolicy(org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LITERAL: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.LITERAL; - case LOGICAL: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.LOGICAL; - case RESOLVES: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.RESOLVES; - case ENFORCED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.ENFORCED; - case LOCAL: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.LOCAL; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.NULL; - } -} - - public static org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertTypeRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertTypeRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case READ: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.READ; - case VREAD: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.VREAD; - case UPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; - case PATCH: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.PATCH; - case DELETE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.DELETE; - case HISTORYINSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; - case HISTORYTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; - case CREATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.CREATE; - case SEARCHTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; - default: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case READ: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.READ; - case VREAD: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.VREAD; - case UPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; - case PATCH: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.PATCH; - case DELETE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.DELETE; - case HISTORYINSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; - case HISTORYTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; - case CREATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.CREATE; - case SEARCHTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.NULL; - } -} - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertCapabilityStatementRestResourceSearchParamComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasType()) - tgt.setType(convertSearchParamType(src.getType())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertCapabilityStatementRestResourceSearchParamComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasType()) - tgt.setType(convertSearchParamType(src.getType())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.dstu3.model.Enumerations.SearchParamType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NUMBER: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NUMBER; - case DATE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.DATE; - case STRING: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.STRING; - case TOKEN: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.TOKEN; - case REFERENCE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.REFERENCE; - case COMPOSITE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.COMPOSITE; - case QUANTITY: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.QUANTITY; - case URI: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.URI; - default: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.r4.model.Enumerations.SearchParamType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NUMBER: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NUMBER; - case DATE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.DATE; - case STRING: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.STRING; - case TOKEN: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.TOKEN; - case REFERENCE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.REFERENCE; - case COMPOSITE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.COMPOSITE; - case QUANTITY: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.QUANTITY; - case URI: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.URI; - default: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NULL; - } -} - - public static org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertSystemRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertSystemRestfulInteraction(src.getCode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TRANSACTION: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; - case BATCH: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.BATCH; - case SEARCHSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; - case HISTORYSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; - default: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TRANSACTION: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; - case BATCH: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.BATCH; - case SEARCHSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; - case HISTORYSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.NULL; - } -} - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertCapabilityStatementRestOperationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDefinition()) - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertCapabilityStatementRestOperationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDefinition()) - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent convertCapabilityStatementMessagingComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) - tgt.addEndpoint(convertCapabilityStatementMessagingEndpointComponent(t)); - if (src.hasReliableCache()) - tgt.setReliableCache(src.getReliableCache()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent t : src.getSupportedMessage()) - tgt.addSupportedMessage(convertCapabilityStatementMessagingSupportedMessageComponent(t)); - for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) - tgt.addEvent(convertCapabilityStatementMessagingEventComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent convertCapabilityStatementMessagingComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) - tgt.addEndpoint(convertCapabilityStatementMessagingEndpointComponent(t)); - if (src.hasReliableCache()) - tgt.setReliableCache(src.getReliableCache()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent t : src.getSupportedMessage()) - tgt.addSupportedMessage(convertCapabilityStatementMessagingSupportedMessageComponent(t)); - for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) - tgt.addEvent(convertCapabilityStatementMessagingEventComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertCapabilityStatementMessagingEndpointComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); - copyElement(src, tgt); - if (src.hasProtocol()) - tgt.setProtocol(convertCoding(src.getProtocol())); - if (src.hasAddress()) - tgt.setAddress(src.getAddress()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertCapabilityStatementMessagingEndpointComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); - copyElement(src, tgt); - if (src.hasProtocol()) - tgt.setProtocol(convertCoding(src.getProtocol())); - if (src.hasAddress()) - tgt.setAddress(src.getAddress()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent convertCapabilityStatementMessagingSupportedMessageComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent(); - copyElement(src, tgt); - if (src.hasMode()) - tgt.setMode(convertEventCapabilityMode(src.getMode())); - if (src.hasDefinition()) - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent convertCapabilityStatementMessagingSupportedMessageComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent(); - copyElement(src, tgt); - if (src.hasMode()) - tgt.setMode(convertEventCapabilityMode(src.getMode())); - if (src.hasDefinition()) - tgt.setDefinition(convertReference(src.getDefinition())); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode convertEventCapabilityMode(org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SENDER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.SENDER; - case RECEIVER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.RECEIVER; - default: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode convertEventCapabilityMode(org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SENDER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.SENDER; - case RECEIVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.RECEIVER; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertCapabilityStatementMessagingEventComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCoding(src.getCode())); - if (src.hasCategory()) - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - if (src.hasMode()) - tgt.setMode(convertEventCapabilityMode(src.getMode())); - if (src.hasFocus()) - tgt.setFocus(src.getFocus()); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertCapabilityStatementMessagingEventComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCoding(src.getCode())); - if (src.hasCategory()) - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - if (src.hasMode()) - tgt.setMode(convertEventCapabilityMode(src.getMode())); - if (src.hasFocus()) - tgt.setFocus(src.getFocus()); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NULL; - } -} - - public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent convertCapabilityStatementDocumentComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent(); - copyElement(src, tgt); - if (src.hasMode()) - tgt.setMode(convertDocumentMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent convertCapabilityStatementDocumentComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent(); - copyElement(src, tgt); - if (src.hasMode()) - tgt.setMode(convertDocumentMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - private static org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRODUCER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.PRODUCER; - case CONSUMER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.CONSUMER; - default: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRODUCER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.PRODUCER; - case CONSUMER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.CONSUMER; - default: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.CarePlan convertCarePlan(org.hl7.fhir.dstu3.model.CarePlan src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CarePlan tgt = new org.hl7.fhir.r4.model.CarePlan(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertCarePlanStatus(src.getStatus())); - if (src.hasIntent()) - tgt.setIntent(convertCarePlanIntent(src.getIntent())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getCareTeam()) - tgt.addCareTeam(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAddresses()) - tgt.addAddresses(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInfo()) - tgt.addSupportingInfo(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) - tgt.addActivity(convertCarePlanActivityComponent(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CarePlan convertCarePlan(org.hl7.fhir.r4.model.CarePlan src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CarePlan tgt = new org.hl7.fhir.dstu3.model.CarePlan(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertCarePlanStatus(src.getStatus())); - if (src.hasIntent()) - tgt.setIntent(convertCarePlanIntent(src.getIntent())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getCareTeam()) - tgt.addCareTeam(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getAddresses()) - tgt.addAddresses(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInfo()) - tgt.addSupportingInfo(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - for (org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) - tgt.addActivity(convertCarePlanActivityComponent(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.SUSPENDED; - case COMPLETED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.ENTEREDINERROR; - case CANCELLED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.CANCELLED; - case UNKNOWN: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.r4.model.CarePlan.CarePlanStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.SUSPENDED; - case COMPLETED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.ENTEREDINERROR; - case CANCELLED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.CANCELLED; - case UNKNOWN: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.CarePlan.CarePlanIntent convertCarePlanIntent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSAL: return org.hl7.fhir.r4.model.CarePlan.CarePlanIntent.PROPOSAL; - case PLAN: return org.hl7.fhir.r4.model.CarePlan.CarePlanIntent.PLAN; - case ORDER: return org.hl7.fhir.r4.model.CarePlan.CarePlanIntent.ORDER; - case OPTION: return org.hl7.fhir.r4.model.CarePlan.CarePlanIntent.OPTION; - default: return org.hl7.fhir.r4.model.CarePlan.CarePlanIntent.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent convertCarePlanIntent(org.hl7.fhir.r4.model.CarePlan.CarePlanIntent src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSAL: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent.PROPOSAL; - case PLAN: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent.PLAN; - case ORDER: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent.ORDER; - case OPTION: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent.OPTION; - default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent.NULL; - } -} - - public static org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getOutcomeCodeableConcept()) - tgt.addOutcomeCodeableConcept(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getOutcomeReference()) - tgt.addOutcomeReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getProgress()) - tgt.addProgress(convertAnnotation(t)); - if (src.hasReference()) - tgt.setReference(convertReference(src.getReference())); - if (src.hasDetail()) - tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getOutcomeCodeableConcept()) - tgt.addOutcomeCodeableConcept(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getOutcomeReference()) - tgt.addOutcomeReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getProgress()) - tgt.addProgress(convertAnnotation(t)); - if (src.hasReference()) - tgt.setReference(convertReference(src.getReference())); - if (src.hasDetail()) - tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); - return tgt; - } - - public static org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasDefinition()) - tgt.setDefinition(convertReference(src.getDefinition())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); - if (src.hasStatusReason()) - tgt.setStatusReason(src.getStatusReason()); - if (src.hasProhibited()) - tgt.setProhibited(src.getProhibited()); - if (src.hasScheduled()) - tgt.setScheduled(convertType(src.getScheduled())); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - if (src.hasProduct()) - tgt.setProduct(convertType(src.getProduct())); - if (src.hasDailyAmount()) - tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasDefinition()) - tgt.setDefinition(convertReference(src.getDefinition())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getGoal()) - tgt.addGoal(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); - if (src.hasStatusReason()) - tgt.setStatusReason(src.getStatusReason()); - if (src.hasProhibited()) - tgt.setProhibited(src.getProhibited()); - if (src.hasScheduled()) - tgt.setScheduled(convertType(src.getScheduled())); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - if (src.hasProduct()) - tgt.setProduct(convertType(src.getProduct())); - if (src.hasDailyAmount()) - tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - private static org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSTARTED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; - case SCHEDULED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.SCHEDULED; - case INPROGRESS: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.CANCELLED; - case UNKNOWN: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTSTARTED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; - case SCHEDULED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.SCHEDULED; - case INPROGRESS: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.CANCELLED; - case UNKNOWN: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.CareTeam convertCareTeam(org.hl7.fhir.dstu3.model.CareTeam src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CareTeam tgt = new org.hl7.fhir.r4.model.CareTeam(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertCareTeamStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.CareTeam.CareTeamParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertCareTeamParticipantComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getManagingOrganization()) - tgt.addManagingOrganization(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CareTeam convertCareTeam(org.hl7.fhir.r4.model.CareTeam src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CareTeam tgt = new org.hl7.fhir.dstu3.model.CareTeam(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertCareTeamStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.CareTeam.CareTeamParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertCareTeamParticipantComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getManagingOrganization()) - tgt.addManagingOrganization(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CareTeam.CareTeamStatus convertCareTeamStatus(org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.PROPOSED; - case ACTIVE: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.SUSPENDED; - case INACTIVE: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus convertCareTeamStatus(org.hl7.fhir.r4.model.CareTeam.CareTeamStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.PROPOSED; - case ACTIVE: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.SUSPENDED; - case INACTIVE: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.CareTeam.CareTeamParticipantComponent convertCareTeamParticipantComponent(org.hl7.fhir.dstu3.model.CareTeam.CareTeamParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CareTeam.CareTeamParticipantComponent tgt = new org.hl7.fhir.r4.model.CareTeam.CareTeamParticipantComponent(); - copyElement(src, tgt); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasMember()) - tgt.setMember(convertReference(src.getMember())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CareTeam.CareTeamParticipantComponent convertCareTeamParticipantComponent(org.hl7.fhir.r4.model.CareTeam.CareTeamParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CareTeam.CareTeamParticipantComponent tgt = new org.hl7.fhir.dstu3.model.CareTeam.CareTeamParticipantComponent(); - copyElement(src, tgt); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasMember()) - tgt.setMember(convertReference(src.getMember())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ChargeItem convertChargeItem(org.hl7.fhir.dstu3.model.ChargeItem src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ChargeItem tgt = new org.hl7.fhir.r4.model.ChargeItem(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.dstu3.model.UriType t : src.getDefinition()) - tgt.addDefinition(t.getValue()); - if (src.hasStatus()) - tgt.setStatus(convertChargeItemStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - for (org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertChargeItemParticipantComponent(t)); - if (src.hasPerformingOrganization()) - tgt.setPerformingOrganization(convertReference(src.getPerformingOrganization())); - if (src.hasRequestingOrganization()) - tgt.setRequestingOrganization(convertReference(src.getRequestingOrganization())); - if (src.hasQuantity()) - tgt.setQuantity(convertQuantity(src.getQuantity())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodysite()) - tgt.addBodysite(convertCodeableConcept(t)); - if (src.hasFactorOverride()) - tgt.setFactorOverride(src.getFactorOverride()); - if (src.hasPriceOverride()) - tgt.setPriceOverride(convertMoney(src.getPriceOverride())); - if (src.hasOverrideReason()) - tgt.setOverrideReason(src.getOverrideReason()); - if (src.hasEnterer()) - tgt.setEnterer(convertReference(src.getEnterer())); - if (src.hasEnteredDate()) - tgt.setEnteredDate(src.getEnteredDate()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getService()) - tgt.addService(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAccount()) - tgt.addAccount(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInformation(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ChargeItem convertChargeItem(org.hl7.fhir.r4.model.ChargeItem src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ChargeItem tgt = new org.hl7.fhir.dstu3.model.ChargeItem(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.r4.model.UriType t : src.getDefinition()) - tgt.addDefinition(t.getValue()); - if (src.hasStatus()) - tgt.setStatus(convertChargeItemStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - for (org.hl7.fhir.r4.model.ChargeItem.ChargeItemParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertChargeItemParticipantComponent(t)); - if (src.hasPerformingOrganization()) - tgt.setPerformingOrganization(convertReference(src.getPerformingOrganization())); - if (src.hasRequestingOrganization()) - tgt.setRequestingOrganization(convertReference(src.getRequestingOrganization())); - if (src.hasQuantity()) - tgt.setQuantity(convertQuantity(src.getQuantity())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodysite()) - tgt.addBodysite(convertCodeableConcept(t)); - if (src.hasFactorOverride()) - tgt.setFactorOverride(src.getFactorOverride()); - if (src.hasPriceOverride()) - tgt.setPriceOverride(convertMoney(src.getPriceOverride())); - if (src.hasOverrideReason()) - tgt.setOverrideReason(src.getOverrideReason()); - if (src.hasEnterer()) - tgt.setEnterer(convertReference(src.getEnterer())); - if (src.hasEnteredDate()) - tgt.setEnteredDate(src.getEnteredDate()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getService()) - tgt.addService(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getAccount()) - tgt.addAccount(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInformation(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus convertChargeItemStatus(org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.PLANNED; - case BILLABLE: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.BILLABLE; - case NOTBILLABLE: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.NOTBILLABLE; - case ABORTED: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.ABORTED; - case BILLED: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.BILLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus convertChargeItemStatus(org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.PLANNED; - case BILLABLE: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.BILLABLE; - case NOTBILLABLE: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.NOTBILLABLE; - case ABORTED: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.ABORTED; - case BILLED: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.BILLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.ChargeItem.ChargeItemParticipantComponent convertChargeItemParticipantComponent(org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ChargeItem.ChargeItemParticipantComponent tgt = new org.hl7.fhir.r4.model.ChargeItem.ChargeItemParticipantComponent(); - copyElement(src, tgt); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemParticipantComponent convertChargeItemParticipantComponent(org.hl7.fhir.r4.model.ChargeItem.ChargeItemParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemParticipantComponent tgt = new org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemParticipantComponent(); - copyElement(src, tgt); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim convertClaim(org.hl7.fhir.dstu3.model.Claim src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim tgt = new org.hl7.fhir.r4.model.Claim(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertClaimStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubType()) - tgt.addSubType(convertCodeableConcept(t)); - if (src.hasUse()) - tgt.setUse(convertUse(src.getUse())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasBillablePeriod()) - tgt.setBillablePeriod(convertPeriod(src.getBillablePeriod())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasEnterer()) - tgt.setEnterer(convertReference(src.getEnterer())); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasPriority()) - tgt.setPriority(convertCodeableConcept(src.getPriority())); - if (src.hasFundsReserve()) - tgt.setFundsReserve(convertCodeableConcept(src.getFundsReserve())); - for (org.hl7.fhir.dstu3.model.Claim.RelatedClaimComponent t : src.getRelated()) - tgt.addRelated(convertRelatedClaimComponent(t)); - if (src.hasPrescription()) - tgt.setPrescription(convertReference(src.getPrescription())); - if (src.hasOriginalPrescription()) - tgt.setOriginalPrescription(convertReference(src.getOriginalPrescription())); - if (src.hasPayee()) - tgt.setPayee(convertPayeeComponent(src.getPayee())); - if (src.hasReferral()) - tgt.setReferral(convertReference(src.getReferral())); - if (src.hasFacility()) - tgt.setFacility(convertReference(src.getFacility())); - for (org.hl7.fhir.dstu3.model.Claim.CareTeamComponent t : src.getCareTeam()) - tgt.addCareTeam(convertCareTeamComponent(t)); - for (org.hl7.fhir.dstu3.model.Claim.SpecialConditionComponent t : src.getInformation()) - tgt.addInformation(convertSpecialConditionComponent(t)); - for (org.hl7.fhir.dstu3.model.Claim.DiagnosisComponent t : src.getDiagnosis()) - tgt.addDiagnosis(convertDiagnosisComponent(t)); - for (org.hl7.fhir.dstu3.model.Claim.ProcedureComponent t : src.getProcedure()) - tgt.addProcedure(convertProcedureComponent(t)); - for (org.hl7.fhir.dstu3.model.Claim.InsuranceComponent t : src.getInsurance()) - tgt.addInsurance(convertInsuranceComponent(t)); - if (src.hasAccident()) - tgt.setAccident(convertAccidentComponent(src.getAccident())); - if (src.hasEmploymentImpacted()) - tgt.setEmploymentImpacted(convertPeriod(src.getEmploymentImpacted())); - if (src.hasHospitalization()) - tgt.setHospitalization(convertPeriod(src.getHospitalization())); - for (org.hl7.fhir.dstu3.model.Claim.ItemComponent t : src.getItem()) - tgt.addItem(convertItemComponent(t)); - if (src.hasTotal()) - tgt.setTotal(convertMoney(src.getTotal())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim convertClaim(org.hl7.fhir.r4.model.Claim src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim tgt = new org.hl7.fhir.dstu3.model.Claim(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertClaimStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubType()) - tgt.addSubType(convertCodeableConcept(t)); - if (src.hasUse()) - tgt.setUse(convertUse(src.getUse())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasBillablePeriod()) - tgt.setBillablePeriod(convertPeriod(src.getBillablePeriod())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasEnterer()) - tgt.setEnterer(convertReference(src.getEnterer())); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasPriority()) - tgt.setPriority(convertCodeableConcept(src.getPriority())); - if (src.hasFundsReserve()) - tgt.setFundsReserve(convertCodeableConcept(src.getFundsReserve())); - for (org.hl7.fhir.r4.model.Claim.RelatedClaimComponent t : src.getRelated()) - tgt.addRelated(convertRelatedClaimComponent(t)); - if (src.hasPrescription()) - tgt.setPrescription(convertReference(src.getPrescription())); - if (src.hasOriginalPrescription()) - tgt.setOriginalPrescription(convertReference(src.getOriginalPrescription())); - if (src.hasPayee()) - tgt.setPayee(convertPayeeComponent(src.getPayee())); - if (src.hasReferral()) - tgt.setReferral(convertReference(src.getReferral())); - if (src.hasFacility()) - tgt.setFacility(convertReference(src.getFacility())); - for (org.hl7.fhir.r4.model.Claim.CareTeamComponent t : src.getCareTeam()) - tgt.addCareTeam(convertCareTeamComponent(t)); - for (org.hl7.fhir.r4.model.Claim.SpecialConditionComponent t : src.getInformation()) - tgt.addInformation(convertSpecialConditionComponent(t)); - for (org.hl7.fhir.r4.model.Claim.DiagnosisComponent t : src.getDiagnosis()) - tgt.addDiagnosis(convertDiagnosisComponent(t)); - for (org.hl7.fhir.r4.model.Claim.ProcedureComponent t : src.getProcedure()) - tgt.addProcedure(convertProcedureComponent(t)); - for (org.hl7.fhir.r4.model.Claim.InsuranceComponent t : src.getInsurance()) - tgt.addInsurance(convertInsuranceComponent(t)); - if (src.hasAccident()) - tgt.setAccident(convertAccidentComponent(src.getAccident())); - if (src.hasEmploymentImpacted()) - tgt.setEmploymentImpacted(convertPeriod(src.getEmploymentImpacted())); - if (src.hasHospitalization()) - tgt.setHospitalization(convertPeriod(src.getHospitalization())); - for (org.hl7.fhir.r4.model.Claim.ItemComponent t : src.getItem()) - tgt.addItem(convertItemComponent(t)); - if (src.hasTotal()) - tgt.setTotal(convertMoney(src.getTotal())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Claim.ClaimStatus convertClaimStatus(org.hl7.fhir.dstu3.model.Claim.ClaimStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Claim.ClaimStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.Claim.ClaimStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.Claim.ClaimStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Claim.ClaimStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Claim.ClaimStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Claim.ClaimStatus convertClaimStatus(org.hl7.fhir.r4.model.Claim.ClaimStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Claim.ClaimStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.Claim.ClaimStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.Claim.ClaimStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Claim.ClaimStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Claim.ClaimStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.Claim.Use convertUse(org.hl7.fhir.dstu3.model.Claim.Use src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPLETE: return org.hl7.fhir.r4.model.Claim.Use.COMPLETE; - case PROPOSED: return org.hl7.fhir.r4.model.Claim.Use.PROPOSED; - case EXPLORATORY: return org.hl7.fhir.r4.model.Claim.Use.EXPLORATORY; - case OTHER: return org.hl7.fhir.r4.model.Claim.Use.OTHER; - default: return org.hl7.fhir.r4.model.Claim.Use.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Claim.Use convertUse(org.hl7.fhir.r4.model.Claim.Use src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPLETE: return org.hl7.fhir.dstu3.model.Claim.Use.COMPLETE; - case PROPOSED: return org.hl7.fhir.dstu3.model.Claim.Use.PROPOSED; - case EXPLORATORY: return org.hl7.fhir.dstu3.model.Claim.Use.EXPLORATORY; - case OTHER: return org.hl7.fhir.dstu3.model.Claim.Use.OTHER; - default: return org.hl7.fhir.dstu3.model.Claim.Use.NULL; - } -} - - public static org.hl7.fhir.r4.model.Claim.RelatedClaimComponent convertRelatedClaimComponent(org.hl7.fhir.dstu3.model.Claim.RelatedClaimComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.RelatedClaimComponent tgt = new org.hl7.fhir.r4.model.Claim.RelatedClaimComponent(); - copyElement(src, tgt); - if (src.hasClaim()) - tgt.setClaim(convertReference(src.getClaim())); - if (src.hasRelationship()) - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - if (src.hasReference()) - tgt.setReference(convertIdentifier(src.getReference())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.RelatedClaimComponent convertRelatedClaimComponent(org.hl7.fhir.r4.model.Claim.RelatedClaimComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.RelatedClaimComponent tgt = new org.hl7.fhir.dstu3.model.Claim.RelatedClaimComponent(); - copyElement(src, tgt); - if (src.hasClaim()) - tgt.setClaim(convertReference(src.getClaim())); - if (src.hasRelationship()) - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - if (src.hasReference()) - tgt.setReference(convertIdentifier(src.getReference())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim.PayeeComponent convertPayeeComponent(org.hl7.fhir.dstu3.model.Claim.PayeeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.PayeeComponent tgt = new org.hl7.fhir.r4.model.Claim.PayeeComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasResourceType()) - tgt.setResource(convertCoding(src.getResourceType())); - if (src.hasParty()) - tgt.setParty(convertReference(src.getParty())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.PayeeComponent convertPayeeComponent(org.hl7.fhir.r4.model.Claim.PayeeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.PayeeComponent tgt = new org.hl7.fhir.dstu3.model.Claim.PayeeComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasResource()) - tgt.setResourceType(convertCoding(src.getResource())); - if (src.hasParty()) - tgt.setParty(convertReference(src.getParty())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim.CareTeamComponent convertCareTeamComponent(org.hl7.fhir.dstu3.model.Claim.CareTeamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.CareTeamComponent tgt = new org.hl7.fhir.r4.model.Claim.CareTeamComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasResponsible()) - tgt.setResponsible(src.getResponsible()); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasQualification()) - tgt.setQualification(convertCodeableConcept(src.getQualification())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.CareTeamComponent convertCareTeamComponent(org.hl7.fhir.r4.model.Claim.CareTeamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.CareTeamComponent tgt = new org.hl7.fhir.dstu3.model.Claim.CareTeamComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasResponsible()) - tgt.setResponsible(src.getResponsible()); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasQualification()) - tgt.setQualification(convertCodeableConcept(src.getQualification())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim.SpecialConditionComponent convertSpecialConditionComponent(org.hl7.fhir.dstu3.model.Claim.SpecialConditionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.SpecialConditionComponent tgt = new org.hl7.fhir.r4.model.Claim.SpecialConditionComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.SpecialConditionComponent convertSpecialConditionComponent(org.hl7.fhir.r4.model.Claim.SpecialConditionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.SpecialConditionComponent tgt = new org.hl7.fhir.dstu3.model.Claim.SpecialConditionComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.dstu3.model.Claim.DiagnosisComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.DiagnosisComponent tgt = new org.hl7.fhir.r4.model.Claim.DiagnosisComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasDiagnosis()) - tgt.setDiagnosis(convertType(src.getDiagnosis())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasPackageCode()) - tgt.setPackageCode(convertCodeableConcept(src.getPackageCode())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.r4.model.Claim.DiagnosisComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.DiagnosisComponent tgt = new org.hl7.fhir.dstu3.model.Claim.DiagnosisComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasDiagnosis()) - tgt.setDiagnosis(convertType(src.getDiagnosis())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasPackageCode()) - tgt.setPackageCode(convertCodeableConcept(src.getPackageCode())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim.ProcedureComponent convertProcedureComponent(org.hl7.fhir.dstu3.model.Claim.ProcedureComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.ProcedureComponent tgt = new org.hl7.fhir.r4.model.Claim.ProcedureComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasProcedure()) - tgt.setProcedure(convertType(src.getProcedure())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.ProcedureComponent convertProcedureComponent(org.hl7.fhir.r4.model.Claim.ProcedureComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.ProcedureComponent tgt = new org.hl7.fhir.dstu3.model.Claim.ProcedureComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasProcedure()) - tgt.setProcedure(convertType(src.getProcedure())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.dstu3.model.Claim.InsuranceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.InsuranceComponent tgt = new org.hl7.fhir.r4.model.Claim.InsuranceComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasFocal()) - tgt.setFocal(src.getFocal()); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - if (src.hasBusinessArrangement()) - tgt.setBusinessArrangement(src.getBusinessArrangement()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getPreAuthRef()) - tgt.addPreAuthRef(t.getValue()); - if (src.hasClaimResponse()) - tgt.setClaimResponse(convertReference(src.getClaimResponse())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.r4.model.Claim.InsuranceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.InsuranceComponent tgt = new org.hl7.fhir.dstu3.model.Claim.InsuranceComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasFocal()) - tgt.setFocal(src.getFocal()); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - if (src.hasBusinessArrangement()) - tgt.setBusinessArrangement(src.getBusinessArrangement()); - for (org.hl7.fhir.r4.model.StringType t : src.getPreAuthRef()) - tgt.addPreAuthRef(t.getValue()); - if (src.hasClaimResponse()) - tgt.setClaimResponse(convertReference(src.getClaimResponse())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim.AccidentComponent convertAccidentComponent(org.hl7.fhir.dstu3.model.Claim.AccidentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.AccidentComponent tgt = new org.hl7.fhir.r4.model.Claim.AccidentComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasLocation()) - tgt.setLocation(convertType(src.getLocation())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.AccidentComponent convertAccidentComponent(org.hl7.fhir.r4.model.Claim.AccidentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.AccidentComponent tgt = new org.hl7.fhir.dstu3.model.Claim.AccidentComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasLocation()) - tgt.setLocation(convertType(src.getLocation())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim.ItemComponent convertItemComponent(org.hl7.fhir.dstu3.model.Claim.ItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.ItemComponent tgt = new org.hl7.fhir.r4.model.Claim.ItemComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getCareTeamLinkId()) - tgt.addCareTeamLinkId(t.getValue()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getDiagnosisLinkId()) - tgt.addDiagnosisLinkId(t.getValue()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getProcedureLinkId()) - tgt.addProcedureLinkId(t.getValue()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getInformationLinkId()) - tgt.addInformationLinkId(t.getValue()); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasServiced()) - tgt.setServiced(convertType(src.getServiced())); - if (src.hasLocation()) - tgt.setLocation(convertType(src.getLocation())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubSite()) - tgt.addSubSite(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEncounter()) - tgt.addEncounter(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Claim.DetailComponent t : src.getDetail()) - tgt.addDetail(convertDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.ItemComponent convertItemComponent(org.hl7.fhir.r4.model.Claim.ItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.ItemComponent tgt = new org.hl7.fhir.dstu3.model.Claim.ItemComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getCareTeamLinkId()) - tgt.addCareTeamLinkId(t.getValue()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getDiagnosisLinkId()) - tgt.addDiagnosisLinkId(t.getValue()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getProcedureLinkId()) - tgt.addProcedureLinkId(t.getValue()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getInformationLinkId()) - tgt.addInformationLinkId(t.getValue()); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasServiced()) - tgt.setServiced(convertType(src.getServiced())); - if (src.hasLocation()) - tgt.setLocation(convertType(src.getLocation())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubSite()) - tgt.addSubSite(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getEncounter()) - tgt.addEncounter(convertReference(t)); - for (org.hl7.fhir.r4.model.Claim.DetailComponent t : src.getDetail()) - tgt.addDetail(convertDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim.DetailComponent convertDetailComponent(org.hl7.fhir.dstu3.model.Claim.DetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.DetailComponent tgt = new org.hl7.fhir.r4.model.Claim.DetailComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Claim.SubDetailComponent t : src.getSubDetail()) - tgt.addSubDetail(convertSubDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.DetailComponent convertDetailComponent(org.hl7.fhir.r4.model.Claim.DetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.DetailComponent tgt = new org.hl7.fhir.dstu3.model.Claim.DetailComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - for (org.hl7.fhir.r4.model.Claim.SubDetailComponent t : src.getSubDetail()) - tgt.addSubDetail(convertSubDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Claim.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.dstu3.model.Claim.SubDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Claim.SubDetailComponent tgt = new org.hl7.fhir.r4.model.Claim.SubDetailComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Claim.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.r4.model.Claim.SubDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Claim.SubDetailComponent tgt = new org.hl7.fhir.dstu3.model.Claim.SubDetailComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ClaimResponse convertClaimResponse(org.hl7.fhir.dstu3.model.ClaimResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClaimResponse tgt = new org.hl7.fhir.r4.model.ClaimResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertClaimResponseStatus(src.getStatus())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasRequestProvider()) - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - if (src.hasRequestOrganization()) - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - if (src.hasPayeeType()) - tgt.setPayeeType(convertCodeableConcept(src.getPayeeType())); - for (org.hl7.fhir.dstu3.model.ClaimResponse.ItemComponent t : src.getItem()) - tgt.addItem(convertItemComponent(t)); - for (org.hl7.fhir.dstu3.model.ClaimResponse.AddedItemComponent t : src.getAddItem()) - tgt.addAddItem(convertAddedItemComponent(t)); - for (org.hl7.fhir.dstu3.model.ClaimResponse.ErrorComponent t : src.getError()) - tgt.addError(convertErrorComponent(t)); - if (src.hasTotalCost()) - tgt.setTotalCost(convertMoney(src.getTotalCost())); - if (src.hasUnallocDeductable()) - tgt.setUnallocDeductable(convertMoney(src.getUnallocDeductable())); - if (src.hasTotalBenefit()) - tgt.setTotalBenefit(convertMoney(src.getTotalBenefit())); - if (src.hasPayment()) - tgt.setPayment(convertPaymentComponent(src.getPayment())); - if (src.hasReserved()) - tgt.setReserved(convertCoding(src.getReserved())); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - for (org.hl7.fhir.dstu3.model.ClaimResponse.NoteComponent t : src.getProcessNote()) - tgt.addProcessNote(convertNoteComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getCommunicationRequest()) - tgt.addCommunicationRequest(convertReference(t)); - for (org.hl7.fhir.dstu3.model.ClaimResponse.InsuranceComponent t : src.getInsurance()) - tgt.addInsurance(convertInsuranceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClaimResponse convertClaimResponse(org.hl7.fhir.r4.model.ClaimResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClaimResponse tgt = new org.hl7.fhir.dstu3.model.ClaimResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertClaimResponseStatus(src.getStatus())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasRequestProvider()) - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - if (src.hasRequestOrganization()) - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - if (src.hasPayeeType()) - tgt.setPayeeType(convertCodeableConcept(src.getPayeeType())); - for (org.hl7.fhir.r4.model.ClaimResponse.ItemComponent t : src.getItem()) - tgt.addItem(convertItemComponent(t)); - for (org.hl7.fhir.r4.model.ClaimResponse.AddedItemComponent t : src.getAddItem()) - tgt.addAddItem(convertAddedItemComponent(t)); - for (org.hl7.fhir.r4.model.ClaimResponse.ErrorComponent t : src.getError()) - tgt.addError(convertErrorComponent(t)); - if (src.hasTotalCost()) - tgt.setTotalCost(convertMoney(src.getTotalCost())); - if (src.hasUnallocDeductable()) - tgt.setUnallocDeductable(convertMoney(src.getUnallocDeductable())); - if (src.hasTotalBenefit()) - tgt.setTotalBenefit(convertMoney(src.getTotalBenefit())); - if (src.hasPayment()) - tgt.setPayment(convertPaymentComponent(src.getPayment())); - if (src.hasReserved()) - tgt.setReserved(convertCoding(src.getReserved())); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - for (org.hl7.fhir.r4.model.ClaimResponse.NoteComponent t : src.getProcessNote()) - tgt.addProcessNote(convertNoteComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getCommunicationRequest()) - tgt.addCommunicationRequest(convertReference(t)); - for (org.hl7.fhir.r4.model.ClaimResponse.InsuranceComponent t : src.getInsurance()) - tgt.addInsurance(convertInsuranceComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus convertClaimResponseStatus(org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus convertClaimResponseStatus(org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.ClaimResponse.ItemComponent convertItemComponent(org.hl7.fhir.dstu3.model.ClaimResponse.ItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClaimResponse.ItemComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.ItemComponent(); - copyElement(src, tgt); - if (src.hasSequenceLinkId()) - tgt.setSequenceLinkId(src.getSequenceLinkId()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - for (org.hl7.fhir.dstu3.model.ClaimResponse.ItemDetailComponent t : src.getDetail()) - tgt.addDetail(convertItemDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClaimResponse.ItemComponent convertItemComponent(org.hl7.fhir.r4.model.ClaimResponse.ItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClaimResponse.ItemComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.ItemComponent(); - copyElement(src, tgt); - if (src.hasSequenceLinkId()) - tgt.setSequenceLinkId(src.getSequenceLinkId()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - for (org.hl7.fhir.r4.model.ClaimResponse.ItemDetailComponent t : src.getDetail()) - tgt.addDetail(convertItemDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent convertAdjudicationComponent(org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - if (src.hasAmount()) - tgt.setAmount(convertMoney(src.getAmount())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent convertAdjudicationComponent(org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - if (src.hasAmount()) - tgt.setAmount(convertMoney(src.getAmount())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ClaimResponse.ItemDetailComponent convertItemDetailComponent(org.hl7.fhir.dstu3.model.ClaimResponse.ItemDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClaimResponse.ItemDetailComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.ItemDetailComponent(); - copyElement(src, tgt); - if (src.hasSequenceLinkId()) - tgt.setSequenceLinkId(src.getSequenceLinkId()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - for (org.hl7.fhir.dstu3.model.ClaimResponse.SubDetailComponent t : src.getSubDetail()) - tgt.addSubDetail(convertSubDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClaimResponse.ItemDetailComponent convertItemDetailComponent(org.hl7.fhir.r4.model.ClaimResponse.ItemDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClaimResponse.ItemDetailComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.ItemDetailComponent(); - copyElement(src, tgt); - if (src.hasSequenceLinkId()) - tgt.setSequenceLinkId(src.getSequenceLinkId()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - for (org.hl7.fhir.r4.model.ClaimResponse.SubDetailComponent t : src.getSubDetail()) - tgt.addSubDetail(convertSubDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ClaimResponse.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.dstu3.model.ClaimResponse.SubDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClaimResponse.SubDetailComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.SubDetailComponent(); - copyElement(src, tgt); - if (src.hasSequenceLinkId()) - tgt.setSequenceLinkId(src.getSequenceLinkId()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClaimResponse.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.r4.model.ClaimResponse.SubDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClaimResponse.SubDetailComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.SubDetailComponent(); - copyElement(src, tgt); - if (src.hasSequenceLinkId()) - tgt.setSequenceLinkId(src.getSequenceLinkId()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ClaimResponse.AddedItemComponent convertAddedItemComponent(org.hl7.fhir.dstu3.model.ClaimResponse.AddedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClaimResponse.AddedItemComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.AddedItemComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getSequenceLinkId()) - tgt.addSequenceLinkId(t.getValue()); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - if (src.hasFee()) - tgt.setFee(convertMoney(src.getFee())); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClaimResponse.AddedItemComponent convertAddedItemComponent(org.hl7.fhir.r4.model.ClaimResponse.AddedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClaimResponse.AddedItemComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.AddedItemComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getSequenceLinkId()) - tgt.addSequenceLinkId(t.getValue()); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - if (src.hasFee()) - tgt.setFee(convertMoney(src.getFee())); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - return tgt; - } - - - public static org.hl7.fhir.r4.model.ClaimResponse.ErrorComponent convertErrorComponent(org.hl7.fhir.dstu3.model.ClaimResponse.ErrorComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClaimResponse.ErrorComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.ErrorComponent(); - copyElement(src, tgt); - if (src.hasSequenceLinkId()) - tgt.setSequenceLinkId(src.getSequenceLinkId()); - if (src.hasDetailSequenceLinkId()) - tgt.setDetailSequenceLinkId(src.getDetailSequenceLinkId()); - if (src.hasSubdetailSequenceLinkId()) - tgt.setSubdetailSequenceLinkId(src.getSubdetailSequenceLinkId()); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClaimResponse.ErrorComponent convertErrorComponent(org.hl7.fhir.r4.model.ClaimResponse.ErrorComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClaimResponse.ErrorComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.ErrorComponent(); - copyElement(src, tgt); - if (src.hasSequenceLinkId()) - tgt.setSequenceLinkId(src.getSequenceLinkId()); - if (src.hasDetailSequenceLinkId()) - tgt.setDetailSequenceLinkId(src.getDetailSequenceLinkId()); - if (src.hasSubdetailSequenceLinkId()) - tgt.setSubdetailSequenceLinkId(src.getSubdetailSequenceLinkId()); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ClaimResponse.PaymentComponent convertPaymentComponent(org.hl7.fhir.dstu3.model.ClaimResponse.PaymentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClaimResponse.PaymentComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.PaymentComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasAdjustment()) - tgt.setAdjustment(convertMoney(src.getAdjustment())); - if (src.hasAdjustmentReason()) - tgt.setAdjustmentReason(convertCodeableConcept(src.getAdjustmentReason())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAmount()) - tgt.setAmount(convertMoney(src.getAmount())); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClaimResponse.PaymentComponent convertPaymentComponent(org.hl7.fhir.r4.model.ClaimResponse.PaymentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClaimResponse.PaymentComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.PaymentComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasAdjustment()) - tgt.setAdjustment(convertMoney(src.getAdjustment())); - if (src.hasAdjustmentReason()) - tgt.setAdjustmentReason(convertCodeableConcept(src.getAdjustmentReason())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAmount()) - tgt.setAmount(convertMoney(src.getAmount())); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ClaimResponse.NoteComponent convertNoteComponent(org.hl7.fhir.dstu3.model.ClaimResponse.NoteComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClaimResponse.NoteComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.NoteComponent(); - copyElement(src, tgt); - if (src.hasNumber()) - tgt.setNumber(src.getNumber()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasLanguage()) - tgt.setLanguage(convertCodeableConcept(src.getLanguage())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClaimResponse.NoteComponent convertNoteComponent(org.hl7.fhir.r4.model.ClaimResponse.NoteComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClaimResponse.NoteComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.NoteComponent(); - copyElement(src, tgt); - if (src.hasNumber()) - tgt.setNumber(src.getNumber()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasLanguage()) - tgt.setLanguage(convertCodeableConcept(src.getLanguage())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ClaimResponse.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.dstu3.model.ClaimResponse.InsuranceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClaimResponse.InsuranceComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.InsuranceComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasFocal()) - tgt.setFocal(src.getFocal()); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - if (src.hasBusinessArrangement()) - tgt.setBusinessArrangement(src.getBusinessArrangement()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getPreAuthRef()) - tgt.addPreAuthRef(t.getValue()); - if (src.hasClaimResponse()) - tgt.setClaimResponse(convertReference(src.getClaimResponse())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClaimResponse.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.r4.model.ClaimResponse.InsuranceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClaimResponse.InsuranceComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.InsuranceComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasFocal()) - tgt.setFocal(src.getFocal()); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - if (src.hasBusinessArrangement()) - tgt.setBusinessArrangement(src.getBusinessArrangement()); - for (org.hl7.fhir.r4.model.StringType t : src.getPreAuthRef()) - tgt.addPreAuthRef(t.getValue()); - if (src.hasClaimResponse()) - tgt.setClaimResponse(convertReference(src.getClaimResponse())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.dstu3.model.ClinicalImpression src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClinicalImpression tgt = new org.hl7.fhir.r4.model.ClinicalImpression(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasEffective()) - tgt.setEffective(convertType(src.getEffective())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAssessor()) - tgt.setAssessor(convertReference(src.getAssessor())); - if (src.hasPrevious()) - tgt.setPrevious(convertReference(src.getPrevious())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProblem()) - tgt.addProblem(convertReference(t)); - for (org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent t : src.getInvestigation()) - tgt.addInvestigation(convertClinicalImpressionInvestigationComponent(t)); - for (org.hl7.fhir.dstu3.model.UriType t : src.getProtocol()) - tgt.addProtocol(t.getValue()); - if (src.hasSummary()) - tgt.setSummary(src.getSummary()); - for (org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) - tgt.addFinding(convertClinicalImpressionFindingComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPrognosisCodeableConcept()) - tgt.addPrognosisCodeableConcept(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPrognosisReference()) - tgt.addPrognosisReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAction()) - tgt.addAction(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.r4.model.ClinicalImpression src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClinicalImpression tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasEffective()) - tgt.setEffective(convertType(src.getEffective())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAssessor()) - tgt.setAssessor(convertReference(src.getAssessor())); - if (src.hasPrevious()) - tgt.setPrevious(convertReference(src.getPrevious())); - for (org.hl7.fhir.r4.model.Reference t : src.getProblem()) - tgt.addProblem(convertReference(t)); - for (org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent t : src.getInvestigation()) - tgt.addInvestigation(convertClinicalImpressionInvestigationComponent(t)); - for (org.hl7.fhir.r4.model.UriType t : src.getProtocol()) - tgt.addProtocol(t.getValue()); - if (src.hasSummary()) - tgt.setSummary(src.getSummary()); - for (org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) - tgt.addFinding(convertClinicalImpressionFindingComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPrognosisCodeableConcept()) - tgt.addPrognosisCodeableConcept(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPrognosisReference()) - tgt.addPrognosisReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getAction()) - tgt.addAction(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.DRAFT; - case COMPLETED: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.DRAFT; - case COMPLETED: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent convertClinicalImpressionInvestigationComponent(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent tgt = new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getItem()) - tgt.addItem(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent convertClinicalImpressionInvestigationComponent(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.r4.model.Reference t : src.getItem()) - tgt.addItem(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent(); - copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); - if (src.hasBasis()) - tgt.setBasis(src.getBasis()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent(); - copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); - if (src.hasBasis()) - tgt.setBasis(src.getBasis()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeSystem convertCodeSystem(org.hl7.fhir.dstu3.model.CodeSystem src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CodeSystem tgt = new org.hl7.fhir.r4.model.CodeSystem(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasCaseSensitive()) - tgt.setCaseSensitive(src.getCaseSensitive()); - if (src.hasValueSet()) - tgt.setValueSet(src.getValueSet()); - if (src.hasHierarchyMeaning()) - tgt.setHierarchyMeaning(convertCodeSystemHierarchyMeaning(src.getHierarchyMeaning())); - if (src.hasCompositional()) - tgt.setCompositional(src.getCompositional()); - if (src.hasVersionNeeded()) - tgt.setVersionNeeded(src.getVersionNeeded()); - if (src.hasContent()) - tgt.setContent(convertCodeSystemContentMode(src.getContent())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - for (org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) - tgt.addFilter(convertCodeSystemFilterComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent t : src.getProperty()) - tgt.addProperty(convertPropertyComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeSystem convertCodeSystem(org.hl7.fhir.r4.model.CodeSystem src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CodeSystem tgt = new org.hl7.fhir.dstu3.model.CodeSystem(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasCaseSensitive()) - tgt.setCaseSensitive(src.getCaseSensitive()); - if (src.hasValueSet()) - tgt.setValueSet(src.getValueSet()); - if (src.hasHierarchyMeaning()) - tgt.setHierarchyMeaning(convertCodeSystemHierarchyMeaning(src.getHierarchyMeaning())); - if (src.hasCompositional()) - tgt.setCompositional(src.getCompositional()); - if (src.hasVersionNeeded()) - tgt.setVersionNeeded(src.getVersionNeeded()); - if (src.hasContent()) - tgt.setContent(convertCodeSystemContentMode(src.getContent())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - for (org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) - tgt.addFilter(convertCodeSystemFilterComponent(t)); - for (org.hl7.fhir.r4.model.CodeSystem.PropertyComponent t : src.getProperty()) - tgt.addProperty(convertPropertyComponent(t)); - for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning convertCodeSystemHierarchyMeaning(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GROUPEDBY: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning.GROUPEDBY; - case ISA: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning.ISA; - case PARTOF: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning.PARTOF; - case CLASSIFIEDWITH: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning.CLASSIFIEDWITH; - default: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning convertCodeSystemHierarchyMeaning(org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GROUPEDBY: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning.GROUPEDBY; - case ISA: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning.ISA; - case PARTOF: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning.PARTOF; - case CLASSIFIEDWITH: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning.CLASSIFIEDWITH; - default: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning.NULL; - } -} - - private static org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTPRESENT: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; - case EXAMPLE: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.EXAMPLE; - case FRAGMENT: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.FRAGMENT; - case COMPLETE: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.COMPLETE; - default: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTPRESENT: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; - case EXAMPLE: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.EXAMPLE; - case FRAGMENT: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.FRAGMENT; - case COMPLETE: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.COMPLETE; - default: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getOperator()) - tgt.addOperator(convertFilterOperator(t.getValue())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.Enumeration t : src.getOperator()) - tgt.addOperator(convertFilterOperator(t.getValue())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.CodeSystem.FilterOperator convertFilterOperator(org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.ISA; - case DESCENDENTOF: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.DESCENDENTOF; - case ISNOTA: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.REGEX; - case IN: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.NOTIN; - case GENERALIZES: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.GENERALIZES; - case EXISTS: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.EXISTS; - default: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator convertFilterOperator(org.hl7.fhir.r4.model.CodeSystem.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.ISA; - case DESCENDENTOF: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.DESCENDENTOF; - case ISNOTA: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.REGEX; - case IN: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.NOTIN; - case GENERALIZES: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.GENERALIZES; - case EXISTS: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.EXISTS; - default: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.NULL; - } -} - - public static org.hl7.fhir.r4.model.CodeSystem.PropertyComponent convertPropertyComponent(org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CodeSystem.PropertyComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.PropertyComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasType()) - tgt.setType(convertPropertyType(src.getType())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent convertPropertyComponent(org.hl7.fhir.r4.model.CodeSystem.PropertyComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasType()) - tgt.setType(convertPropertyType(src.getType())); - return tgt; - } - - private static org.hl7.fhir.r4.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODE: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.CODE; - case CODING: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.CODING; - case STRING: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.STRING; - case INTEGER: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.INTEGER; - case BOOLEAN: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.BOOLEAN; - case DATETIME: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.DATETIME; - default: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.r4.model.CodeSystem.PropertyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODE: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.CODE; - case CODING: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.CODING; - case STRING: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.STRING; - case INTEGER: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.INTEGER; - case BOOLEAN: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.BOOLEAN; - case DATETIME: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.DATETIME; - default: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.NULL; - } -} - - public static org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent t : src.getProperty()) - tgt.addProperty(convertConceptPropertyComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); - for (org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent t : src.getProperty()) - tgt.addProperty(convertConceptPropertyComponent(t)); - for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) - tgt.addConcept(convertConceptDefinitionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasUse()) - tgt.setUse(convertCoding(src.getUse())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasUse()) - tgt.setUse(convertCoding(src.getUse())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Communication convertCommunication(org.hl7.fhir.dstu3.model.Communication src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Communication tgt = new org.hl7.fhir.r4.model.Communication(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertCommunicationStatus(src.getStatus())); - if (src.hasNotDone()) - tgt.setNotDone(src.getNotDone()); - if (src.hasNotDoneReason()) - tgt.setNotDoneReason(convertCodeableConcept(src.getNotDoneReason())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getTopic()) - tgt.addTopic(convertReference(t)); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasSent()) - tgt.setSent(src.getSent()); - if (src.hasReceived()) - tgt.setReceived(src.getReceived()); - if (src.hasSender()) - tgt.setSender(convertReference(src.getSender())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationPayloadComponent(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Communication convertCommunication(org.hl7.fhir.r4.model.Communication src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Communication tgt = new org.hl7.fhir.dstu3.model.Communication(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertCommunicationStatus(src.getStatus())); - if (src.hasNotDone()) - tgt.setNotDone(src.getNotDone()); - if (src.hasNotDoneReason()) - tgt.setNotDoneReason(convertCodeableConcept(src.getNotDoneReason())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getTopic()) - tgt.addTopic(convertReference(t)); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasSent()) - tgt.setSent(src.getSent()); - if (src.hasReceived()) - tgt.setReceived(src.getReceived()); - if (src.hasSender()) - tgt.setSender(convertReference(src.getSender())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationPayloadComponent(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.dstu3.model.Communication.CommunicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PREPARATION: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.PREPARATION; - case INPROGRESS: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.INPROGRESS; - case SUSPENDED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.SUSPENDED; - case ABORTED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.ABORTED; - case COMPLETED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.r4.model.Communication.CommunicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PREPARATION: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.PREPARATION; - case INPROGRESS: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.INPROGRESS; - case SUSPENDED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.SUSPENDED; - case ABORTED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.ABORTED; - case COMPLETED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent(); - copyElement(src, tgt); - if (src.hasContent()) - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent(); - copyElement(src, tgt); - if (src.hasContent()) - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public static org.hl7.fhir.r4.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.dstu3.model.CommunicationRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CommunicationRequest tgt = new org.hl7.fhir.r4.model.CommunicationRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - if (src.hasGroupIdentifier()) - tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasPriority()) - tgt.setPriority(convertCommunicationPriority(src.getPriority())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getTopic()) - tgt.addTopic(convertReference(t)); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - for (org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasSender()) - tgt.setSender(convertReference(src.getSender())); - if (src.hasRequester()) - tgt.setRequester(convertCommunicationRequestRequesterComponent(src.getRequester())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.r4.model.CommunicationRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CommunicationRequest tgt = new org.hl7.fhir.dstu3.model.CommunicationRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - if (src.hasGroupIdentifier()) - tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasPriority()) - tgt.setPriority(convertCommunicationPriority(src.getPriority())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getMedium()) - tgt.addMedium(convertCodeableConcept(t)); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getTopic()) - tgt.addTopic(convertReference(t)); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - for (org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) - tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasSender()) - tgt.setSender(convertReference(src.getSender())); - if (src.hasRequester()) - tgt.setRequester(convertCommunicationRequestRequesterComponent(src.getRequester())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority convertCommunicationPriority(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.ROUTINE; - case URGENT: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.URGENT; - case ASAP: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.ASAP; - case STAT: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.STAT; - default: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority convertCommunicationPriority(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.ROUTINE; - case URGENT: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.URGENT; - case ASAP: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.ASAP; - case STAT: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.STAT; - default: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.NULL; - } -} - - public static org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent(); - copyElement(src, tgt); - if (src.hasContent()) - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent(); - copyElement(src, tgt); - if (src.hasContent()) - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public static org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestRequesterComponent convertCommunicationRequestRequesterComponent(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestRequesterComponent convertCommunicationRequestRequesterComponent(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestRequesterComponent tgt = new org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.r4.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu3.model.CompartmentDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CompartmentDefinition tgt = new org.hl7.fhir.r4.model.CompartmentDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasCode()) - tgt.setCode(convertCompartmentType(src.getCode())); - if (src.hasSearch()) - tgt.setSearch(src.getSearch()); - for (org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) - tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.r4.model.CompartmentDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu3.model.CompartmentDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasCode()) - tgt.setCode(convertCompartmentType(src.getCode())); - if (src.hasSearch()) - tgt.setSearch(src.getSearch()); - for (org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) - tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.PATIENT; - case ENCOUNTER: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.ENCOUNTER; - case RELATEDPERSON: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; - case PRACTITIONER: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.DEVICE; - default: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.PATIENT; - case ENCOUNTER: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.ENCOUNTER; - case RELATEDPERSON: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; - case PRACTITIONER: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.DEVICE; - default: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.NULL; - } -} - - public static org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getParam()) - tgt.addParam(t.getValue()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - for (org.hl7.fhir.r4.model.StringType t : src.getParam()) - tgt.addParam(t.getValue()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Composition convertComposition(org.hl7.fhir.dstu3.model.Composition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Composition tgt = new org.hl7.fhir.r4.model.Composition(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertCompositionStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasClass_()) - tgt.setClass_(convertCodeableConcept(src.getClass_())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasConfidentiality()) - tgt.setConfidentiality(convertDocumentConfidentiality(src.getConfidentiality())); - for (org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent t : src.getAttester()) - tgt.addAttester(convertCompositionAttesterComponent(t)); - if (src.hasCustodian()) - tgt.setCustodian(convertReference(src.getCustodian())); - for (org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent t : src.getRelatesTo()) - tgt.addRelatesTo(convertCompositionRelatesToComponent(t)); - for (org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent t : src.getEvent()) - tgt.addEvent(convertCompositionEventComponent(t)); - for (org.hl7.fhir.dstu3.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Composition convertComposition(org.hl7.fhir.r4.model.Composition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Composition tgt = new org.hl7.fhir.dstu3.model.Composition(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertCompositionStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasClass_()) - tgt.setClass_(convertCodeableConcept(src.getClass_())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasConfidentiality()) - tgt.setConfidentiality(convertDocumentConfidentiality(src.getConfidentiality())); - for (org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent t : src.getAttester()) - tgt.addAttester(convertCompositionAttesterComponent(t)); - if (src.hasCustodian()) - tgt.setCustodian(convertReference(src.getCustodian())); - for (org.hl7.fhir.r4.model.Composition.CompositionRelatesToComponent t : src.getRelatesTo()) - tgt.addRelatesTo(convertCompositionRelatesToComponent(t)); - for (org.hl7.fhir.r4.model.Composition.CompositionEventComponent t : src.getEvent()) - tgt.addEvent(convertCompositionEventComponent(t)); - for (org.hl7.fhir.r4.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.dstu3.model.Composition.CompositionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRELIMINARY: return org.hl7.fhir.r4.model.Composition.CompositionStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.r4.model.Composition.CompositionStatus.FINAL; - case AMENDED: return org.hl7.fhir.r4.model.Composition.CompositionStatus.AMENDED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Composition.CompositionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Composition.CompositionStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.r4.model.Composition.CompositionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRELIMINARY: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.FINAL; - case AMENDED: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.AMENDED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.Composition.DocumentConfidentiality convertDocumentConfidentiality(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case U: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.U; - case L: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.L; - case M: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.M; - case N: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.N; - case R: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.R; - case V: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.V; - default: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality convertDocumentConfidentiality(org.hl7.fhir.r4.model.Composition.DocumentConfidentiality src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case U: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.U; - case L: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.L; - case M: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.M; - case N: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.N; - case R: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.R; - case V: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.V; - default: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.NULL; - } -} - - public static org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getMode()) - tgt.addMode(convertCompositionAttestationMode(t.getValue())); - if (src.hasTime()) - tgt.setTime(src.getTime()); - if (src.hasParty()) - tgt.setParty(convertReference(src.getParty())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Enumeration t : src.getMode()) - tgt.addMode(convertCompositionAttestationMode(t.getValue())); - if (src.hasTime()) - tgt.setTime(src.getTime()); - if (src.hasParty()) - tgt.setParty(convertReference(src.getParty())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSONAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.PERSONAL; - case PROFESSIONAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.PROFESSIONAL; - case LEGAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.LEGAL; - case OFFICIAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.OFFICIAL; - default: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.r4.model.Composition.CompositionAttestationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSONAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.PERSONAL; - case PROFESSIONAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.PROFESSIONAL; - case LEGAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.LEGAL; - case OFFICIAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.OFFICIAL; - default: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.Composition.CompositionRelatesToComponent convertCompositionRelatesToComponent(org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Composition.CompositionRelatesToComponent tgt = new org.hl7.fhir.r4.model.Composition.CompositionRelatesToComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertDocumentRelationshipType(src.getCode())); - if (src.hasTarget()) - tgt.setTarget(convertType(src.getTarget())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent convertCompositionRelatesToComponent(org.hl7.fhir.r4.model.Composition.CompositionRelatesToComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertDocumentRelationshipType(src.getCode())); - if (src.hasTarget()) - tgt.setTarget(convertType(src.getTarget())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Composition.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACES: return org.hl7.fhir.r4.model.Composition.DocumentRelationshipType.REPLACES; - case TRANSFORMS: return org.hl7.fhir.r4.model.Composition.DocumentRelationshipType.TRANSFORMS; - case SIGNS: return org.hl7.fhir.r4.model.Composition.DocumentRelationshipType.SIGNS; - case APPENDS: return org.hl7.fhir.r4.model.Composition.DocumentRelationshipType.APPENDS; - default: return org.hl7.fhir.r4.model.Composition.DocumentRelationshipType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.r4.model.Composition.DocumentRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACES: return org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.REPLACES; - case TRANSFORMS: return org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.TRANSFORMS; - case SIGNS: return org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.SIGNS; - case APPENDS: return org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.APPENDS; - default: return org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.r4.model.Composition.CompositionEventComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.r4.model.Composition.CompositionEventComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.dstu3.model.Composition.SectionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Composition.SectionComponent tgt = new org.hl7.fhir.r4.model.Composition.SectionComponent(); - copyElement(src, tgt); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasText()) - tgt.setText(convertNarrative(src.getText())); - if (src.hasMode()) - tgt.setMode(convertSectionMode(src.getMode())); - if (src.hasOrderedBy()) - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEntry()) - tgt.addEntry(convertReference(t)); - if (src.hasEmptyReason()) - tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); - for (org.hl7.fhir.dstu3.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.r4.model.Composition.SectionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Composition.SectionComponent tgt = new org.hl7.fhir.dstu3.model.Composition.SectionComponent(); - copyElement(src, tgt); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasText()) - tgt.setText(convertNarrative(src.getText())); - if (src.hasMode()) - tgt.setMode(convertSectionMode(src.getMode())); - if (src.hasOrderedBy()) - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - for (org.hl7.fhir.r4.model.Reference t : src.getEntry()) - tgt.addEntry(convertReference(t)); - if (src.hasEmptyReason()) - tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); - for (org.hl7.fhir.r4.model.Composition.SectionComponent t : src.getSection()) - tgt.addSection(convertSectionComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Composition.SectionMode convertSectionMode(org.hl7.fhir.dstu3.model.Composition.SectionMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case WORKING: return org.hl7.fhir.r4.model.Composition.SectionMode.WORKING; - case SNAPSHOT: return org.hl7.fhir.r4.model.Composition.SectionMode.SNAPSHOT; - case CHANGES: return org.hl7.fhir.r4.model.Composition.SectionMode.CHANGES; - default: return org.hl7.fhir.r4.model.Composition.SectionMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Composition.SectionMode convertSectionMode(org.hl7.fhir.r4.model.Composition.SectionMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case WORKING: return org.hl7.fhir.dstu3.model.Composition.SectionMode.WORKING; - case SNAPSHOT: return org.hl7.fhir.dstu3.model.Composition.SectionMode.SNAPSHOT; - case CHANGES: return org.hl7.fhir.dstu3.model.Composition.SectionMode.CHANGES; - default: return org.hl7.fhir.dstu3.model.Composition.SectionMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.ConceptMap convertConceptMap(org.hl7.fhir.dstu3.model.ConceptMap src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ConceptMap tgt = new org.hl7.fhir.r4.model.ConceptMap(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasSource()) - tgt.setSource(convertType(src.getSource())); - if (src.hasTarget()) - tgt.setTarget(convertType(src.getTarget())); - for (org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent t : src.getGroup()) - tgt.addGroup(convertConceptMapGroupComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ConceptMap convertConceptMap(org.hl7.fhir.r4.model.ConceptMap src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ConceptMap tgt = new org.hl7.fhir.dstu3.model.ConceptMap(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasSource()) - tgt.setSource(convertType(src.getSource())); - if (src.hasTarget()) - tgt.setTarget(convertType(src.getTarget())); - for (org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent t : src.getGroup()) - tgt.addGroup(convertConceptMapGroupComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent convertConceptMapGroupComponent(org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent(); - copyElement(src, tgt); - if (src.hasSource()) - tgt.setSource(src.getSource()); - if (src.hasSourceVersion()) - tgt.setSourceVersion(src.getSourceVersion()); - if (src.hasTarget()) - tgt.setTarget(src.getTarget()); - if (src.hasTargetVersion()) - tgt.setTargetVersion(src.getTargetVersion()); - for (org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent t : src.getElement()) - tgt.addElement(convertSourceElementComponent(t)); - if (src.hasUnmapped()) - tgt.setUnmapped(convertConceptMapGroupUnmappedComponent(src.getUnmapped())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent convertConceptMapGroupComponent(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent(); - copyElement(src, tgt); - if (src.hasSource()) - tgt.setSource(src.getSource()); - if (src.hasSourceVersion()) - tgt.setSourceVersion(src.getSourceVersion()); - if (src.hasTarget()) - tgt.setTarget(src.getTarget()); - if (src.hasTargetVersion()) - tgt.setTargetVersion(src.getTargetVersion()); - for (org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent t : src.getElement()) - tgt.addElement(convertSourceElementComponent(t)); - if (src.hasUnmapped()) - tgt.setUnmapped(convertConceptMapGroupUnmappedComponent(src.getUnmapped())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent t : src.getTarget()) - tgt.addTarget(convertTargetElementComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent t : src.getTarget()) - tgt.addTarget(convertTargetElementComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasEquivalence()) - tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); - if (src.hasComment()) - tgt.setComment(src.getComment()); - for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) - tgt.addDependsOn(convertOtherElementComponent(t)); - for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getProduct()) - tgt.addProduct(convertOtherElementComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasEquivalence()) - tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); - if (src.hasComment()) - tgt.setComment(src.getComment()); - for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) - tgt.addDependsOn(convertOtherElementComponent(t)); - for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getProduct()) - tgt.addProduct(convertOtherElementComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RELATEDTO: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.RELATEDTO; - case EQUIVALENT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; - case EQUAL: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUAL; - case WIDER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.WIDER; - case SUBSUMES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SUBSUMES; - case NARROWER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NARROWER; - case SPECIALIZES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; - case INEXACT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.INEXACT; - case UNMATCHED: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.UNMATCHED; - case DISJOINT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.DISJOINT; - default: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RELATEDTO: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.RELATEDTO; - case EQUIVALENT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; - case EQUAL: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUAL; - case WIDER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.WIDER; - case SUBSUMES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SUBSUMES; - case NARROWER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NARROWER; - case SPECIALIZES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; - case INEXACT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.INEXACT; - case UNMATCHED: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.UNMATCHED; - case DISJOINT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.DISJOINT; - default: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NULL; - } -} - - public static org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent(); - copyElement(src, tgt); - if (src.hasProperty()) - tgt.setProperty(src.getProperty()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent(); - copyElement(src, tgt); - if (src.hasProperty()) - tgt.setProperty(src.getProperty()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent convertConceptMapGroupUnmappedComponent(org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent(); - copyElement(src, tgt); - if (src.hasMode()) - tgt.setMode(convertConceptMapGroupUnmappedMode(src.getMode())); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedComponent convertConceptMapGroupUnmappedComponent(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedComponent(); - copyElement(src, tgt); - if (src.hasMode()) - tgt.setMode(convertConceptMapGroupUnmappedMode(src.getMode())); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - private static org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode convertConceptMapGroupUnmappedMode(org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROVIDED: return org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.PROVIDED; - case FIXED: return org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.FIXED; - case OTHERMAP: return org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.OTHERMAP; - default: return org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode convertConceptMapGroupUnmappedMode(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROVIDED: return org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode.PROVIDED; - case FIXED: return org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode.FIXED; - case OTHERMAP: return org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode.OTHERMAP; - default: return org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.Condition convertCondition(org.hl7.fhir.dstu3.model.Condition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Condition tgt = new org.hl7.fhir.r4.model.Condition(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasClinicalStatus()) - tgt.setClinicalStatus(convertConditionClinicalStatus(src.getClinicalStatus())); - if (src.hasVerificationStatus()) - tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasSeverity()) - tgt.setSeverity(convertCodeableConcept(src.getSeverity())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOnset()) - tgt.setOnset(convertType(src.getOnset())); - if (src.hasAbatement()) - tgt.setAbatement(convertType(src.getAbatement())); - if (src.hasAssertedDate()) - tgt.setAssertedDate(src.getAssertedDate()); - if (src.hasAsserter()) - tgt.setAsserter(convertReference(src.getAsserter())); - if (src.hasStage()) - tgt.addStage(convertConditionStageComponent(src.getStage())); - for (org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) - tgt.addEvidence(convertConditionEvidenceComponent(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Condition convertCondition(org.hl7.fhir.r4.model.Condition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Condition tgt = new org.hl7.fhir.dstu3.model.Condition(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasClinicalStatus()) - tgt.setClinicalStatus(convertConditionClinicalStatus(src.getClinicalStatus())); - if (src.hasVerificationStatus()) - tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasSeverity()) - tgt.setSeverity(convertCodeableConcept(src.getSeverity())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOnset()) - tgt.setOnset(convertType(src.getOnset())); - if (src.hasAbatement()) - tgt.setAbatement(convertType(src.getAbatement())); - if (src.hasAssertedDate()) - tgt.setAssertedDate(src.getAssertedDate()); - if (src.hasAsserter()) - tgt.setAsserter(convertReference(src.getAsserter())); - if (src.hasStage()) - tgt.setStage(convertConditionStageComponent(src.getStageFirstRep())); - for (org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) - tgt.addEvidence(convertConditionEvidenceComponent(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus convertConditionClinicalStatus(org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.ACTIVE; - case RECURRENCE: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.RECURRENCE; - case INACTIVE: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.INACTIVE; - case REMISSION: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.REMISSION; - case RESOLVED: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.RESOLVED; - default: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus convertConditionClinicalStatus(org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.ACTIVE; - case RECURRENCE: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.RECURRENCE; - case INACTIVE: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.INACTIVE; - case REMISSION: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.REMISSION; - case RESOLVED: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.RESOLVED; - default: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROVISIONAL: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.PROVISIONAL; - case DIFFERENTIAL: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; - case CONFIRMED: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.CONFIRMED; - case REFUTED: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.REFUTED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROVISIONAL: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.PROVISIONAL; - case DIFFERENTIAL: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; - case CONFIRMED: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.CONFIRMED; - case REFUTED: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.REFUTED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.r4.model.Condition.ConditionStageComponent(); - copyElement(src, tgt); - if (src.hasSummary()) - tgt.setSummary(convertCodeableConcept(src.getSummary())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAssessment()) - tgt.addAssessment(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.r4.model.Condition.ConditionStageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent(); - copyElement(src, tgt); - if (src.hasSummary()) - tgt.setSummary(convertCodeableConcept(src.getSummary())); - for (org.hl7.fhir.r4.model.Reference t : src.getAssessment()) - tgt.addAssessment(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDetail()) - tgt.addDetail(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Consent convertConsent(org.hl7.fhir.dstu3.model.Consent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Consent tgt = new org.hl7.fhir.r4.model.Consent(); -// copyDomainResource(src, tgt); -// if (src.hasIdentifier()) -// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); -// if (src.hasStatus()) -// tgt.setStatus(convertConsentState(src.getStatus())); -// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) -// tgt.addCategory(convertCodeableConcept(t)); -// if (src.hasPatient()) -// tgt.setPatient(convertReference(src.getPatient())); -// if (src.hasPeriod()) -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// if (src.hasDateTime()) -// tgt.setDateTime(src.getDateTime()); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getConsentingParty()) -// tgt.addConsentingParty(convertReference(t)); -// for (org.hl7.fhir.dstu3.model.Consent.ConsentActorComponent t : src.getActor()) -// tgt.addActor(convertConsentActorComponent(t)); -// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAction()) -// tgt.addAction(convertCodeableConcept(t)); -// for (org.hl7.fhir.dstu3.model.Reference t : src.getOrganization()) -// tgt.addOrganization(convertReference(t)); -// if (src.hasSource()) -// tgt.setSource(convertType(src.getSource())); -// for (org.hl7.fhir.dstu3.model.Consent.ConsentPolicyComponent t : src.getPolicy()) -// tgt.addPolicy(convertConsentPolicyComponent(t)); -// if (src.hasPolicyRule()) -// tgt.setPolicyRule(src.getPolicyRule()); -// for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurityLabel()) -// tgt.addSecurityLabel(convertCoding(t)); -// for (org.hl7.fhir.dstu3.model.Coding t : src.getPurpose()) -// tgt.addPurpose(convertCoding(t)); -// if (src.hasDataPeriod()) -// tgt.setDataPeriod(convertPeriod(src.getDataPeriod())); -// for (org.hl7.fhir.dstu3.model.Consent.ConsentDataComponent t : src.getData()) -// tgt.addData(convertConsentDataComponent(t)); -// for (org.hl7.fhir.dstu3.model.Consent.ExceptComponent t : src.getExcept()) -// tgt.addExcept(convertExceptComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Consent convertConsent(org.hl7.fhir.r4.model.Consent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Consent tgt = new org.hl7.fhir.dstu3.model.Consent(); -// copyDomainResource(src, tgt); -// if (src.hasIdentifier()) -// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); -// if (src.hasStatus()) -// tgt.setStatus(convertConsentState(src.getStatus())); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) -// tgt.addCategory(convertCodeableConcept(t)); -// if (src.hasPatient()) -// tgt.setPatient(convertReference(src.getPatient())); -// if (src.hasPeriod()) -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// if (src.hasDateTime()) -// tgt.setDateTime(src.getDateTime()); -// for (org.hl7.fhir.r4.model.Reference t : src.getConsentingParty()) -// tgt.addConsentingParty(convertReference(t)); -// for (org.hl7.fhir.r4.model.Consent.ConsentActorComponent t : src.getActor()) -// tgt.addActor(convertConsentActorComponent(t)); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAction()) -// tgt.addAction(convertCodeableConcept(t)); -// for (org.hl7.fhir.r4.model.Reference t : src.getOrganization()) -// tgt.addOrganization(convertReference(t)); -// if (src.hasSource()) -// tgt.setSource(convertType(src.getSource())); -// for (org.hl7.fhir.r4.model.Consent.ConsentPolicyComponent t : src.getPolicy()) -// tgt.addPolicy(convertConsentPolicyComponent(t)); -// if (src.hasPolicyRule()) -// tgt.setPolicyRule(src.getPolicyRule()); -// for (org.hl7.fhir.r4.model.Coding t : src.getSecurityLabel()) -// tgt.addSecurityLabel(convertCoding(t)); -// for (org.hl7.fhir.r4.model.Coding t : src.getPurpose()) -// tgt.addPurpose(convertCoding(t)); -// if (src.hasDataPeriod()) -// tgt.setDataPeriod(convertPeriod(src.getDataPeriod())); -// for (org.hl7.fhir.r4.model.Consent.ConsentDataComponent t : src.getData()) -// tgt.addData(convertConsentDataComponent(t)); -// for (org.hl7.fhir.r4.model.Consent.ExceptComponent t : src.getExcept()) -// tgt.addExcept(convertExceptComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Consent.ConsentState convertConsentState(org.hl7.fhir.dstu3.model.Consent.ConsentState src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.Consent.ConsentState.DRAFT; - case PROPOSED: return org.hl7.fhir.r4.model.Consent.ConsentState.PROPOSED; - case ACTIVE: return org.hl7.fhir.r4.model.Consent.ConsentState.ACTIVE; - case REJECTED: return org.hl7.fhir.r4.model.Consent.ConsentState.REJECTED; - case INACTIVE: return org.hl7.fhir.r4.model.Consent.ConsentState.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Consent.ConsentState.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Consent.ConsentState.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Consent.ConsentState convertConsentState(org.hl7.fhir.r4.model.Consent.ConsentState src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.Consent.ConsentState.DRAFT; - case PROPOSED: return org.hl7.fhir.dstu3.model.Consent.ConsentState.PROPOSED; - case ACTIVE: return org.hl7.fhir.dstu3.model.Consent.ConsentState.ACTIVE; - case REJECTED: return org.hl7.fhir.dstu3.model.Consent.ConsentState.REJECTED; - case INACTIVE: return org.hl7.fhir.dstu3.model.Consent.ConsentState.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Consent.ConsentState.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Consent.ConsentState.NULL; - } -} -// -// public static org.hl7.fhir.r4.model.Consent.ConsentActorComponent convertConsentActorComponent(org.hl7.fhir.dstu3.model.Consent.ConsentActorComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.r4.model.Consent.ConsentActorComponent tgt = new org.hl7.fhir.r4.model.Consent.ConsentActorComponent(); -// copyElement(src, tgt); -// if (src.hasRole()) -// tgt.setRole(convertCodeableConcept(src.getRole())); -// if (src.hasReference()) -// tgt.setReference(convertReference(src.getReference())); -// return tgt; -// } -// -// public static org.hl7.fhir.dstu3.model.Consent.ConsentActorComponent convertConsentActorComponent(org.hl7.fhir.r4.model.Consent.ConsentActorComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.dstu3.model.Consent.ConsentActorComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ConsentActorComponent(); -// copyElement(src, tgt); -// if (src.hasRole()) -// tgt.setRole(convertCodeableConcept(src.getRole())); -// if (src.hasReference()) -// tgt.setReference(convertReference(src.getReference())); -// return tgt; -// } - - public static org.hl7.fhir.r4.model.Consent.ConsentPolicyComponent convertConsentPolicyComponent(org.hl7.fhir.dstu3.model.Consent.ConsentPolicyComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Consent.ConsentPolicyComponent tgt = new org.hl7.fhir.r4.model.Consent.ConsentPolicyComponent(); - copyElement(src, tgt); - if (src.hasAuthority()) - tgt.setAuthority(src.getAuthority()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Consent.ConsentPolicyComponent convertConsentPolicyComponent(org.hl7.fhir.r4.model.Consent.ConsentPolicyComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Consent.ConsentPolicyComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ConsentPolicyComponent(); - copyElement(src, tgt); - if (src.hasAuthority()) - tgt.setAuthority(src.getAuthority()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - return tgt; - } -// -// public static org.hl7.fhir.r4.model.Consent.ConsentDataComponent convertConsentDataComponent(org.hl7.fhir.dstu3.model.Consent.ConsentDataComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.r4.model.Consent.ConsentDataComponent tgt = new org.hl7.fhir.r4.model.Consent.ConsentDataComponent(); -// copyElement(src, tgt); -// if (src.hasMeaning()) -// tgt.setMeaning(convertConsentDataMeaning(src.getMeaning())); -// if (src.hasReference()) -// tgt.setReference(convertReference(src.getReference())); -// return tgt; -// } -// -// public static org.hl7.fhir.dstu3.model.Consent.ConsentDataComponent convertConsentDataComponent(org.hl7.fhir.r4.model.Consent.ConsentDataComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.dstu3.model.Consent.ConsentDataComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ConsentDataComponent(); -// copyElement(src, tgt); -// if (src.hasMeaning()) -// tgt.setMeaning(convertConsentDataMeaning(src.getMeaning())); -// if (src.hasReference()) -// tgt.setReference(convertReference(src.getReference())); -// return tgt; -// } - - private static org.hl7.fhir.r4.model.Consent.ConsentDataMeaning convertConsentDataMeaning(org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.r4.model.Consent.ConsentDataMeaning.INSTANCE; - case RELATED: return org.hl7.fhir.r4.model.Consent.ConsentDataMeaning.RELATED; - case DEPENDENTS: return org.hl7.fhir.r4.model.Consent.ConsentDataMeaning.DEPENDENTS; - case AUTHOREDBY: return org.hl7.fhir.r4.model.Consent.ConsentDataMeaning.AUTHOREDBY; - default: return org.hl7.fhir.r4.model.Consent.ConsentDataMeaning.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning convertConsentDataMeaning(org.hl7.fhir.r4.model.Consent.ConsentDataMeaning src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning.INSTANCE; - case RELATED: return org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning.RELATED; - case DEPENDENTS: return org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning.DEPENDENTS; - case AUTHOREDBY: return org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning.AUTHOREDBY; - default: return org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning.NULL; - } -} - -// public static org.hl7.fhir.r4.model.Consent.ExceptComponent convertExceptComponent(org.hl7.fhir.dstu3.model.Consent.ExceptComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.r4.model.Consent.ExceptComponent tgt = new org.hl7.fhir.r4.model.Consent.ExceptComponent(); -// copyElement(src, tgt); -// if (src.hasType()) -// tgt.setType(convertConsentExceptType(src.getType())); -// if (src.hasPeriod()) -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// for (org.hl7.fhir.dstu3.model.Consent.ExceptActorComponent t : src.getActor()) -// tgt.addActor(convertExceptActorComponent(t)); -// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAction()) -// tgt.addAction(convertCodeableConcept(t)); -// for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurityLabel()) -// tgt.addSecurityLabel(convertCoding(t)); -// for (org.hl7.fhir.dstu3.model.Coding t : src.getPurpose()) -// tgt.addPurpose(convertCoding(t)); -// for (org.hl7.fhir.dstu3.model.Coding t : src.getClass_()) -// tgt.addClass_(convertCoding(t)); -// for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) -// tgt.addCode(convertCoding(t)); -// if (src.hasDataPeriod()) -// tgt.setDataPeriod(convertPeriod(src.getDataPeriod())); -// for (org.hl7.fhir.dstu3.model.Consent.ExceptDataComponent t : src.getData()) -// tgt.addData(convertExceptDataComponent(t)); -// return tgt; -// } -// -// public static org.hl7.fhir.dstu3.model.Consent.ExceptComponent convertExceptComponent(org.hl7.fhir.r4.model.Consent.ExceptComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.dstu3.model.Consent.ExceptComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ExceptComponent(); -// copyElement(src, tgt); -// if (src.hasType()) -// tgt.setType(convertConsentExceptType(src.getType())); -// if (src.hasPeriod()) -// tgt.setPeriod(convertPeriod(src.getPeriod())); -// for (org.hl7.fhir.r4.model.Consent.ExceptActorComponent t : src.getActor()) -// tgt.addActor(convertExceptActorComponent(t)); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAction()) -// tgt.addAction(convertCodeableConcept(t)); -// for (org.hl7.fhir.r4.model.Coding t : src.getSecurityLabel()) -// tgt.addSecurityLabel(convertCoding(t)); -// for (org.hl7.fhir.r4.model.Coding t : src.getPurpose()) -// tgt.addPurpose(convertCoding(t)); -// for (org.hl7.fhir.r4.model.Coding t : src.getClass_()) -// tgt.addClass_(convertCoding(t)); -// for (org.hl7.fhir.r4.model.Coding t : src.getCode()) -// tgt.addCode(convertCoding(t)); -// if (src.hasDataPeriod()) -// tgt.setDataPeriod(convertPeriod(src.getDataPeriod())); -// for (org.hl7.fhir.r4.model.Consent.ExceptDataComponent t : src.getData()) -// tgt.addData(convertExceptDataComponent(t)); -// return tgt; -// } -// -// private static org.hl7.fhir.r4.model.Consent.ConsentExceptType convertConsentExceptType(org.hl7.fhir.dstu3.model.Consent.ConsentExceptType src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case DENY: return org.hl7.fhir.r4.model.Consent.ConsentExceptType.DENY; -// case PERMIT: return org.hl7.fhir.r4.model.Consent.ConsentExceptType.PERMIT; -// default: return org.hl7.fhir.r4.model.Consent.ConsentExceptType.NULL; -// } -//} -// -// private static org.hl7.fhir.dstu3.model.Consent.ConsentExceptType convertConsentExceptType(org.hl7.fhir.r4.model.Consent.ConsentExceptType src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case DENY: return org.hl7.fhir.dstu3.model.Consent.ConsentExceptType.DENY; -// case PERMIT: return org.hl7.fhir.dstu3.model.Consent.ConsentExceptType.PERMIT; -// default: return org.hl7.fhir.dstu3.model.Consent.ConsentExceptType.NULL; -// } -//} -// -// public static org.hl7.fhir.r4.model.Consent.ExceptActorComponent convertExceptActorComponent(org.hl7.fhir.dstu3.model.Consent.ExceptActorComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.r4.model.Consent.ExceptActorComponent tgt = new org.hl7.fhir.r4.model.Consent.ExceptActorComponent(); -// copyElement(src, tgt); -// if (src.hasRole()) -// tgt.setRole(convertCodeableConcept(src.getRole())); -// if (src.hasReference()) -// tgt.setReference(convertReference(src.getReference())); -// return tgt; -// } -// -// public static org.hl7.fhir.dstu3.model.Consent.ExceptActorComponent convertExceptActorComponent(org.hl7.fhir.r4.model.Consent.ExceptActorComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.dstu3.model.Consent.ExceptActorComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ExceptActorComponent(); -// copyElement(src, tgt); -// if (src.hasRole()) -// tgt.setRole(convertCodeableConcept(src.getRole())); -// if (src.hasReference()) -// tgt.setReference(convertReference(src.getReference())); -// return tgt; -// } -// -// public static org.hl7.fhir.r4.model.Consent.ExceptDataComponent convertExceptDataComponent(org.hl7.fhir.dstu3.model.Consent.ExceptDataComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.r4.model.Consent.ExceptDataComponent tgt = new org.hl7.fhir.r4.model.Consent.ExceptDataComponent(); -// copyElement(src, tgt); -// if (src.hasMeaning()) -// tgt.setMeaning(convertConsentDataMeaning(src.getMeaning())); -// if (src.hasReference()) -// tgt.setReference(convertReference(src.getReference())); -// return tgt; -// } -// -// public static org.hl7.fhir.dstu3.model.Consent.ExceptDataComponent convertExceptDataComponent(org.hl7.fhir.r4.model.Consent.ExceptDataComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.dstu3.model.Consent.ExceptDataComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ExceptDataComponent(); -// copyElement(src, tgt); -// if (src.hasMeaning()) -// tgt.setMeaning(convertConsentDataMeaning(src.getMeaning())); -// if (src.hasReference()) -// tgt.setReference(convertReference(src.getReference())); -// return tgt; -// } - - public static org.hl7.fhir.r4.model.Contract convertContract(org.hl7.fhir.dstu3.model.Contract src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contract tgt = new org.hl7.fhir.r4.model.Contract(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertContractStatus(src.getStatus())); - if (src.hasIssued()) - tgt.setIssued(src.getIssued()); - if (src.hasApplies()) - tgt.setApplies(convertPeriod(src.getApplies())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSubject()) - tgt.addSubject(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthority()) - tgt.addAuthority(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDomain()) - tgt.addDomain(convertReference(t)); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubType()) - tgt.addSubType(convertCodeableConcept(t)); - if (src.hasContentDerivative()) - tgt.setContentDerivative(convertCodeableConcept(src.getContentDerivative())); - for (org.hl7.fhir.dstu3.model.Contract.SignatoryComponent t : src.getSigner()) - tgt.addSigner(convertSignatoryComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.TermComponent t : src.getTerm()) - tgt.addTerm(convertTermComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) - tgt.addFriendly(convertFriendlyLanguageComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent t : src.getLegal()) - tgt.addLegal(convertLegalLanguageComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent t : src.getRule()) - tgt.setRule(convertComputableLanguageComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contract convertContract(org.hl7.fhir.r4.model.Contract src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contract tgt = new org.hl7.fhir.dstu3.model.Contract(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertContractStatus(src.getStatus())); - if (src.hasIssued()) - tgt.setIssued(src.getIssued()); - if (src.hasApplies()) - tgt.setApplies(convertPeriod(src.getApplies())); - for (org.hl7.fhir.r4.model.Reference t : src.getSubject()) - tgt.addSubject(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthority()) - tgt.addAuthority(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDomain()) - tgt.addDomain(convertReference(t)); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubType()) - tgt.addSubType(convertCodeableConcept(t)); - if (src.hasContentDerivative()) - tgt.setContentDerivative(convertCodeableConcept(src.getContentDerivative())); - for (org.hl7.fhir.r4.model.Contract.SignatoryComponent t : src.getSigner()) - tgt.addSigner(convertSignatoryComponent(t)); - for (org.hl7.fhir.r4.model.Contract.TermComponent t : src.getTerm()) - tgt.addTerm(convertTermComponent(t)); - for (org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) - tgt.addFriendly(convertFriendlyLanguageComponent(t)); - for (org.hl7.fhir.r4.model.Contract.LegalLanguageComponent t : src.getLegal()) - tgt.addLegal(convertLegalLanguageComponent(t)); - if (src.hasRule()) - tgt.addRule(convertComputableLanguageComponent(src.getRule())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Contract.ContractStatus convertContractStatus(org.hl7.fhir.dstu3.model.Contract.ContractStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case AMENDED: return org.hl7.fhir.r4.model.Contract.ContractStatus.AMENDED; - case APPENDED: return org.hl7.fhir.r4.model.Contract.ContractStatus.APPENDED; - case CANCELLED: return org.hl7.fhir.r4.model.Contract.ContractStatus.CANCELLED; - case DISPUTED: return org.hl7.fhir.r4.model.Contract.ContractStatus.DISPUTED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Contract.ContractStatus.ENTEREDINERROR; - case EXECUTABLE: return org.hl7.fhir.r4.model.Contract.ContractStatus.EXECUTABLE; - case EXECUTED: return org.hl7.fhir.r4.model.Contract.ContractStatus.EXECUTED; - case NEGOTIABLE: return org.hl7.fhir.r4.model.Contract.ContractStatus.NEGOTIABLE; - case OFFERED: return org.hl7.fhir.r4.model.Contract.ContractStatus.OFFERED; - case POLICY: return org.hl7.fhir.r4.model.Contract.ContractStatus.POLICY; - case REJECTED: return org.hl7.fhir.r4.model.Contract.ContractStatus.REJECTED; - case RENEWED: return org.hl7.fhir.r4.model.Contract.ContractStatus.RENEWED; - case REVOKED: return org.hl7.fhir.r4.model.Contract.ContractStatus.REVOKED; - case RESOLVED: return org.hl7.fhir.r4.model.Contract.ContractStatus.RESOLVED; - case TERMINATED: return org.hl7.fhir.r4.model.Contract.ContractStatus.TERMINATED; - default: return org.hl7.fhir.r4.model.Contract.ContractStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Contract.ContractStatus convertContractStatus(org.hl7.fhir.r4.model.Contract.ContractStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case AMENDED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.AMENDED; - case APPENDED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.APPENDED; - case CANCELLED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.CANCELLED; - case DISPUTED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.DISPUTED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.ENTEREDINERROR; - case EXECUTABLE: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.EXECUTABLE; - case EXECUTED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.EXECUTED; - case NEGOTIABLE: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.NEGOTIABLE; - case OFFERED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.OFFERED; - case POLICY: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.POLICY; - case REJECTED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.REJECTED; - case RENEWED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.RENEWED; - case REVOKED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.REVOKED; - case RESOLVED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.RESOLVED; - case TERMINATED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.TERMINATED; - default: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Contract.AgentComponent convertAgentComponent(org.hl7.fhir.dstu3.model.Contract.AgentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contract.AgentComponent tgt = new org.hl7.fhir.r4.model.Contract.AgentComponent(); - copyElement(src, tgt); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contract.AgentComponent convertAgentComponent(org.hl7.fhir.r4.model.Contract.AgentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contract.AgentComponent tgt = new org.hl7.fhir.dstu3.model.Contract.AgentComponent(); - copyElement(src, tgt); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.dstu3.model.Contract.SignatoryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.r4.model.Contract.SignatoryComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - if (src.hasParty()) - tgt.setParty(convertReference(src.getParty())); - for (org.hl7.fhir.dstu3.model.Signature t : src.getSignature()) - tgt.addSignature(convertSignature(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.r4.model.Contract.SignatoryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.dstu3.model.Contract.SignatoryComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - if (src.hasParty()) - tgt.setParty(convertReference(src.getParty())); - for (org.hl7.fhir.r4.model.Signature t : src.getSignature()) - tgt.addSignature(convertSignature(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.r4.model.Contract.ValuedItemComponent(); - copyElement(src, tgt); - if (src.hasEntity()) - tgt.setEntity(convertType(src.getEntity())); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasEffectiveTime()) - tgt.setEffectiveTime(src.getEffectiveTime()); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasPoints()) - tgt.setPoints(src.getPoints()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.r4.model.Contract.ValuedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent(); - copyElement(src, tgt); - if (src.hasEntity()) - tgt.setEntity(convertType(src.getEntity())); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasEffectiveTime()) - tgt.setEffectiveTime(src.getEffectiveTime()); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasPoints()) - tgt.setPoints(src.getPoints()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.dstu3.model.Contract.TermComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contract.TermComponent tgt = new org.hl7.fhir.r4.model.Contract.TermComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasIssued()) - tgt.setIssued(src.getIssued()); - if (src.hasApplies()) - tgt.setApplies(convertPeriod(src.getApplies())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSubType()) - tgt.setSubType(convertCodeableConcept(src.getSubType())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAction()) - tgt.addAction(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getActionReason()) - tgt.addActionReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Contract.TermAgentComponent t : src.getAgent()) - tgt.addAgent(convertTermAgentComponent(t)); - for (org.hl7.fhir.dstu3.model.Contract.TermComponent t : src.getGroup()) - tgt.addGroup(convertTermComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.r4.model.Contract.TermComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contract.TermComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasIssued()) - tgt.setIssued(src.getIssued()); - if (src.hasApplies()) - tgt.setApplies(convertPeriod(src.getApplies())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSubType()) - tgt.setSubType(convertCodeableConcept(src.getSubType())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAction()) - tgt.addAction(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getActionReason()) - tgt.addActionReason(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Contract.AgentComponent t : src.getAgent()) - tgt.addAgent(convertTermAgentComponent(t)); - for (org.hl7.fhir.r4.model.Contract.TermComponent t : src.getGroup()) - tgt.addGroup(convertTermComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Contract.AgentComponent convertTermAgentComponent(org.hl7.fhir.dstu3.model.Contract.TermAgentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contract.AgentComponent tgt = new org.hl7.fhir.r4.model.Contract.AgentComponent(); - copyElement(src, tgt); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contract.TermAgentComponent convertTermAgentComponent(org.hl7.fhir.r4.model.Contract.AgentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contract.TermAgentComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermAgentComponent(); - copyElement(src, tgt); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Contract.ValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.r4.model.Contract.ValuedItemComponent(); - copyElement(src, tgt); - if (src.hasEntity()) - tgt.setEntity(convertType(src.getEntity())); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasEffectiveTime()) - tgt.setEffectiveTime(src.getEffectiveTime()); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasPoints()) - tgt.setPoints(src.getPoints()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.r4.model.Contract.ValuedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent(); - copyElement(src, tgt); - if (src.hasEntity()) - tgt.setEntity(convertType(src.getEntity())); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasEffectiveTime()) - tgt.setEffectiveTime(src.getEffectiveTime()); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasPoints()) - tgt.setPoints(src.getPoints()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent(); - copyElement(src, tgt); - if (src.hasContent()) - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent(); - copyElement(src, tgt); - if (src.hasContent()) - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.LegalLanguageComponent(); - copyElement(src, tgt); - if (src.hasContent()) - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.r4.model.Contract.LegalLanguageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent(); - copyElement(src, tgt); - if (src.hasContent()) - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent(); - copyElement(src, tgt); - if (src.hasContent()) - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent(); - copyElement(src, tgt); - if (src.hasContent()) - tgt.setContent(convertType(src.getContent())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Coverage convertCoverage(org.hl7.fhir.dstu3.model.Coverage src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Coverage tgt = new org.hl7.fhir.r4.model.Coverage(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertCoverageStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasPolicyHolder()) - tgt.setPolicyHolder(convertReference(src.getPolicyHolder())); - if (src.hasSubscriber()) - tgt.setSubscriber(convertReference(src.getSubscriber())); - if (src.hasSubscriberId()) - tgt.setSubscriberId(src.getSubscriberId()); - if (src.hasBeneficiary()) - tgt.setBeneficiary(convertReference(src.getBeneficiary())); - if (src.hasRelationship()) - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPayor()) - tgt.addPayor(convertReference(t)); - if (src.hasGrouping()) - tgt.setGrouping(convertGroupComponent(src.getGrouping())); - if (src.hasDependent()) - tgt.setDependent(src.getDependent()); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasOrder()) - tgt.setOrder(src.getOrder()); - if (src.hasNetwork()) - tgt.setNetwork(src.getNetwork()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getContract()) - tgt.addContract(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Coverage convertCoverage(org.hl7.fhir.r4.model.Coverage src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Coverage tgt = new org.hl7.fhir.dstu3.model.Coverage(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertCoverageStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasPolicyHolder()) - tgt.setPolicyHolder(convertReference(src.getPolicyHolder())); - if (src.hasSubscriber()) - tgt.setSubscriber(convertReference(src.getSubscriber())); - if (src.hasSubscriberId()) - tgt.setSubscriberId(src.getSubscriberId()); - if (src.hasBeneficiary()) - tgt.setBeneficiary(convertReference(src.getBeneficiary())); - if (src.hasRelationship()) - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.Reference t : src.getPayor()) - tgt.addPayor(convertReference(t)); - if (src.hasGrouping()) - tgt.setGrouping(convertGroupComponent(src.getGrouping())); - if (src.hasDependent()) - tgt.setDependent(src.getDependent()); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasOrder()) - tgt.setOrder(src.getOrder()); - if (src.hasNetwork()) - tgt.setNetwork(src.getNetwork()); - for (org.hl7.fhir.r4.model.Reference t : src.getContract()) - tgt.addContract(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Coverage.CoverageStatus convertCoverageStatus(org.hl7.fhir.dstu3.model.Coverage.CoverageStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Coverage.CoverageStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.Coverage.CoverageStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.Coverage.CoverageStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Coverage.CoverageStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Coverage.CoverageStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Coverage.CoverageStatus convertCoverageStatus(org.hl7.fhir.r4.model.Coverage.CoverageStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Coverage.CoverageStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.Coverage.CoverageStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.Coverage.CoverageStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Coverage.CoverageStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Coverage.CoverageStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Coverage.GroupComponent convertGroupComponent(org.hl7.fhir.dstu3.model.Coverage.GroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Coverage.GroupComponent tgt = new org.hl7.fhir.r4.model.Coverage.GroupComponent(); - copyElement(src, tgt); - if (src.hasGroup()) - tgt.setGroup(src.getGroup()); - if (src.hasGroupDisplay()) - tgt.setGroupDisplay(src.getGroupDisplay()); - if (src.hasSubGroup()) - tgt.setSubGroup(src.getSubGroup()); - if (src.hasSubGroupDisplay()) - tgt.setSubGroupDisplay(src.getSubGroupDisplay()); - if (src.hasPlan()) - tgt.setPlan(src.getPlan()); - if (src.hasPlanDisplay()) - tgt.setPlanDisplay(src.getPlanDisplay()); - if (src.hasSubPlan()) - tgt.setSubPlan(src.getSubPlan()); - if (src.hasSubPlanDisplay()) - tgt.setSubPlanDisplay(src.getSubPlanDisplay()); - if (src.hasClass_()) - tgt.setClass_(src.getClass_()); - if (src.hasClassDisplay()) - tgt.setClassDisplay(src.getClassDisplay()); - if (src.hasSubClass()) - tgt.setSubClass(src.getSubClass()); - if (src.hasSubClassDisplay()) - tgt.setSubClassDisplay(src.getSubClassDisplay()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Coverage.GroupComponent convertGroupComponent(org.hl7.fhir.r4.model.Coverage.GroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Coverage.GroupComponent tgt = new org.hl7.fhir.dstu3.model.Coverage.GroupComponent(); - copyElement(src, tgt); - if (src.hasGroup()) - tgt.setGroup(src.getGroup()); - if (src.hasGroupDisplay()) - tgt.setGroupDisplay(src.getGroupDisplay()); - if (src.hasSubGroup()) - tgt.setSubGroup(src.getSubGroup()); - if (src.hasSubGroupDisplay()) - tgt.setSubGroupDisplay(src.getSubGroupDisplay()); - if (src.hasPlan()) - tgt.setPlan(src.getPlan()); - if (src.hasPlanDisplay()) - tgt.setPlanDisplay(src.getPlanDisplay()); - if (src.hasSubPlan()) - tgt.setSubPlan(src.getSubPlan()); - if (src.hasSubPlanDisplay()) - tgt.setSubPlanDisplay(src.getSubPlanDisplay()); - if (src.hasClass_()) - tgt.setClass_(src.getClass_()); - if (src.hasClassDisplay()) - tgt.setClassDisplay(src.getClassDisplay()); - if (src.hasSubClass()) - tgt.setSubClass(src.getSubClass()); - if (src.hasSubClassDisplay()) - tgt.setSubClassDisplay(src.getSubClassDisplay()); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureDefinition convertDataElement(org.hl7.fhir.dstu3.model.DataElement src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl().replace("/DataElement/", "/StructureDefinition/de-")); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); -// if (src.hasStringency()) -// tgt.setStringency(convertDataElementStringency(src.getStringency())); - for (org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent t : src.getMapping()) - tgt.addMapping(convertDataElementMappingComponent(t)); - for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) - tgt.getSnapshot().addElement(convertElementDefinition(t)); - tgt.setKind(StructureDefinitionKind.LOGICAL); - tgt.setAbstract(false); - tgt.setType(tgt.getName()); - tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/Element"); - tgt.setDerivation(TypeDerivationRule.SPECIALIZATION); - return tgt; - } - -// public static org.hl7.fhir.dstu3.model.DataElement convertDataElement(org.hl7.fhir.r4.model.DataElement src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.dstu3.model.DataElement tgt = new org.hl7.fhir.dstu3.model.DataElement(); -// copyDomainResource(src, tgt); -// if (src.hasUrl()) -// tgt.setUrl(src.getUrl()); -// for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) -// tgt.addIdentifier(convertIdentifier(t)); -// if (src.hasVersion()) -// tgt.setVersion(src.getVersion()); -// if (src.hasStatus()) -// tgt.setStatus(convertPublicationStatus(src.getStatus())); -// if (src.hasExperimental()) -// tgt.setExperimental(src.getExperimental()); -// if (src.hasDate()) -// tgt.setDate(src.getDate()); -// if (src.hasPublisher()) -// tgt.setPublisher(src.getPublisher()); -// if (src.hasName()) -// tgt.setName(src.getName()); -// if (src.hasTitle()) -// tgt.setTitle(src.getTitle()); -// for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) -// tgt.addContact(convertContactDetail(t)); -// for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) -// tgt.addUseContext(convertUsageContext(t)); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) -// tgt.addJurisdiction(convertCodeableConcept(t)); -// if (src.hasCopyright()) -// tgt.setCopyright(src.getCopyright()); -// if (src.hasStringency()) -// tgt.setStringency(convertDataElementStringency(src.getStringency())); -// for (org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent t : src.getMapping()) -// tgt.addMapping(convertDataElementMappingComponent(t)); -// for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) -// tgt.addElement(convertElementDefinition(t)); -// return tgt; -// } - -// private static org.hl7.fhir.r4.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.dstu3.model.DataElement.DataElementStringency src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case COMPARABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.COMPARABLE; -// case FULLYSPECIFIED: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FULLYSPECIFIED; -// case EQUIVALENT: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.EQUIVALENT; -// case CONVERTABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.CONVERTABLE; -// case SCALEABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.SCALEABLE; -// case FLEXIBLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FLEXIBLE; -// default: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.NULL; -// } -//} -// -// private static org.hl7.fhir.dstu3.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.r4.model.DataElement.DataElementStringency src) throws FHIRException { -// if (src == null) -// return null; -// switch (src) { -// case COMPARABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.COMPARABLE; -// case FULLYSPECIFIED: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FULLYSPECIFIED; -// case EQUIVALENT: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.EQUIVALENT; -// case CONVERTABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.CONVERTABLE; -// case SCALEABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.SCALEABLE; -// case FLEXIBLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FLEXIBLE; -// default: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.NULL; -// } -//} - - public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - if (src.hasIdentity()) - tgt.setIdentity(src.getIdentity()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - -// public static org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent(); -// copyElement(src, tgt); -// if (src.hasIdentity()) -// tgt.setIdentity(src.getIdentity()); -// if (src.hasUri()) -// tgt.setUri(src.getUri()); -// if (src.hasName()) -// tgt.setName(src.getName()); -// if (src.hasComment()) -// tgt.setComment(src.getComment()); -// return tgt; -// } - - public static org.hl7.fhir.r4.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.dstu3.model.DetectedIssue src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DetectedIssue tgt = new org.hl7.fhir.r4.model.DetectedIssue(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertDetectedIssueStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasSeverity()) - tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getImplicated()) - tgt.addImplicated(convertReference(t)); - if (src.hasDetail()) - tgt.setDetail(src.getDetail()); - if (src.hasReference()) - tgt.setReference(src.getReference()); - for (org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) - tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.r4.model.DetectedIssue src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DetectedIssue tgt = new org.hl7.fhir.dstu3.model.DetectedIssue(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertDetectedIssueStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasSeverity()) - tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - for (org.hl7.fhir.r4.model.Reference t : src.getImplicated()) - tgt.addImplicated(convertReference(t)); - if (src.hasDetail()) - tgt.setDetail(src.getDetail()); - if (src.hasReference()) - tgt.setReference(src.getReference()); - for (org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) - tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus convertDetectedIssueStatus(org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.REGISTERED; - case PRELIMINARY: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.FINAL; - case AMENDED: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.AMENDED; - case CORRECTED: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.CORRECTED; - case CANCELLED: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus convertDetectedIssueStatus(org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.REGISTERED; - case PRELIMINARY: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.FINAL; - case AMENDED: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.AMENDED; - case CORRECTED: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.CORRECTED; - case CANCELLED: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HIGH: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.HIGH; - case MODERATE: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.MODERATE; - case LOW: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.LOW; - default: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HIGH: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.HIGH; - case MODERATE: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.MODERATE; - case LOW: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.LOW; - default: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.NULL; - } -} - - public static org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent(); - copyElement(src, tgt); - if (src.hasAction()) - tgt.setAction(convertCodeableConcept(src.getAction())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent(); - copyElement(src, tgt); - if (src.hasAction()) - tgt.setAction(convertCodeableConcept(src.getAction())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Device convertDevice(org.hl7.fhir.dstu3.model.Device src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Device tgt = new org.hl7.fhir.r4.model.Device(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasUdi()) - tgt.setUdi(convertDeviceUdiComponent(src.getUdi())); - if (src.hasStatus()) - tgt.setStatus(convertFHIRDeviceStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasLotNumber()) - tgt.setLotNumber(src.getLotNumber()); - if (src.hasManufacturer()) - tgt.setManufacturer(src.getManufacturer()); - if (src.hasManufactureDate()) - tgt.setManufactureDate(src.getManufactureDate()); - if (src.hasExpirationDate()) - tgt.setExpirationDate(src.getExpirationDate()); - if (src.hasModel()) - tgt.setModel(src.getModel()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasOwner()) - tgt.setOwner(convertReference(src.getOwner())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSafety()) - tgt.addSafety(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Device convertDevice(org.hl7.fhir.r4.model.Device src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Device tgt = new org.hl7.fhir.dstu3.model.Device(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasUdi()) - tgt.setUdi(convertDeviceUdiComponent(src.getUdi())); - if (src.hasStatus()) - tgt.setStatus(convertFHIRDeviceStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasLotNumber()) - tgt.setLotNumber(src.getLotNumber()); - if (src.hasManufacturer()) - tgt.setManufacturer(src.getManufacturer()); - if (src.hasManufactureDate()) - tgt.setManufactureDate(src.getManufactureDate()); - if (src.hasExpirationDate()) - tgt.setExpirationDate(src.getExpirationDate()); - if (src.hasModel()) - tgt.setModel(src.getModel()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasOwner()) - tgt.setOwner(convertReference(src.getOwner())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSafety()) - tgt.addSafety(convertCodeableConcept(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Device.FHIRDeviceStatus convertFHIRDeviceStatus(org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus convertFHIRDeviceStatus(org.hl7.fhir.r4.model.Device.FHIRDeviceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Device.DeviceUdiComponent convertDeviceUdiComponent(org.hl7.fhir.dstu3.model.Device.DeviceUdiComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Device.DeviceUdiComponent tgt = new org.hl7.fhir.r4.model.Device.DeviceUdiComponent(); - copyElement(src, tgt); - if (src.hasDeviceIdentifier()) - tgt.setDeviceIdentifier(src.getDeviceIdentifier()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasJurisdiction()) - tgt.setJurisdiction(src.getJurisdiction()); - if (src.hasCarrierHRF()) - tgt.setCarrierHRF(src.getCarrierHRF()); - if (src.hasCarrierAIDC()) - tgt.setCarrierAIDC(src.getCarrierAIDC()); - if (src.hasIssuer()) - tgt.setIssuer(src.getIssuer()); - if (src.hasEntryType()) - tgt.setEntryType(convertUDIEntryType(src.getEntryType())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Device.DeviceUdiComponent convertDeviceUdiComponent(org.hl7.fhir.r4.model.Device.DeviceUdiComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Device.DeviceUdiComponent tgt = new org.hl7.fhir.dstu3.model.Device.DeviceUdiComponent(); - copyElement(src, tgt); - if (src.hasDeviceIdentifier()) - tgt.setDeviceIdentifier(src.getDeviceIdentifier()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasJurisdiction()) - tgt.setJurisdiction(src.getJurisdiction()); - if (src.hasCarrierHRF()) - tgt.setCarrierHRF(src.getCarrierHRF()); - if (src.hasCarrierAIDC()) - tgt.setCarrierAIDC(src.getCarrierAIDC()); - if (src.hasIssuer()) - tgt.setIssuer(src.getIssuer()); - if (src.hasEntryType()) - tgt.setEntryType(convertUDIEntryType(src.getEntryType())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Device.UDIEntryType convertUDIEntryType(org.hl7.fhir.dstu3.model.Device.UDIEntryType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BARCODE: return org.hl7.fhir.r4.model.Device.UDIEntryType.BARCODE; - case RFID: return org.hl7.fhir.r4.model.Device.UDIEntryType.RFID; - case MANUAL: return org.hl7.fhir.r4.model.Device.UDIEntryType.MANUAL; - case CARD: return org.hl7.fhir.r4.model.Device.UDIEntryType.CARD; - case SELFREPORTED: return org.hl7.fhir.r4.model.Device.UDIEntryType.SELFREPORTED; - case UNKNOWN: return org.hl7.fhir.r4.model.Device.UDIEntryType.UNKNOWN; - default: return org.hl7.fhir.r4.model.Device.UDIEntryType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Device.UDIEntryType convertUDIEntryType(org.hl7.fhir.r4.model.Device.UDIEntryType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BARCODE: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.BARCODE; - case RFID: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.RFID; - case MANUAL: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.MANUAL; - case CARD: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.CARD; - case SELFREPORTED: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.SELFREPORTED; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.NULL; - } -} - - public static org.hl7.fhir.r4.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.dstu3.model.DeviceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DeviceComponent tgt = new org.hl7.fhir.r4.model.DeviceComponent(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasLastSystemChange()) - tgt.setLastSystemChange(src.getLastSystemChange()); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - if (src.hasParent()) - tgt.setParent(convertReference(src.getParent())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getOperationalStatus()) - tgt.addOperationalStatus(convertCodeableConcept(t)); - if (src.hasParameterGroup()) - tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); - if (src.hasMeasurementPrinciple()) - tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); - for (org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) - tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); - if (src.hasLanguageCode()) - tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.r4.model.DeviceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DeviceComponent tgt = new org.hl7.fhir.dstu3.model.DeviceComponent(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasLastSystemChange()) - tgt.setLastSystemChange(src.getLastSystemChange()); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - if (src.hasParent()) - tgt.setParent(convertReference(src.getParent())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getOperationalStatus()) - tgt.addOperationalStatus(convertCodeableConcept(t)); - if (src.hasParameterGroup()) - tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); - if (src.hasMeasurementPrinciple()) - tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); - for (org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) - tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); - if (src.hasLanguageCode()) - tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); - return tgt; - } - - private static org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OTHER: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.OTHER; - case CHEMICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; - case ELECTRICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; - case IMPEDANCE: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; - case NUCLEAR: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; - case OPTICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.OPTICAL; - case THERMAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.THERMAL; - case BIOLOGICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; - case MECHANICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; - case ACOUSTICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; - case MANUAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.MANUAL; - default: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OTHER: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.OTHER; - case CHEMICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; - case ELECTRICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; - case IMPEDANCE: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; - case NUCLEAR: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; - case OPTICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.OPTICAL; - case THERMAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.THERMAL; - case BIOLOGICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; - case MECHANICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; - case ACOUSTICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; - case MANUAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.MANUAL; - default: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.NULL; - } -} - - public static org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); - copyElement(src, tgt); - if (src.hasSpecType()) - tgt.setSpecType(convertCodeableConcept(src.getSpecType())); - if (src.hasComponentId()) - tgt.setComponentId(convertIdentifier(src.getComponentId())); - if (src.hasProductionSpec()) - tgt.setProductionSpec(src.getProductionSpec()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); - copyElement(src, tgt); - if (src.hasSpecType()) - tgt.setSpecType(convertCodeableConcept(src.getSpecType())); - if (src.hasComponentId()) - tgt.setComponentId(convertIdentifier(src.getComponentId())); - if (src.hasProductionSpec()) - tgt.setProductionSpec(src.getProductionSpec()); - return tgt; - } - - public static org.hl7.fhir.r4.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.dstu3.model.DeviceMetric src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DeviceMetric tgt = new org.hl7.fhir.r4.model.DeviceMetric(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasUnit()) - tgt.setUnit(convertCodeableConcept(src.getUnit())); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - if (src.hasParent()) - tgt.setParent(convertReference(src.getParent())); - if (src.hasOperationalStatus()) - tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); - if (src.hasColor()) - tgt.setColor(convertDeviceMetricColor(src.getColor())); - if (src.hasCategory()) - tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); - if (src.hasMeasurementPeriod()) - tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); - for (org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) - tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.r4.model.DeviceMetric src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DeviceMetric tgt = new org.hl7.fhir.dstu3.model.DeviceMetric(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasUnit()) - tgt.setUnit(convertCodeableConcept(src.getUnit())); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - if (src.hasParent()) - tgt.setParent(convertReference(src.getParent())); - if (src.hasOperationalStatus()) - tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); - if (src.hasColor()) - tgt.setColor(convertDeviceMetricColor(src.getColor())); - if (src.hasCategory()) - tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); - if (src.hasMeasurementPeriod()) - tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); - for (org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) - tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ON: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.ON; - case OFF: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; - case STANDBY: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ON: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.ON; - case OFF: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; - case STANDBY: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BLACK: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.BLACK; - case RED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.RED; - case GREEN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.GREEN; - case YELLOW: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.YELLOW; - case BLUE: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.BLUE; - case MAGENTA: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.MAGENTA; - case CYAN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.CYAN; - case WHITE: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.WHITE; - default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BLACK: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.BLACK; - case RED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.RED; - case GREEN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.GREEN; - case YELLOW: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.YELLOW; - case BLUE: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.BLUE; - case MAGENTA: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.MAGENTA; - case CYAN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.CYAN; - case WHITE: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.WHITE; - default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.NULL; - } -} - - private static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MEASUREMENT: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; - case SETTING: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.SETTING; - case CALCULATION: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.CALCULATION; - case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; - default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MEASUREMENT: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; - case SETTING: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.SETTING; - case CALCULATION: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.CALCULATION; - case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; - default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.NULL; - } -} - - public static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertDeviceMetricCalibrationType(src.getType())); - if (src.hasState()) - tgt.setState(convertDeviceMetricCalibrationState(src.getState())); - if (src.hasTime()) - tgt.setTime(src.getTime()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertDeviceMetricCalibrationType(src.getType())); - if (src.hasState()) - tgt.setState(convertDeviceMetricCalibrationState(src.getState())); - if (src.hasTime()) - tgt.setTime(src.getTime()); - return tgt; - } - - private static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; - case OFFSET: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; - case GAIN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; - case TWOPOINT: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; - default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; - case OFFSET: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; - case GAIN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; - case TWOPOINT: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; - default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.NULL; - } -} - - private static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTCALIBRATED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; - case CALIBRATIONREQUIRED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; - case CALIBRATED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; - case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; - default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NOTCALIBRATED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; - case CALIBRATIONREQUIRED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; - case CALIBRATED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; - case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; - default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.NULL; - } -} - - public static org.hl7.fhir.r4.model.DeviceRequest convertDeviceRequest(org.hl7.fhir.dstu3.model.DeviceRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DeviceRequest tgt = new org.hl7.fhir.r4.model.DeviceRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPriorRequest()) - tgt.addPriorRequest(convertReference(t)); - if (src.hasGroupIdentifier()) - tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertDeviceRequestStatus(src.getStatus())); - if (src.hasIntent()) - tgt.setIntent(convertCodeableConcept(src.getIntent())); - if (src.hasPriority()) - tgt.setPriority(convertRequestPriority(src.getPriority())); - if (src.hasCode()) - tgt.setCode(convertType(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasRequester()) - tgt.setRequester(convertDeviceRequestRequesterComponent(src.getRequester())); - if (src.hasPerformerType()) - tgt.setPerformerType(convertCodeableConcept(src.getPerformerType())); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInfo()) - tgt.addSupportingInfo(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRelevantHistory()) - tgt.addRelevantHistory(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DeviceRequest convertDeviceRequest(org.hl7.fhir.r4.model.DeviceRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DeviceRequest tgt = new org.hl7.fhir.dstu3.model.DeviceRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPriorRequest()) - tgt.addPriorRequest(convertReference(t)); - if (src.hasGroupIdentifier()) - tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertDeviceRequestStatus(src.getStatus())); - if (src.hasIntent()) - tgt.setIntent(convertCodeableConcept(src.getIntent())); - if (src.hasPriority()) - tgt.setPriority(convertRequestPriority(src.getPriority())); - if (src.hasCode()) - tgt.setCode(convertType(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasRequester()) - tgt.setRequester(convertDeviceRequestRequesterComponent(src.getRequester())); - if (src.hasPerformerType()) - tgt.setPerformerType(convertCodeableConcept(src.getPerformerType())); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInfo()) - tgt.addSupportingInfo(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getRelevantHistory()) - tgt.addRelevantHistory(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus convertDeviceRequestStatus(org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus convertDeviceRequestStatus(org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.DeviceRequest.RequestPriority convertRequestPriority(org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.r4.model.DeviceRequest.RequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.r4.model.DeviceRequest.RequestPriority.URGENT; - case ASAP: return org.hl7.fhir.r4.model.DeviceRequest.RequestPriority.ASAP; - case STAT: return org.hl7.fhir.r4.model.DeviceRequest.RequestPriority.STAT; - default: return org.hl7.fhir.r4.model.DeviceRequest.RequestPriority.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority convertRequestPriority(org.hl7.fhir.r4.model.DeviceRequest.RequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority.URGENT; - case ASAP: return org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority.ASAP; - case STAT: return org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority.STAT; - default: return org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority.NULL; - } -} - - public static org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestRequesterComponent convertDeviceRequestRequesterComponent(org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestRequesterComponent convertDeviceRequestRequesterComponent(org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestRequesterComponent tgt = new org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.r4.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.dstu3.model.DeviceUseStatement src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DeviceUseStatement tgt = new org.hl7.fhir.r4.model.DeviceUseStatement(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertDeviceUseStatementStatus(src.getStatus())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasWhenUsed()) - tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - if (src.hasRecordedOn()) - tgt.setRecordedOn(src.getRecordedOn()); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - if (src.hasDevice()) - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getIndication()) - tgt.addIndication(convertCodeableConcept(t)); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.r4.model.DeviceUseStatement src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DeviceUseStatement tgt = new org.hl7.fhir.dstu3.model.DeviceUseStatement(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertDeviceUseStatementStatus(src.getStatus())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasWhenUsed()) - tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - if (src.hasRecordedOn()) - tgt.setRecordedOn(src.getRecordedOn()); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - if (src.hasDevice()) - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getIndication()) - tgt.addIndication(convertCodeableConcept(t)); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus convertDeviceUseStatementStatus(org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.ENTEREDINERROR; - case INTENDED: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.INTENDED; - case STOPPED: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.STOPPED; - case ONHOLD: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.ONHOLD; - default: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus convertDeviceUseStatementStatus(org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.ENTEREDINERROR; - case INTENDED: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.INTENDED; - case STOPPED: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.STOPPED; - case ONHOLD: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.ONHOLD; - default: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.dstu3.model.DiagnosticReport src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DiagnosticReport tgt = new org.hl7.fhir.r4.model.DiagnosticReport(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasEffective()) - tgt.setEffective(convertType(src.getEffective())); - if (src.hasIssued()) - tgt.setIssued(src.getIssued()); -// for (org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportPerformerComponent t : src.getPerformer()) -// tgt.addPerformer(convertDiagnosticReportPerformerComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSpecimen()) - tgt.addSpecimen(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getResult()) - tgt.addResult(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getImagingStudy()) - tgt.addImagingStudy(convertReference(t)); - for (org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) - tgt.addImage(convertDiagnosticReportImageComponent(t)); - if (src.hasConclusion()) - tgt.setConclusion(src.getConclusion()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCodedDiagnosis()) - tgt.addCodedDiagnosis(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getPresentedForm()) - tgt.addPresentedForm(convertAttachment(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.r4.model.DiagnosticReport src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DiagnosticReport tgt = new org.hl7.fhir.dstu3.model.DiagnosticReport(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasEffective()) - tgt.setEffective(convertType(src.getEffective())); - if (src.hasIssued()) - tgt.setIssued(src.getIssued()); -// for (org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportPerformerComponent t : src.getPerformer()) -// tgt.addPerformer(convertDiagnosticReportPerformerComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getSpecimen()) - tgt.addSpecimen(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getResult()) - tgt.addResult(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getImagingStudy()) - tgt.addImagingStudy(convertReference(t)); - for (org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) - tgt.addImage(convertDiagnosticReportImageComponent(t)); - if (src.hasConclusion()) - tgt.setConclusion(src.getConclusion()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCodedDiagnosis()) - tgt.addCodedDiagnosis(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Attachment t : src.getPresentedForm()) - tgt.addPresentedForm(convertAttachment(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; - case PARTIAL: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; - case PRELIMINARY: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.FINAL; - case AMENDED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.AMENDED; - case CORRECTED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; - case APPENDED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; - case CANCELLED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; - case PARTIAL: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; - case PRELIMINARY: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.FINAL; - case AMENDED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.AMENDED; - case CORRECTED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; - case APPENDED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; - case CANCELLED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.NULL; - } -} - -// public static org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportPerformerComponent convertDiagnosticReportPerformerComponent(org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportPerformerComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportPerformerComponent tgt = new org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportPerformerComponent(); -// copyElement(src, tgt); -// if (src.hasRole()) -// tgt.setRole(convertCodeableConcept(src.getRole())); -// if (src.hasActor()) -// tgt.setActor(convertReference(src.getActor())); -// return tgt; -// } -// -// public static org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportPerformerComponent convertDiagnosticReportPerformerComponent(org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportPerformerComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportPerformerComponent tgt = new org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportPerformerComponent(); -// copyElement(src, tgt); -// if (src.hasRole()) -// tgt.setRole(convertCodeableConcept(src.getRole())); -// if (src.hasActor()) -// tgt.setActor(convertReference(src.getActor())); -// return tgt; -// } -// - public static org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent(); - copyElement(src, tgt); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasLink()) - tgt.setLink(convertReference(src.getLink())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent(); - copyElement(src, tgt); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasLink()) - tgt.setLink(convertReference(src.getLink())); - return tgt; - } - - public static org.hl7.fhir.r4.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.dstu3.model.DocumentManifest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DocumentManifest tgt = new org.hl7.fhir.r4.model.DocumentManifest(); - copyDomainResource(src, tgt); - if (src.hasMasterIdentifier()) - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - if (src.hasSource()) - tgt.setSource(src.getSource()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) - tgt.addContent(convertDocumentManifestContentComponent(t)); - for (org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentManifestRelatedComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.r4.model.DocumentManifest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DocumentManifest tgt = new org.hl7.fhir.dstu3.model.DocumentManifest(); - copyDomainResource(src, tgt); - if (src.hasMasterIdentifier()) - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - if (src.hasSource()) - tgt.setSource(src.getSource()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) - tgt.addContent(convertDocumentManifestContentComponent(t)); - for (org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentManifestRelatedComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.CURRENT; - case SUPERSEDED: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.CURRENT; - case SUPERSEDED: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent(); - copyElement(src, tgt); - if (src.hasP()) - tgt.setP(convertType(src.getP())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent(); - copyElement(src, tgt); - if (src.hasP()) - tgt.setP(convertType(src.getP())); - return tgt; - } - - public static org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasRef()) - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasRef()) - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - public static org.hl7.fhir.r4.model.DocumentReference convertDocumentReference(org.hl7.fhir.dstu3.model.DocumentReference src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DocumentReference tgt = new org.hl7.fhir.r4.model.DocumentReference(); - copyDomainResource(src, tgt); - if (src.hasMasterIdentifier()) - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - if (src.hasDocStatus()) - tgt.setDocStatus(convertReferredDocumentStatus(src.getDocStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasClass_()) - tgt.setClass_(convertCodeableConcept(src.getClass_())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasIndexed()) - tgt.setIndexed(src.getIndexed()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - if (src.hasAuthenticator()) - tgt.setAuthenticator(convertReference(src.getAuthenticator())); - if (src.hasCustodian()) - tgt.setCustodian(convertReference(src.getCustodian())); - for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) - tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) - tgt.addContent(convertDocumentReferenceContentComponent(t)); - if (src.hasContext()) - tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DocumentReference convertDocumentReference(org.hl7.fhir.r4.model.DocumentReference src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DocumentReference tgt = new org.hl7.fhir.dstu3.model.DocumentReference(); - copyDomainResource(src, tgt); - if (src.hasMasterIdentifier()) - tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); - if (src.hasDocStatus()) - tgt.setDocStatus(convertReferredDocumentStatus(src.getDocStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasClass_()) - tgt.setClass_(convertCodeableConcept(src.getClass_())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasIndexed()) - tgt.setIndexed(src.getIndexed()); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) - tgt.addAuthor(convertReference(t)); - if (src.hasAuthenticator()) - tgt.setAuthenticator(convertReference(src.getAuthenticator())); - if (src.hasCustodian()) - tgt.setCustodian(convertReference(src.getCustodian())); - for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) - tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSecurityLabel()) - tgt.addSecurityLabel(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) - tgt.addContent(convertDocumentReferenceContentComponent(t)); - if (src.hasContext()) - tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); - return tgt; - } - - private static org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus convertReferredDocumentStatus(org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRELIMINARY: return org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus.FINAL; - case AMENDED: return org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus.AMENDED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus convertReferredDocumentStatus(org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRELIMINARY: return org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus.FINAL; - case AMENDED: return org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus.AMENDED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertDocumentRelationshipType(src.getCode())); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertDocumentRelationshipType(src.getCode())); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - private static org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACES: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.REPLACES; - case TRANSFORMS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; - case SIGNS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.SIGNS; - case APPENDS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.APPENDS; - default: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACES: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.REPLACES; - case TRANSFORMS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; - case SIGNS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.SIGNS; - case APPENDS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.APPENDS; - default: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.NULL; - } -} - - - public static org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent(); - copyElement(src, tgt); - if (src.hasAttachment()) - tgt.setAttachment(convertAttachment(src.getAttachment())); - if (src.hasFormat()) - tgt.setFormat(convertCoding(src.getFormat())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent(); - copyElement(src, tgt); - if (src.hasAttachment()) - tgt.setAttachment(convertAttachment(src.getAttachment())); - if (src.hasFormat()) - tgt.setFormat(convertCoding(src.getFormat())); - return tgt; - } - - public static org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent(); - copyElement(src, tgt); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getEvent()) - tgt.addEvent(convertCodeableConcept(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasFacilityType()) - tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); - if (src.hasPracticeSetting()) - tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); - if (src.hasSourcePatientInfo()) - tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); - for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent(); - copyElement(src, tgt); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getEvent()) - tgt.addEvent(convertCodeableConcept(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasFacilityType()) - tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); - if (src.hasPracticeSetting()) - tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); - if (src.hasSourcePatientInfo()) - tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); - for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) - tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasRef()) - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasRef()) - tgt.setRef(convertReference(src.getRef())); - return tgt; - } - - public static org.hl7.fhir.r4.model.EligibilityRequest convertEligibilityRequest(org.hl7.fhir.dstu3.model.EligibilityRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EligibilityRequest tgt = new org.hl7.fhir.r4.model.EligibilityRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEligibilityRequestStatus(src.getStatus())); - if (src.hasPriority()) - tgt.setPriority(convertCodeableConcept(src.getPriority())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasServiced()) - tgt.setServiced(convertType(src.getServiced())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasEnterer()) - tgt.setEnterer(convertReference(src.getEnterer())); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasFacility()) - tgt.setFacility(convertReference(src.getFacility())); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - if (src.hasBusinessArrangement()) - tgt.setBusinessArrangement(src.getBusinessArrangement()); - if (src.hasBenefitCategory()) - tgt.setBenefitCategory(convertCodeableConcept(src.getBenefitCategory())); - if (src.hasBenefitSubCategory()) - tgt.setBenefitSubCategory(convertCodeableConcept(src.getBenefitSubCategory())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EligibilityRequest convertEligibilityRequest(org.hl7.fhir.r4.model.EligibilityRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EligibilityRequest tgt = new org.hl7.fhir.dstu3.model.EligibilityRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEligibilityRequestStatus(src.getStatus())); - if (src.hasPriority()) - tgt.setPriority(convertCodeableConcept(src.getPriority())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasServiced()) - tgt.setServiced(convertType(src.getServiced())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasEnterer()) - tgt.setEnterer(convertReference(src.getEnterer())); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasFacility()) - tgt.setFacility(convertReference(src.getFacility())); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - if (src.hasBusinessArrangement()) - tgt.setBusinessArrangement(src.getBusinessArrangement()); - if (src.hasBenefitCategory()) - tgt.setBenefitCategory(convertCodeableConcept(src.getBenefitCategory())); - if (src.hasBenefitSubCategory()) - tgt.setBenefitSubCategory(convertCodeableConcept(src.getBenefitSubCategory())); - return tgt; - } - - private static org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus convertEligibilityRequestStatus(org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus convertEligibilityRequestStatus(org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.EligibilityResponse convertEligibilityResponse(org.hl7.fhir.dstu3.model.EligibilityResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EligibilityResponse tgt = new org.hl7.fhir.r4.model.EligibilityResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEligibilityResponseStatus(src.getStatus())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasRequestProvider()) - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - if (src.hasRequestOrganization()) - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasInforce()) - tgt.setInforce(src.getInforce()); - for (org.hl7.fhir.dstu3.model.EligibilityResponse.InsuranceComponent t : src.getInsurance()) - tgt.addInsurance(convertInsuranceComponent(t)); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - for (org.hl7.fhir.dstu3.model.EligibilityResponse.ErrorsComponent t : src.getError()) - tgt.addError(convertErrorsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EligibilityResponse convertEligibilityResponse(org.hl7.fhir.r4.model.EligibilityResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EligibilityResponse tgt = new org.hl7.fhir.dstu3.model.EligibilityResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEligibilityResponseStatus(src.getStatus())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasRequestProvider()) - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - if (src.hasRequestOrganization()) - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasInforce()) - tgt.setInforce(src.getInforce()); - for (org.hl7.fhir.r4.model.EligibilityResponse.InsuranceComponent t : src.getInsurance()) - tgt.addInsurance(convertInsuranceComponent(t)); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - for (org.hl7.fhir.r4.model.EligibilityResponse.ErrorsComponent t : src.getError()) - tgt.addError(convertErrorsComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus convertEligibilityResponseStatus(org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus convertEligibilityResponseStatus(org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.EligibilityResponse.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.dstu3.model.EligibilityResponse.InsuranceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EligibilityResponse.InsuranceComponent tgt = new org.hl7.fhir.r4.model.EligibilityResponse.InsuranceComponent(); - copyElement(src, tgt); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - if (src.hasContract()) - tgt.setContract(convertReference(src.getContract())); - for (org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitsComponent t : src.getBenefitBalance()) - tgt.addBenefitBalance(convertBenefitsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EligibilityResponse.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.r4.model.EligibilityResponse.InsuranceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EligibilityResponse.InsuranceComponent tgt = new org.hl7.fhir.dstu3.model.EligibilityResponse.InsuranceComponent(); - copyElement(src, tgt); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - if (src.hasContract()) - tgt.setContract(convertReference(src.getContract())); - for (org.hl7.fhir.r4.model.EligibilityResponse.BenefitsComponent t : src.getBenefitBalance()) - tgt.addBenefitBalance(convertBenefitsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.EligibilityResponse.BenefitsComponent convertBenefitsComponent(org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitsComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EligibilityResponse.BenefitsComponent tgt = new org.hl7.fhir.r4.model.EligibilityResponse.BenefitsComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasSubCategory()) - tgt.setSubCategory(convertCodeableConcept(src.getSubCategory())); - if (src.hasExcluded()) - tgt.setExcluded(src.getExcluded()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasNetwork()) - tgt.setNetwork(convertCodeableConcept(src.getNetwork())); - if (src.hasUnit()) - tgt.setUnit(convertCodeableConcept(src.getUnit())); - if (src.hasTerm()) - tgt.setTerm(convertCodeableConcept(src.getTerm())); - for (org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitComponent t : src.getFinancial()) - tgt.addFinancial(convertBenefitComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitsComponent convertBenefitsComponent(org.hl7.fhir.r4.model.EligibilityResponse.BenefitsComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitsComponent tgt = new org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitsComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasSubCategory()) - tgt.setSubCategory(convertCodeableConcept(src.getSubCategory())); - if (src.hasExcluded()) - tgt.setExcluded(src.getExcluded()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasNetwork()) - tgt.setNetwork(convertCodeableConcept(src.getNetwork())); - if (src.hasUnit()) - tgt.setUnit(convertCodeableConcept(src.getUnit())); - if (src.hasTerm()) - tgt.setTerm(convertCodeableConcept(src.getTerm())); - for (org.hl7.fhir.r4.model.EligibilityResponse.BenefitComponent t : src.getFinancial()) - tgt.addFinancial(convertBenefitComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.EligibilityResponse.BenefitComponent convertBenefitComponent(org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EligibilityResponse.BenefitComponent tgt = new org.hl7.fhir.r4.model.EligibilityResponse.BenefitComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasAllowed()) - tgt.setAllowed(convertType(src.getAllowed())); - if (src.hasUsed()) - tgt.setUsed(convertType(src.getUsed())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitComponent convertBenefitComponent(org.hl7.fhir.r4.model.EligibilityResponse.BenefitComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitComponent tgt = new org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasAllowed()) - tgt.setAllowed(convertType(src.getAllowed())); - if (src.hasUsed()) - tgt.setUsed(convertType(src.getUsed())); - return tgt; - } - - public static org.hl7.fhir.r4.model.EligibilityResponse.ErrorsComponent convertErrorsComponent(org.hl7.fhir.dstu3.model.EligibilityResponse.ErrorsComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EligibilityResponse.ErrorsComponent tgt = new org.hl7.fhir.r4.model.EligibilityResponse.ErrorsComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EligibilityResponse.ErrorsComponent convertErrorsComponent(org.hl7.fhir.r4.model.EligibilityResponse.ErrorsComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EligibilityResponse.ErrorsComponent tgt = new org.hl7.fhir.dstu3.model.EligibilityResponse.ErrorsComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Encounter convertEncounter(org.hl7.fhir.dstu3.model.Encounter src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Encounter tgt = new org.hl7.fhir.r4.model.Encounter(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEncounterStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.Encounter.StatusHistoryComponent t : src.getStatusHistory()) - tgt.addStatusHistory(convertStatusHistoryComponent(t)); - if (src.hasClass_()) - tgt.setClass_(convertCoding(src.getClass_())); - for (org.hl7.fhir.dstu3.model.Encounter.ClassHistoryComponent t : src.getClassHistory()) - tgt.addClassHistory(convertClassHistoryComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasPriority()) - tgt.setPriority(convertCodeableConcept(src.getPriority())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEpisodeOfCare()) - tgt.addEpisodeOfCare(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getIncomingReferral()) - tgt.addIncomingReferral(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertEncounterParticipantComponent(t)); - if (src.hasAppointment()) - tgt.setAppointment(convertReference(src.getAppointment())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasLength()) - tgt.setLength(convertDuration(src.getLength())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Encounter.DiagnosisComponent t : src.getDiagnosis()) - tgt.addDiagnosis(convertDiagnosisComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAccount()) - tgt.addAccount(convertReference(t)); - if (src.hasHospitalization()) - tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); - for (org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent t : src.getLocation()) - tgt.addLocation(convertEncounterLocationComponent(t)); - if (src.hasServiceProvider()) - tgt.setServiceProvider(convertReference(src.getServiceProvider())); - if (src.hasPartOf()) - tgt.setPartOf(convertReference(src.getPartOf())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Encounter convertEncounter(org.hl7.fhir.r4.model.Encounter src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Encounter tgt = new org.hl7.fhir.dstu3.model.Encounter(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEncounterStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.Encounter.StatusHistoryComponent t : src.getStatusHistory()) - tgt.addStatusHistory(convertStatusHistoryComponent(t)); - if (src.hasClass_()) - tgt.setClass_(convertCoding(src.getClass_())); - for (org.hl7.fhir.r4.model.Encounter.ClassHistoryComponent t : src.getClassHistory()) - tgt.addClassHistory(convertClassHistoryComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasPriority()) - tgt.setPriority(convertCodeableConcept(src.getPriority())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.r4.model.Reference t : src.getEpisodeOfCare()) - tgt.addEpisodeOfCare(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getIncomingReferral()) - tgt.addIncomingReferral(convertReference(t)); - for (org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertEncounterParticipantComponent(t)); - if (src.hasAppointment()) - tgt.setAppointment(convertReference(src.getAppointment())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasLength()) - tgt.setLength(convertDuration(src.getLength())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Encounter.DiagnosisComponent t : src.getDiagnosis()) - tgt.addDiagnosis(convertDiagnosisComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getAccount()) - tgt.addAccount(convertReference(t)); - if (src.hasHospitalization()) - tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); - for (org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent t : src.getLocation()) - tgt.addLocation(convertEncounterLocationComponent(t)); - if (src.hasServiceProvider()) - tgt.setServiceProvider(convertReference(src.getServiceProvider())); - if (src.hasPartOf()) - tgt.setPartOf(convertReference(src.getPartOf())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Encounter.EncounterStatus convertEncounterStatus(org.hl7.fhir.dstu3.model.Encounter.EncounterStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.PLANNED; - case ARRIVED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.ARRIVED; - case TRIAGED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.TRIAGED; - case INPROGRESS: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.INPROGRESS; - case ONLEAVE: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.ONLEAVE; - case FINISHED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.FINISHED; - case CANCELLED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Encounter.EncounterStatus convertEncounterStatus(org.hl7.fhir.r4.model.Encounter.EncounterStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.PLANNED; - case ARRIVED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.ARRIVED; - case TRIAGED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.TRIAGED; - case INPROGRESS: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.INPROGRESS; - case ONLEAVE: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.ONLEAVE; - case FINISHED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.FINISHED; - case CANCELLED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Encounter.StatusHistoryComponent convertStatusHistoryComponent(org.hl7.fhir.dstu3.model.Encounter.StatusHistoryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Encounter.StatusHistoryComponent tgt = new org.hl7.fhir.r4.model.Encounter.StatusHistoryComponent(); - copyElement(src, tgt); - if (src.hasStatus()) - tgt.setStatus(convertEncounterStatus(src.getStatus())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Encounter.StatusHistoryComponent convertStatusHistoryComponent(org.hl7.fhir.r4.model.Encounter.StatusHistoryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Encounter.StatusHistoryComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.StatusHistoryComponent(); - copyElement(src, tgt); - if (src.hasStatus()) - tgt.setStatus(convertEncounterStatus(src.getStatus())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Encounter.ClassHistoryComponent convertClassHistoryComponent(org.hl7.fhir.dstu3.model.Encounter.ClassHistoryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Encounter.ClassHistoryComponent tgt = new org.hl7.fhir.r4.model.Encounter.ClassHistoryComponent(); - copyElement(src, tgt); - if (src.hasClass_()) - tgt.setClass_(convertCoding(src.getClass_())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Encounter.ClassHistoryComponent convertClassHistoryComponent(org.hl7.fhir.r4.model.Encounter.ClassHistoryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Encounter.ClassHistoryComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.ClassHistoryComponent(); - copyElement(src, tgt); - if (src.hasClass_()) - tgt.setClass_(convertCoding(src.getClass_())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasIndividual()) - tgt.setIndividual(convertReference(src.getIndividual())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasIndividual()) - tgt.setIndividual(convertReference(src.getIndividual())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Encounter.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.dstu3.model.Encounter.DiagnosisComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Encounter.DiagnosisComponent tgt = new org.hl7.fhir.r4.model.Encounter.DiagnosisComponent(); - copyElement(src, tgt); - if (src.hasCondition()) - tgt.setCondition(convertReference(src.getCondition())); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Encounter.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.r4.model.Encounter.DiagnosisComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Encounter.DiagnosisComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.DiagnosisComponent(); - copyElement(src, tgt); - if (src.hasCondition()) - tgt.setCondition(convertReference(src.getCondition())); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent(); - copyElement(src, tgt); - if (src.hasPreAdmissionIdentifier()) - tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); - if (src.hasOrigin()) - tgt.setOrigin(convertReference(src.getOrigin())); - if (src.hasAdmitSource()) - tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); - if (src.hasReAdmission()) - tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getDietPreference()) - tgt.addDietPreference(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialCourtesy()) - tgt.addSpecialCourtesy(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialArrangement()) - tgt.addSpecialArrangement(convertCodeableConcept(t)); - if (src.hasDestination()) - tgt.setDestination(convertReference(src.getDestination())); - if (src.hasDischargeDisposition()) - tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent(); - copyElement(src, tgt); - if (src.hasPreAdmissionIdentifier()) - tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); - if (src.hasOrigin()) - tgt.setOrigin(convertReference(src.getOrigin())); - if (src.hasAdmitSource()) - tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); - if (src.hasReAdmission()) - tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getDietPreference()) - tgt.addDietPreference(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialCourtesy()) - tgt.addSpecialCourtesy(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialArrangement()) - tgt.addSpecialArrangement(convertCodeableConcept(t)); - if (src.hasDestination()) - tgt.setDestination(convertReference(src.getDestination())); - if (src.hasDischargeDisposition()) - tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent(); - copyElement(src, tgt); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - if (src.hasStatus()) - tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent(); - copyElement(src, tgt); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - if (src.hasStatus()) - tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.PLANNED; - case ACTIVE: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.ACTIVE; - case RESERVED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.RESERVED; - case COMPLETED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.COMPLETED; - default: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.PLANNED; - case ACTIVE: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.ACTIVE; - case RESERVED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.RESERVED; - case COMPLETED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.COMPLETED; - default: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Endpoint convertEndpoint(org.hl7.fhir.dstu3.model.Endpoint src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Endpoint tgt = new org.hl7.fhir.r4.model.Endpoint(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEndpointStatus(src.getStatus())); - if (src.hasConnectionType()) - tgt.setConnectionType(convertCoding(src.getConnectionType())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasManagingOrganization()) - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPayloadType()) - tgt.addPayloadType(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getPayloadMimeType()) - tgt.addPayloadMimeType(t.getValue()); - if (src.hasAddress()) - tgt.setAddress(src.getAddress()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getHeader()) - tgt.addHeader(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Endpoint convertEndpoint(org.hl7.fhir.r4.model.Endpoint src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Endpoint tgt = new org.hl7.fhir.dstu3.model.Endpoint(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEndpointStatus(src.getStatus())); - if (src.hasConnectionType()) - tgt.setConnectionType(convertCoding(src.getConnectionType())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasManagingOrganization()) - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPayloadType()) - tgt.addPayloadType(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeType t : src.getPayloadMimeType()) - tgt.addPayloadMimeType(t.getValue()); - if (src.hasAddress()) - tgt.setAddress(src.getAddress()); - for (org.hl7.fhir.r4.model.StringType t : src.getHeader()) - tgt.addHeader(t.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Endpoint.EndpointStatus convertEndpointStatus(org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.SUSPENDED; - case ERROR: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.ERROR; - case OFF: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.OFF; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.ENTEREDINERROR; - case TEST: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.TEST; - default: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus convertEndpointStatus(org.hl7.fhir.r4.model.Endpoint.EndpointStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.SUSPENDED; - case ERROR: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.ERROR; - case OFF: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.OFF; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.ENTEREDINERROR; - case TEST: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.TEST; - default: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.dstu3.model.EnrollmentRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EnrollmentRequest tgt = new org.hl7.fhir.r4.model.EnrollmentRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEnrollmentRequestStatus(src.getStatus())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasSubject()) - tgt.setCandidate(convertReference(src.getSubject())); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.r4.model.EnrollmentRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EnrollmentRequest tgt = new org.hl7.fhir.dstu3.model.EnrollmentRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEnrollmentRequestStatus(src.getStatus())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasCandidate()) - tgt.setSubject(convertReference(src.getCandidate())); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - return tgt; - } - - private static org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus convertEnrollmentRequestStatus(org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus convertEnrollmentRequestStatus(org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.dstu3.model.EnrollmentResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EnrollmentResponse tgt = new org.hl7.fhir.r4.model.EnrollmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEnrollmentResponseStatus(src.getStatus())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasRequestProvider()) - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - if (src.hasRequestOrganization()) - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.r4.model.EnrollmentResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EnrollmentResponse tgt = new org.hl7.fhir.dstu3.model.EnrollmentResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEnrollmentResponseStatus(src.getStatus())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasRequestProvider()) - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - if (src.hasRequestOrganization()) - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - return tgt; - } - - private static org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus convertEnrollmentResponseStatus(org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus convertEnrollmentResponseStatus(org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.dstu3.model.EpisodeOfCare src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EpisodeOfCare tgt = new org.hl7.fhir.r4.model.EpisodeOfCare(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) - tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.EpisodeOfCare.DiagnosisComponent t : src.getDiagnosis()) - tgt.addDiagnosis(convertDiagnosisComponent(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasManagingOrganization()) - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReferralRequest()) - tgt.addReferralRequest(convertReference(t)); - if (src.hasCareManager()) - tgt.setCareManager(convertReference(src.getCareManager())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getTeam()) - tgt.addTeam(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAccount()) - tgt.addAccount(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.r4.model.EpisodeOfCare src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EpisodeOfCare tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) - tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.EpisodeOfCare.DiagnosisComponent t : src.getDiagnosis()) - tgt.addDiagnosis(convertDiagnosisComponent(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasManagingOrganization()) - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.Reference t : src.getReferralRequest()) - tgt.addReferralRequest(convertReference(t)); - if (src.hasCareManager()) - tgt.setCareManager(convertReference(src.getCareManager())); - for (org.hl7.fhir.r4.model.Reference t : src.getTeam()) - tgt.addTeam(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getAccount()) - tgt.addAccount(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; - case WAITLIST: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; - case ACTIVE: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; - case ONHOLD: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; - case FINISHED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; - case CANCELLED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PLANNED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; - case WAITLIST: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; - case ACTIVE: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; - case ONHOLD: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; - case FINISHED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; - case CANCELLED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); - copyElement(src, tgt); - if (src.hasStatus()) - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); - copyElement(src, tgt); - if (src.hasStatus()) - tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.r4.model.EpisodeOfCare.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.dstu3.model.EpisodeOfCare.DiagnosisComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.EpisodeOfCare.DiagnosisComponent tgt = new org.hl7.fhir.r4.model.EpisodeOfCare.DiagnosisComponent(); - copyElement(src, tgt); - if (src.hasCondition()) - tgt.setCondition(convertReference(src.getCondition())); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.EpisodeOfCare.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.r4.model.EpisodeOfCare.DiagnosisComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.EpisodeOfCare.DiagnosisComponent tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare.DiagnosisComponent(); - copyElement(src, tgt); - if (src.hasCondition()) - tgt.setCondition(convertReference(src.getCondition())); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasRank()) - tgt.setRank(src.getRank()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExpansionProfile convertExpansionProfile(org.hl7.fhir.dstu3.model.ExpansionProfile src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExpansionProfile tgt = new org.hl7.fhir.r4.model.ExpansionProfile(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileFixedVersionComponent t : src.getFixedVersion()) - tgt.addFixedVersion(convertExpansionProfileFixedVersionComponent(t)); - if (src.hasExcludedSystem()) - tgt.setExcludedSystem(convertExpansionProfileExcludedSystemComponent(src.getExcludedSystem())); - if (src.hasIncludeDesignations()) - tgt.setIncludeDesignations(src.getIncludeDesignations()); - if (src.hasDesignation()) - tgt.setDesignation(convertExpansionProfileDesignationComponent(src.getDesignation())); - if (src.hasIncludeDefinition()) - tgt.setIncludeDefinition(src.getIncludeDefinition()); - if (src.hasActiveOnly()) - tgt.setActiveOnly(src.getActiveOnly()); - if (src.hasExcludeNested()) - tgt.setExcludeNested(src.getExcludeNested()); - if (src.hasExcludeNotForUI()) - tgt.setExcludeNotForUI(src.getExcludeNotForUI()); - if (src.hasExcludePostCoordinated()) - tgt.setExcludePostCoordinated(src.getExcludePostCoordinated()); - if (src.hasDisplayLanguage()) - tgt.setDisplayLanguage(src.getDisplayLanguage()); - if (src.hasLimitedExpansion()) - tgt.setLimitedExpansion(src.getLimitedExpansion()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExpansionProfile convertExpansionProfile(org.hl7.fhir.r4.model.ExpansionProfile src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExpansionProfile tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileFixedVersionComponent t : src.getFixedVersion()) - tgt.addFixedVersion(convertExpansionProfileFixedVersionComponent(t)); - if (src.hasExcludedSystem()) - tgt.setExcludedSystem(convertExpansionProfileExcludedSystemComponent(src.getExcludedSystem())); - if (src.hasIncludeDesignations()) - tgt.setIncludeDesignations(src.getIncludeDesignations()); - if (src.hasDesignation()) - tgt.setDesignation(convertExpansionProfileDesignationComponent(src.getDesignation())); - if (src.hasIncludeDefinition()) - tgt.setIncludeDefinition(src.getIncludeDefinition()); - if (src.hasActiveOnly()) - tgt.setActiveOnly(src.getActiveOnly()); - if (src.hasExcludeNested()) - tgt.setExcludeNested(src.getExcludeNested()); - if (src.hasExcludeNotForUI()) - tgt.setExcludeNotForUI(src.getExcludeNotForUI()); - if (src.hasExcludePostCoordinated()) - tgt.setExcludePostCoordinated(src.getExcludePostCoordinated()); - if (src.hasDisplayLanguage()) - tgt.setDisplayLanguage(src.getDisplayLanguage()); - if (src.hasLimitedExpansion()) - tgt.setLimitedExpansion(src.getLimitedExpansion()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileFixedVersionComponent convertExpansionProfileFixedVersionComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileFixedVersionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileFixedVersionComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileFixedVersionComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasMode()) - tgt.setMode(convertSystemVersionProcessingMode(src.getMode())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileFixedVersionComponent convertExpansionProfileFixedVersionComponent(org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileFixedVersionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileFixedVersionComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileFixedVersionComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasMode()) - tgt.setMode(convertSystemVersionProcessingMode(src.getMode())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode convertSystemVersionProcessingMode(org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DEFAULT: return org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode.DEFAULT; - case CHECK: return org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode.CHECK; - case OVERRIDE: return org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode.OVERRIDE; - default: return org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode convertSystemVersionProcessingMode(org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DEFAULT: return org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode.DEFAULT; - case CHECK: return org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode.CHECK; - case OVERRIDE: return org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode.OVERRIDE; - default: return org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent convertExpansionProfileExcludedSystemComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent convertExpansionProfileExcludedSystemComponent(org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileDesignationComponent convertExpansionProfileDesignationComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileDesignationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileDesignationComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileDesignationComponent(); - copyElement(src, tgt); - if (src.hasInclude()) - tgt.setInclude(convertDesignationIncludeComponent(src.getInclude())); - if (src.hasExclude()) - tgt.setExclude(convertDesignationExcludeComponent(src.getExclude())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileDesignationComponent convertExpansionProfileDesignationComponent(org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileDesignationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileDesignationComponent(); - copyElement(src, tgt); - if (src.hasInclude()) - tgt.setInclude(convertDesignationIncludeComponent(src.getInclude())); - if (src.hasExclude()) - tgt.setExclude(convertDesignationExcludeComponent(src.getExclude())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeComponent convertDesignationIncludeComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertDesignationIncludeDesignationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeComponent convertDesignationIncludeComponent(org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertDesignationIncludeDesignationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeDesignationComponent convertDesignationIncludeDesignationComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeDesignationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeDesignationComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasUse()) - tgt.setUse(convertCoding(src.getUse())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeDesignationComponent convertDesignationIncludeDesignationComponent(org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeDesignationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasUse()) - tgt.setUse(convertCoding(src.getUse())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeComponent convertDesignationExcludeComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertDesignationExcludeDesignationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeComponent convertDesignationExcludeComponent(org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertDesignationExcludeDesignationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeDesignationComponent convertDesignationExcludeDesignationComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeDesignationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeDesignationComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasUse()) - tgt.setUse(convertCoding(src.getUse())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeDesignationComponent convertDesignationExcludeDesignationComponent(org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeDesignationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasUse()) - tgt.setUse(convertCoding(src.getUse())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit convertExplanationOfBenefit(org.hl7.fhir.dstu3.model.ExplanationOfBenefit src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertExplanationOfBenefitStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubType()) - tgt.addSubType(convertCodeableConcept(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasBillablePeriod()) - tgt.setBillablePeriod(convertPeriod(src.getBillablePeriod())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasEnterer()) - tgt.setEnterer(convertReference(src.getEnterer())); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasReferral()) - tgt.setReferral(convertReference(src.getReferral())); - if (src.hasFacility()) - tgt.setFacility(convertReference(src.getFacility())); - if (src.hasClaim()) - tgt.setClaim(convertReference(src.getClaim())); - if (src.hasClaimResponse()) - tgt.setClaimResponse(convertReference(src.getClaimResponse())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.RelatedClaimComponent t : src.getRelated()) - tgt.addRelated(convertRelatedClaimComponent(t)); - if (src.hasPrescription()) - tgt.setPrescription(convertReference(src.getPrescription())); - if (src.hasOriginalPrescription()) - tgt.setOriginalPrescription(convertReference(src.getOriginalPrescription())); - if (src.hasPayee()) - tgt.setPayee(convertPayeeComponent(src.getPayee())); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SupportingInformationComponent t : src.getInformation()) - tgt.addInformation(convertSupportingInformationComponent(t)); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.CareTeamComponent t : src.getCareTeam()) - tgt.addCareTeam(convertCareTeamComponent(t)); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DiagnosisComponent t : src.getDiagnosis()) - tgt.addDiagnosis(convertDiagnosisComponent(t)); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ProcedureComponent t : src.getProcedure()) - tgt.addProcedure(convertProcedureComponent(t)); - if (src.hasPrecedence()) - tgt.setPrecedence(src.getPrecedence()); - if (src.hasInsurance()) - tgt.setInsurance(convertInsuranceComponent(src.getInsurance())); - if (src.hasAccident()) - tgt.setAccident(convertAccidentComponent(src.getAccident())); - if (src.hasEmploymentImpacted()) - tgt.setEmploymentImpacted(convertPeriod(src.getEmploymentImpacted())); - if (src.hasHospitalization()) - tgt.setHospitalization(convertPeriod(src.getHospitalization())); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ItemComponent t : src.getItem()) - tgt.addItem(convertItemComponent(t)); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemComponent t : src.getAddItem()) - tgt.addAddItem(convertAddedItemComponent(t)); - if (src.hasTotalCost()) - tgt.setTotalCost(convertMoney(src.getTotalCost())); - if (src.hasUnallocDeductable()) - tgt.setUnallocDeductable(convertMoney(src.getUnallocDeductable())); - if (src.hasTotalBenefit()) - tgt.setTotalBenefit(convertMoney(src.getTotalBenefit())); - if (src.hasPayment()) - tgt.setPayment(convertPaymentComponent(src.getPayment())); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.NoteComponent t : src.getProcessNote()) - tgt.addProcessNote(convertNoteComponent(t)); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitBalanceComponent t : src.getBenefitBalance()) - tgt.addBenefitBalance(convertBenefitBalanceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit convertExplanationOfBenefit(org.hl7.fhir.r4.model.ExplanationOfBenefit src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertExplanationOfBenefitStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubType()) - tgt.addSubType(convertCodeableConcept(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasBillablePeriod()) - tgt.setBillablePeriod(convertPeriod(src.getBillablePeriod())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasEnterer()) - tgt.setEnterer(convertReference(src.getEnterer())); - if (src.hasInsurer()) - tgt.setInsurer(convertReference(src.getInsurer())); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasReferral()) - tgt.setReferral(convertReference(src.getReferral())); - if (src.hasFacility()) - tgt.setFacility(convertReference(src.getFacility())); - if (src.hasClaim()) - tgt.setClaim(convertReference(src.getClaim())); - if (src.hasClaimResponse()) - tgt.setClaimResponse(convertReference(src.getClaimResponse())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.RelatedClaimComponent t : src.getRelated()) - tgt.addRelated(convertRelatedClaimComponent(t)); - if (src.hasPrescription()) - tgt.setPrescription(convertReference(src.getPrescription())); - if (src.hasOriginalPrescription()) - tgt.setOriginalPrescription(convertReference(src.getOriginalPrescription())); - if (src.hasPayee()) - tgt.setPayee(convertPayeeComponent(src.getPayee())); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.SupportingInformationComponent t : src.getInformation()) - tgt.addInformation(convertSupportingInformationComponent(t)); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.CareTeamComponent t : src.getCareTeam()) - tgt.addCareTeam(convertCareTeamComponent(t)); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.DiagnosisComponent t : src.getDiagnosis()) - tgt.addDiagnosis(convertDiagnosisComponent(t)); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.ProcedureComponent t : src.getProcedure()) - tgt.addProcedure(convertProcedureComponent(t)); - if (src.hasPrecedence()) - tgt.setPrecedence(src.getPrecedence()); - if (src.hasInsurance()) - tgt.setInsurance(convertInsuranceComponent(src.getInsurance())); - if (src.hasAccident()) - tgt.setAccident(convertAccidentComponent(src.getAccident())); - if (src.hasEmploymentImpacted()) - tgt.setEmploymentImpacted(convertPeriod(src.getEmploymentImpacted())); - if (src.hasHospitalization()) - tgt.setHospitalization(convertPeriod(src.getHospitalization())); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.ItemComponent t : src.getItem()) - tgt.addItem(convertItemComponent(t)); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemComponent t : src.getAddItem()) - tgt.addAddItem(convertAddedItemComponent(t)); - if (src.hasTotalCost()) - tgt.setTotalCost(convertMoney(src.getTotalCost())); - if (src.hasUnallocDeductable()) - tgt.setUnallocDeductable(convertMoney(src.getUnallocDeductable())); - if (src.hasTotalBenefit()) - tgt.setTotalBenefit(convertMoney(src.getTotalBenefit())); - if (src.hasPayment()) - tgt.setPayment(convertPaymentComponent(src.getPayment())); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.NoteComponent t : src.getProcessNote()) - tgt.addProcessNote(convertNoteComponent(t)); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitBalanceComponent t : src.getBenefitBalance()) - tgt.addBenefitBalance(convertBenefitBalanceComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus convertExplanationOfBenefitStatus(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus convertExplanationOfBenefitStatus(org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.RelatedClaimComponent convertRelatedClaimComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.RelatedClaimComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.RelatedClaimComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.RelatedClaimComponent(); - copyElement(src, tgt); - if (src.hasClaim()) - tgt.setClaim(convertReference(src.getClaim())); - if (src.hasRelationship()) - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - if (src.hasReference()) - tgt.setReference(convertIdentifier(src.getReference())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.RelatedClaimComponent convertRelatedClaimComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.RelatedClaimComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.RelatedClaimComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.RelatedClaimComponent(); - copyElement(src, tgt); - if (src.hasClaim()) - tgt.setClaim(convertReference(src.getClaim())); - if (src.hasRelationship()) - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - if (src.hasReference()) - tgt.setReference(convertIdentifier(src.getReference())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.PayeeComponent convertPayeeComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PayeeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.PayeeComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.PayeeComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasResourceType()) - tgt.setResource(convertCoding(src.getResourceType().getCodingFirstRep())); - if (src.hasParty()) - tgt.setParty(convertReference(src.getParty())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PayeeComponent convertPayeeComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.PayeeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PayeeComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PayeeComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasParty()) - tgt.setParty(convertReference(src.getParty())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.SupportingInformationComponent convertSupportingInformationComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SupportingInformationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.SupportingInformationComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.SupportingInformationComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasReason()) - tgt.setReason(convertCoding(src.getReason())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SupportingInformationComponent convertSupportingInformationComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.SupportingInformationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SupportingInformationComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SupportingInformationComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasReason()) - tgt.setReason(convertCoding(src.getReason())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.CareTeamComponent convertCareTeamComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.CareTeamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.CareTeamComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.CareTeamComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasResponsible()) - tgt.setResponsible(src.getResponsible()); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasQualification()) - tgt.setQualification(convertCodeableConcept(src.getQualification())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.CareTeamComponent convertCareTeamComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.CareTeamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.CareTeamComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.CareTeamComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasResponsible()) - tgt.setResponsible(src.getResponsible()); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasQualification()) - tgt.setQualification(convertCodeableConcept(src.getQualification())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DiagnosisComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.DiagnosisComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.DiagnosisComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasDiagnosis()) - tgt.setDiagnosis(convertType(src.getDiagnosis())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasPackageCode()) - tgt.setPackageCode(convertCodeableConcept(src.getPackageCode())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.DiagnosisComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DiagnosisComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DiagnosisComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasDiagnosis()) - tgt.setDiagnosis(convertType(src.getDiagnosis())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasPackageCode()) - tgt.setPackageCode(convertCodeableConcept(src.getPackageCode())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.ProcedureComponent convertProcedureComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ProcedureComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.ProcedureComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.ProcedureComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasProcedure()) - tgt.setProcedure(convertType(src.getProcedure())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ProcedureComponent convertProcedureComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.ProcedureComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ProcedureComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ProcedureComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasProcedure()) - tgt.setProcedure(convertType(src.getProcedure())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.InsuranceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.InsuranceComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.InsuranceComponent(); - copyElement(src, tgt); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - for (org.hl7.fhir.dstu3.model.StringType t : src.getPreAuthRef()) - tgt.addPreAuthRef(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.InsuranceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.InsuranceComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.InsuranceComponent(); - copyElement(src, tgt); - if (src.hasCoverage()) - tgt.setCoverage(convertReference(src.getCoverage())); - for (org.hl7.fhir.r4.model.StringType t : src.getPreAuthRef()) - tgt.addPreAuthRef(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.AccidentComponent convertAccidentComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AccidentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.AccidentComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.AccidentComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasLocation()) - tgt.setLocation(convertType(src.getLocation())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AccidentComponent convertAccidentComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.AccidentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AccidentComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AccidentComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasLocation()) - tgt.setLocation(convertType(src.getLocation())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.ItemComponent convertItemComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.ItemComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.ItemComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getCareTeamLinkId()) - tgt.addCareTeamLinkId(t.getValue()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getDiagnosisLinkId()) - tgt.addDiagnosisLinkId(t.getValue()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getProcedureLinkId()) - tgt.addProcedureLinkId(t.getValue()); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getInformationLinkId()) - tgt.addInformationLinkId(t.getValue()); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasServiced()) - tgt.setServiced(convertType(src.getServiced())); - if (src.hasLocation()) - tgt.setLocation(convertType(src.getLocation())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubSite()) - tgt.addSubSite(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEncounter()) - tgt.addEncounter(convertReference(t)); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DetailComponent t : src.getDetail()) - tgt.addDetail(convertDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ItemComponent convertItemComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.ItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ItemComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ItemComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getCareTeamLinkId()) - tgt.addCareTeamLinkId(t.getValue()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getDiagnosisLinkId()) - tgt.addDiagnosisLinkId(t.getValue()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getProcedureLinkId()) - tgt.addProcedureLinkId(t.getValue()); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getInformationLinkId()) - tgt.addInformationLinkId(t.getValue()); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasServiced()) - tgt.setServiced(convertType(src.getServiced())); - if (src.hasLocation()) - tgt.setLocation(convertType(src.getLocation())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubSite()) - tgt.addSubSite(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getEncounter()) - tgt.addEncounter(convertReference(t)); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.DetailComponent t : src.getDetail()) - tgt.addDetail(convertDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent convertAdjudicationComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - if (src.hasAmount()) - tgt.setAmount(convertMoney(src.getAmount())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent convertAdjudicationComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - if (src.hasAmount()) - tgt.setAmount(convertMoney(src.getAmount())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.DetailComponent convertDetailComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.DetailComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.DetailComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SubDetailComponent t : src.getSubDetail()) - tgt.addSubDetail(convertSubDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DetailComponent convertDetailComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.DetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DetailComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DetailComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.SubDetailComponent t : src.getSubDetail()) - tgt.addSubDetail(convertSubDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SubDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.SubDetailComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.SubDetailComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.SubDetailComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SubDetailComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SubDetailComponent(); - copyElement(src, tgt); - if (src.hasSequence()) - tgt.setSequence(src.getSequence()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasRevenue()) - tgt.setRevenue(convertCodeableConcept(src.getRevenue())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasService()) - tgt.setService(convertCodeableConcept(src.getService())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) - tgt.addModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) - tgt.addProgramCode(convertCodeableConcept(t)); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasUnitPrice()) - tgt.setUnitPrice(convertMoney(src.getUnitPrice())); - if (src.hasFactor()) - tgt.setFactor(src.getFactor()); - if (src.hasNet()) - tgt.setNet(convertMoney(src.getNet())); - for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) - tgt.addUdi(convertReference(t)); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) - tgt.addNoteNumber(t.getValue()); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) - tgt.addAdjudication(convertAdjudicationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemComponent convertAddedItemComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemComponent(); - copyElement(src, tgt); -// for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getSequenceLinkId()) -// tgt.addSequenceLinkId(t.getValue()); -// if (src.hasRevenue()) -// tgt.setRevenue(convertCodeableConcept(src.getRevenue())); -// if (src.hasCategory()) -// tgt.setCategory(convertCodeableConcept(src.getCategory())); -// if (src.hasService()) -// tgt.setService(convertCodeableConcept(src.getService())); -// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) -// tgt.addModifier(convertCodeableConcept(t)); -// if (src.hasFee()) -// tgt.setFee(convertMoney(src.getFee())); -// for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) -// tgt.addNoteNumber(t.getValue()); -// for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) -// tgt.addAdjudication(convertAdjudicationComponent(t)); -// for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemsDetailComponent t : src.getDetail()) -// tgt.addDetail(convertAddedItemsDetailComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemComponent convertAddedItemComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.PositiveIntType t : src.getSequenceLinkId()) - tgt.addSequenceLinkId(t.getValue()); -// if (src.hasRevenue()) -// tgt.setRevenue(convertCodeableConcept(src.getRevenue())); -// if (src.hasCategory()) -// tgt.setCategory(convertCodeableConcept(src.getCategory())); -// if (src.hasService()) -// tgt.setService(convertCodeableConcept(src.getService())); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) -// tgt.addModifier(convertCodeableConcept(t)); -// if (src.hasFee()) -// tgt.setFee(convertMoney(src.getFee())); -// for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) -// tgt.addNoteNumber(t.getValue()); -// for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) -// tgt.addAdjudication(convertAdjudicationComponent(t)); -// for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemsDetailComponent t : src.getDetail()) -// tgt.addDetail(convertAddedItemsDetailComponent(t)); - return tgt; - } - -// public static org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemsDetailComponent convertAddedItemsDetailComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemsDetailComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemsDetailComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemsDetailComponent(); -// copyElement(src, tgt); -// if (src.hasRevenue()) -// tgt.setRevenue(convertCodeableConcept(src.getRevenue())); -// if (src.hasCategory()) -// tgt.setCategory(convertCodeableConcept(src.getCategory())); -// if (src.hasService()) -// tgt.setService(convertCodeableConcept(src.getService())); -// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) -// tgt.addModifier(convertCodeableConcept(t)); -// if (src.hasFee()) -// tgt.setFee(convertMoney(src.getFee())); -// for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) -// tgt.addNoteNumber(t.getValue()); -// for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) -// tgt.addAdjudication(convertAdjudicationComponent(t)); -// return tgt; -// } - -// public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemsDetailComponent convertAddedItemsDetailComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemsDetailComponent src) throws FHIRException { -// if (src == null) -// return null; -// org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemsDetailComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemsDetailComponent(); -// copyElement(src, tgt); -// if (src.hasRevenue()) -// tgt.setRevenue(convertCodeableConcept(src.getRevenue())); -// if (src.hasCategory()) -// tgt.setCategory(convertCodeableConcept(src.getCategory())); -// if (src.hasService()) -// tgt.setService(convertCodeableConcept(src.getService())); -// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) -// tgt.addModifier(convertCodeableConcept(t)); -// if (src.hasFee()) -// tgt.setFee(convertMoney(src.getFee())); -// for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) -// tgt.addNoteNumber(t.getValue()); -// for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) -// tgt.addAdjudication(convertAdjudicationComponent(t)); -// return tgt; -// } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.PaymentComponent convertPaymentComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PaymentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.PaymentComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.PaymentComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasAdjustment()) - tgt.setAdjustment(convertMoney(src.getAdjustment())); - if (src.hasAdjustmentReason()) - tgt.setAdjustmentReason(convertCodeableConcept(src.getAdjustmentReason())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAmount()) - tgt.setAmount(convertMoney(src.getAmount())); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PaymentComponent convertPaymentComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.PaymentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PaymentComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PaymentComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasAdjustment()) - tgt.setAdjustment(convertMoney(src.getAdjustment())); - if (src.hasAdjustmentReason()) - tgt.setAdjustmentReason(convertCodeableConcept(src.getAdjustmentReason())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAmount()) - tgt.setAmount(convertMoney(src.getAmount())); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.NoteComponent convertNoteComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.NoteComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.NoteComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.NoteComponent(); - copyElement(src, tgt); - if (src.hasNumber()) - tgt.setNumber(src.getNumber()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasLanguage()) - tgt.setLanguage(convertCodeableConcept(src.getLanguage())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.NoteComponent convertNoteComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.NoteComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.NoteComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.NoteComponent(); - copyElement(src, tgt); - if (src.hasNumber()) - tgt.setNumber(src.getNumber()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasLanguage()) - tgt.setLanguage(convertCodeableConcept(src.getLanguage())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitBalanceComponent convertBenefitBalanceComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitBalanceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitBalanceComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitBalanceComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasSubCategory()) - tgt.setSubCategory(convertCodeableConcept(src.getSubCategory())); - if (src.hasExcluded()) - tgt.setExcluded(src.getExcluded()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasNetwork()) - tgt.setNetwork(convertCodeableConcept(src.getNetwork())); - if (src.hasUnit()) - tgt.setUnit(convertCodeableConcept(src.getUnit())); - if (src.hasTerm()) - tgt.setTerm(convertCodeableConcept(src.getTerm())); - for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitComponent t : src.getFinancial()) - tgt.addFinancial(convertBenefitComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitBalanceComponent convertBenefitBalanceComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitBalanceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitBalanceComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitBalanceComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasSubCategory()) - tgt.setSubCategory(convertCodeableConcept(src.getSubCategory())); - if (src.hasExcluded()) - tgt.setExcluded(src.getExcluded()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasNetwork()) - tgt.setNetwork(convertCodeableConcept(src.getNetwork())); - if (src.hasUnit()) - tgt.setUnit(convertCodeableConcept(src.getUnit())); - if (src.hasTerm()) - tgt.setTerm(convertCodeableConcept(src.getTerm())); - for (org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitComponent t : src.getFinancial()) - tgt.addFinancial(convertBenefitComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitComponent convertBenefitComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasAllowed()) - tgt.setAllowed(convertType(src.getAllowed())); - if (src.hasUsed()) - tgt.setUsed(convertType(src.getUsed())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitComponent convertBenefitComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasAllowed()) - tgt.setAllowed(convertType(src.getAllowed())); - if (src.hasUsed()) - tgt.setUsed(convertType(src.getUsed())); - return tgt; - } - - public static org.hl7.fhir.r4.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.dstu3.model.FamilyMemberHistory src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.FamilyMemberHistory tgt = new org.hl7.fhir.r4.model.FamilyMemberHistory(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); - if (src.hasNotDoneReason()) - tgt.setDataAbsentReason(convertCodeableConcept(src.getNotDoneReason())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasRelationship()) - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasBorn()) - tgt.setBorn(convertType(src.getBorn())); - if (src.hasAge()) - tgt.setAge(convertType(src.getAge())); - if (src.hasEstimatedAge()) - tgt.setEstimatedAge(src.getEstimatedAge()); - if (src.hasDeceased()) - tgt.setDeceased(convertType(src.getDeceased())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) - tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.r4.model.FamilyMemberHistory src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.FamilyMemberHistory tgt = new org.hl7.fhir.dstu3.model.FamilyMemberHistory(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); - if (src.hasDataAbsentReason()) - tgt.setNotDoneReason(convertCodeableConcept(src.getDataAbsentReason())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasRelationship()) - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasBorn()) - tgt.setBorn(convertType(src.getBorn())); - if (src.hasAge()) - tgt.setAge(convertType(src.getAge())); - if (src.hasEstimatedAge()) - tgt.setEstimatedAge(src.getEstimatedAge()); - if (src.hasDeceased()) - tgt.setDeceased(convertType(src.getDeceased())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) - tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PARTIAL: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; - case COMPLETED: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; - case HEALTHUNKNOWN: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; - default: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PARTIAL: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; - case COMPLETED: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; - case HEALTHUNKNOWN: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; - default: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MALE: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.MALE; - case FEMALE: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.FEMALE; - case OTHER: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.OTHER; - case UNKNOWN: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.UNKNOWN; - default: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.r4.model.Enumerations.AdministrativeGender src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MALE: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.MALE; - case FEMALE: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.FEMALE; - case OTHER: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.OTHER; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.NULL; - } -} - - public static org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasOnset()) - tgt.setOnset(convertType(src.getOnset())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasOnset()) - tgt.setOnset(convertType(src.getOnset())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Flag convertFlag(org.hl7.fhir.dstu3.model.Flag src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Flag tgt = new org.hl7.fhir.r4.model.Flag(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertFlagStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Flag convertFlag(org.hl7.fhir.r4.model.Flag src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Flag tgt = new org.hl7.fhir.dstu3.model.Flag(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertFlagStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.dstu3.model.Flag.FlagStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Flag.FlagStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.r4.model.Flag.FlagStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Flag.FlagStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Flag.FlagStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.r4.model.Flag.FlagStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Goal convertGoal(org.hl7.fhir.dstu3.model.Goal src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Goal tgt = new org.hl7.fhir.r4.model.Goal(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertGoalStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasPriority()) - tgt.setPriority(convertCodeableConcept(src.getPriority())); - if (src.hasDescription()) - tgt.setDescription(convertCodeableConcept(src.getDescription())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasStart()) - tgt.setStart(convertType(src.getStart())); - if (src.hasTarget()) - tgt.setTarget(convertGoalTargetComponent(src.getTarget())); - if (src.hasStatusDate()) - tgt.setStatusDate(src.getStatusDate()); - if (src.hasStatusReason()) - tgt.setStatusReason(src.getStatusReason()); - if (src.hasExpressedBy()) - tgt.setExpressedBy(convertReference(src.getExpressedBy())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAddresses()) - tgt.addAddresses(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getOutcomeCode()) - tgt.addOutcomeCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getOutcomeReference()) - tgt.addOutcomeReference(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Goal convertGoal(org.hl7.fhir.r4.model.Goal src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Goal tgt = new org.hl7.fhir.dstu3.model.Goal(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertGoalStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasPriority()) - tgt.setPriority(convertCodeableConcept(src.getPriority())); - if (src.hasDescription()) - tgt.setDescription(convertCodeableConcept(src.getDescription())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasStart()) - tgt.setStart(convertType(src.getStart())); - if (src.hasTarget()) - tgt.setTarget(convertGoalTargetComponent(src.getTarget())); - if (src.hasStatusDate()) - tgt.setStatusDate(src.getStatusDate()); - if (src.hasStatusReason()) - tgt.setStatusReason(src.getStatusReason()); - if (src.hasExpressedBy()) - tgt.setExpressedBy(convertReference(src.getExpressedBy())); - for (org.hl7.fhir.r4.model.Reference t : src.getAddresses()) - tgt.addAddresses(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getOutcomeCode()) - tgt.addOutcomeCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getOutcomeReference()) - tgt.addOutcomeReference(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Goal.GoalStatus convertGoalStatus(org.hl7.fhir.dstu3.model.Goal.GoalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.r4.model.Goal.GoalStatus.PROPOSED; - case ACCEPTED: return org.hl7.fhir.r4.model.Goal.GoalStatus.ACCEPTED; - case PLANNED: return org.hl7.fhir.r4.model.Goal.GoalStatus.PLANNED; - case INPROGRESS: return org.hl7.fhir.r4.model.Goal.GoalStatus.INPROGRESS; - case ONTARGET: return org.hl7.fhir.r4.model.Goal.GoalStatus.ONTARGET; - case AHEADOFTARGET: return org.hl7.fhir.r4.model.Goal.GoalStatus.AHEADOFTARGET; - case BEHINDTARGET: return org.hl7.fhir.r4.model.Goal.GoalStatus.BEHINDTARGET; - case SUSTAINING: return org.hl7.fhir.r4.model.Goal.GoalStatus.SUSTAINING; - case ACHIEVED: return org.hl7.fhir.r4.model.Goal.GoalStatus.ACHIEVED; - case ONHOLD: return org.hl7.fhir.r4.model.Goal.GoalStatus.ONHOLD; - case CANCELLED: return org.hl7.fhir.r4.model.Goal.GoalStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Goal.GoalStatus.ENTEREDINERROR; - case REJECTED: return org.hl7.fhir.r4.model.Goal.GoalStatus.REJECTED; - default: return org.hl7.fhir.r4.model.Goal.GoalStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Goal.GoalStatus convertGoalStatus(org.hl7.fhir.r4.model.Goal.GoalStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.PROPOSED; - case ACCEPTED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.ACCEPTED; - case PLANNED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.PLANNED; - case INPROGRESS: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.INPROGRESS; - case ONTARGET: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.ONTARGET; - case AHEADOFTARGET: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.AHEADOFTARGET; - case BEHINDTARGET: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.BEHINDTARGET; - case SUSTAINING: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.SUSTAINING; - case ACHIEVED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.ACHIEVED; - case ONHOLD: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.ONHOLD; - case CANCELLED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.ENTEREDINERROR; - case REJECTED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.REJECTED; - default: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Goal.GoalTargetComponent convertGoalTargetComponent(org.hl7.fhir.dstu3.model.Goal.GoalTargetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Goal.GoalTargetComponent tgt = new org.hl7.fhir.r4.model.Goal.GoalTargetComponent(); - copyElement(src, tgt); - if (src.hasMeasure()) - tgt.setMeasure(convertCodeableConcept(src.getMeasure())); - if (src.hasDetail()) - tgt.setDetail(convertType(src.getDetail())); - if (src.hasDue()) - tgt.setDue(convertType(src.getDue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Goal.GoalTargetComponent convertGoalTargetComponent(org.hl7.fhir.r4.model.Goal.GoalTargetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Goal.GoalTargetComponent tgt = new org.hl7.fhir.dstu3.model.Goal.GoalTargetComponent(); - copyElement(src, tgt); - if (src.hasMeasure()) - tgt.setMeasure(convertCodeableConcept(src.getMeasure())); - if (src.hasDetail()) - tgt.setDetail(convertType(src.getDetail())); - if (src.hasDue()) - tgt.setDue(convertType(src.getDue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.GraphDefinition convertGraphDefinition(org.hl7.fhir.dstu3.model.GraphDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.GraphDefinition tgt = new org.hl7.fhir.r4.model.GraphDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasProfile()) - tgt.setProfile(src.getProfile()); - for (org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent t : src.getLink()) - tgt.addLink(convertGraphDefinitionLinkComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.GraphDefinition convertGraphDefinition(org.hl7.fhir.r4.model.GraphDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.GraphDefinition tgt = new org.hl7.fhir.dstu3.model.GraphDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasProfile()) - tgt.setProfile(src.getProfile()); - for (org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent t : src.getLink()) - tgt.addLink(convertGraphDefinitionLinkComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent convertGraphDefinitionLinkComponent(org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent tgt = new org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent(); - copyElement(src, tgt); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasSliceName()) - tgt.setSliceName(src.getSliceName()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetComponent t : src.getTarget()) - tgt.addTarget(convertGraphDefinitionLinkTargetComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent convertGraphDefinitionLinkComponent(org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent tgt = new org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent(); - copyElement(src, tgt); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasSliceName()) - tgt.setSliceName(src.getSliceName()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetComponent t : src.getTarget()) - tgt.addTarget(convertGraphDefinitionLinkTargetComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetComponent convertGraphDefinitionLinkTargetComponent(org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetComponent tgt = new org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(src.getProfile()); - for (org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent t : src.getCompartment()) - tgt.addCompartment(convertGraphDefinitionLinkTargetCompartmentComponent(t)); - for (org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent t : src.getLink()) - tgt.addLink(convertGraphDefinitionLinkComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetComponent convertGraphDefinitionLinkTargetComponent(org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetComponent tgt = new org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(src.getProfile()); - for (org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent t : src.getCompartment()) - tgt.addCompartment(convertGraphDefinitionLinkTargetCompartmentComponent(t)); - for (org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent t : src.getLink()) - tgt.addLink(convertGraphDefinitionLinkComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent convertGraphDefinitionLinkTargetCompartmentComponent(org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent tgt = new org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCompartmentCode(src.getCode())); - if (src.hasRule()) - tgt.setRule(convertGraphCompartmentRule(src.getRule())); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent convertGraphDefinitionLinkTargetCompartmentComponent(org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent tgt = new org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCompartmentCode(src.getCode())); - if (src.hasRule()) - tgt.setRule(convertGraphCompartmentRule(src.getRule())); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - private static org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode convertCompartmentCode(org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.PATIENT; - case ENCOUNTER: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.ENCOUNTER; - case RELATEDPERSON: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.RELATEDPERSON; - case PRACTITIONER: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.PRACTITIONER; - case DEVICE: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.DEVICE; - default: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode convertCompartmentCode(org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.PATIENT; - case ENCOUNTER: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.ENCOUNTER; - case RELATEDPERSON: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.RELATEDPERSON; - case PRACTITIONER: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.PRACTITIONER; - case DEVICE: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.DEVICE; - default: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.NULL; - } -} - - private static org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule convertGraphCompartmentRule(org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IDENTICAL: return org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule.IDENTICAL; - case MATCHING: return org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule.MATCHING; - case DIFFERENT: return org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule.DIFFERENT; - case CUSTOM: return org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule.CUSTOM; - default: return org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule convertGraphCompartmentRule(org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IDENTICAL: return org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule.IDENTICAL; - case MATCHING: return org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule.MATCHING; - case DIFFERENT: return org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule.DIFFERENT; - case CUSTOM: return org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule.CUSTOM; - default: return org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule.NULL; - } -} - - public static org.hl7.fhir.r4.model.Group convertGroup(org.hl7.fhir.dstu3.model.Group src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Group tgt = new org.hl7.fhir.r4.model.Group(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasType()) - tgt.setType(convertGroupType(src.getType())); - if (src.hasActual()) - tgt.setActual(src.getActual()); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasQuantity()) - tgt.setQuantity(src.getQuantity()); - for (org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) - tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); - for (org.hl7.fhir.dstu3.model.Group.GroupMemberComponent t : src.getMember()) - tgt.addMember(convertGroupMemberComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Group convertGroup(org.hl7.fhir.r4.model.Group src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Group tgt = new org.hl7.fhir.dstu3.model.Group(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasType()) - tgt.setType(convertGroupType(src.getType())); - if (src.hasActual()) - tgt.setActual(src.getActual()); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasQuantity()) - tgt.setQuantity(src.getQuantity()); - for (org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) - tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); - for (org.hl7.fhir.r4.model.Group.GroupMemberComponent t : src.getMember()) - tgt.addMember(convertGroupMemberComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Group.GroupType convertGroupType(org.hl7.fhir.dstu3.model.Group.GroupType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSON: return org.hl7.fhir.r4.model.Group.GroupType.PERSON; - case ANIMAL: return org.hl7.fhir.r4.model.Group.GroupType.ANIMAL; - case PRACTITIONER: return org.hl7.fhir.r4.model.Group.GroupType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.r4.model.Group.GroupType.DEVICE; - case MEDICATION: return org.hl7.fhir.r4.model.Group.GroupType.MEDICATION; - case SUBSTANCE: return org.hl7.fhir.r4.model.Group.GroupType.SUBSTANCE; - default: return org.hl7.fhir.r4.model.Group.GroupType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Group.GroupType convertGroupType(org.hl7.fhir.r4.model.Group.GroupType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PERSON: return org.hl7.fhir.dstu3.model.Group.GroupType.PERSON; - case ANIMAL: return org.hl7.fhir.dstu3.model.Group.GroupType.ANIMAL; - case PRACTITIONER: return org.hl7.fhir.dstu3.model.Group.GroupType.PRACTITIONER; - case DEVICE: return org.hl7.fhir.dstu3.model.Group.GroupType.DEVICE; - case MEDICATION: return org.hl7.fhir.dstu3.model.Group.GroupType.MEDICATION; - case SUBSTANCE: return org.hl7.fhir.dstu3.model.Group.GroupType.SUBSTANCE; - default: return org.hl7.fhir.dstu3.model.Group.GroupType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasExclude()) - tgt.setExclude(src.getExclude()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasExclude()) - tgt.setExclude(src.getExclude()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.dstu3.model.Group.GroupMemberComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.r4.model.Group.GroupMemberComponent(); - copyElement(src, tgt); - if (src.hasEntity()) - tgt.setEntity(convertReference(src.getEntity())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasInactive()) - tgt.setInactive(src.getInactive()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.r4.model.Group.GroupMemberComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.dstu3.model.Group.GroupMemberComponent(); - copyElement(src, tgt); - if (src.hasEntity()) - tgt.setEntity(convertReference(src.getEntity())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasInactive()) - tgt.setInactive(src.getInactive()); - return tgt; - } - - public static org.hl7.fhir.r4.model.GuidanceResponse convertGuidanceResponse(org.hl7.fhir.dstu3.model.GuidanceResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.GuidanceResponse tgt = new org.hl7.fhir.r4.model.GuidanceResponse(); - copyDomainResource(src, tgt); - if (src.hasRequestId()) - tgt.setRequestId(src.getRequestId()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasModule()) - tgt.setModule(convertReference(src.getModule())); - if (src.hasStatus()) - tgt.setStatus(convertGuidanceResponseStatus(src.getStatus())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrenceDateTime()) - tgt.setOccurrenceDateTime(src.getOccurrenceDateTime()); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - if (src.hasReason()) - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEvaluationMessage()) - tgt.addEvaluationMessage(convertReference(t)); - if (src.hasOutputParameters()) - tgt.setOutputParameters(convertReference(src.getOutputParameters())); - if (src.hasResult()) - tgt.setResult(convertReference(src.getResult())); - for (org.hl7.fhir.dstu3.model.DataRequirement t : src.getDataRequirement()) - tgt.addDataRequirement(convertDataRequirement(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.GuidanceResponse convertGuidanceResponse(org.hl7.fhir.r4.model.GuidanceResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.GuidanceResponse tgt = new org.hl7.fhir.dstu3.model.GuidanceResponse(); - copyDomainResource(src, tgt); - if (src.hasRequestId()) - tgt.setRequestId(src.getRequestId()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasModule()) - tgt.setModule(convertReference(src.getModule())); - if (src.hasStatus()) - tgt.setStatus(convertGuidanceResponseStatus(src.getStatus())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrenceDateTime()) - tgt.setOccurrenceDateTime(src.getOccurrenceDateTime()); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - if (src.hasReason()) - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getEvaluationMessage()) - tgt.addEvaluationMessage(convertReference(t)); - if (src.hasOutputParameters()) - tgt.setOutputParameters(convertReference(src.getOutputParameters())); - if (src.hasResult()) - tgt.setResult(convertReference(src.getResult())); - for (org.hl7.fhir.r4.model.DataRequirement t : src.getDataRequirement()) - tgt.addDataRequirement(convertDataRequirement(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus convertGuidanceResponseStatus(org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SUCCESS: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.SUCCESS; - case DATAREQUESTED: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.DATAREQUESTED; - case DATAREQUIRED: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.DATAREQUIRED; - case INPROGRESS: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.INPROGRESS; - case FAILURE: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.FAILURE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus convertGuidanceResponseStatus(org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SUCCESS: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.SUCCESS; - case DATAREQUESTED: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.DATAREQUESTED; - case DATAREQUIRED: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.DATAREQUIRED; - case INPROGRESS: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.INPROGRESS; - case FAILURE: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.FAILURE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.HealthcareService convertHealthcareService(org.hl7.fhir.dstu3.model.HealthcareService src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.HealthcareService tgt = new org.hl7.fhir.r4.model.HealthcareService(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasProvidedBy()) - tgt.setProvidedBy(convertReference(src.getProvidedBy())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getLocation()) - tgt.addLocation(convertReference(t)); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasExtraDetails()) - tgt.setExtraDetails(src.getExtraDetails()); - if (src.hasPhoto()) - tgt.setPhoto(convertAttachment(src.getPhoto())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getCoverageArea()) - tgt.addCoverageArea(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceProvisionCode()) - tgt.addServiceProvisionCode(convertCodeableConcept(t)); - if (src.hasEligibility()) - tgt.setEligibility(convertCodeableConcept(src.getEligibility())); - if (src.hasEligibilityNote()) - tgt.setEligibilityNote(src.getEligibilityNote()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getProgramName()) - tgt.addProgramName(t.getValue()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCharacteristic()) - tgt.addCharacteristic(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReferralMethod()) - tgt.addReferralMethod(convertCodeableConcept(t)); - if (src.hasAppointmentRequired()) - tgt.setAppointmentRequired(src.getAppointmentRequired()); - for (org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) - tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); - for (org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) - tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); - if (src.hasAvailabilityExceptions()) - tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.HealthcareService convertHealthcareService(org.hl7.fhir.r4.model.HealthcareService src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.HealthcareService tgt = new org.hl7.fhir.dstu3.model.HealthcareService(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasProvidedBy()) - tgt.setProvidedBy(convertReference(src.getProvidedBy())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getLocation()) - tgt.addLocation(convertReference(t)); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasExtraDetails()) - tgt.setExtraDetails(src.getExtraDetails()); - if (src.hasPhoto()) - tgt.setPhoto(convertAttachment(src.getPhoto())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getCoverageArea()) - tgt.addCoverageArea(convertReference(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceProvisionCode()) - tgt.addServiceProvisionCode(convertCodeableConcept(t)); - if (src.hasEligibility()) - tgt.setEligibility(convertCodeableConcept(src.getEligibility())); - if (src.hasEligibilityNote()) - tgt.setEligibilityNote(src.getEligibilityNote()); - for (org.hl7.fhir.r4.model.StringType t : src.getProgramName()) - tgt.addProgramName(t.getValue()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCharacteristic()) - tgt.addCharacteristic(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReferralMethod()) - tgt.addReferralMethod(convertCodeableConcept(t)); - if (src.hasAppointmentRequired()) - tgt.setAppointmentRequired(src.getAppointmentRequired()); - for (org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) - tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); - for (org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) - tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); - if (src.hasAvailabilityExceptions()) - tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); - for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getDaysOfWeek()) - tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); - if (src.hasAllDay()) - tgt.setAllDay(src.getAllDay()); - if (src.hasAvailableStartTime()) - tgt.setAvailableStartTime(src.getAvailableStartTime()); - if (src.hasAvailableEndTime()) - tgt.setAvailableEndTime(src.getAvailableEndTime()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Enumeration t : src.getDaysOfWeek()) - tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); - if (src.hasAllDay()) - tgt.setAllDay(src.getAllDay()); - if (src.hasAvailableStartTime()) - tgt.setAvailableStartTime(src.getAvailableStartTime()); - if (src.hasAvailableEndTime()) - tgt.setAvailableEndTime(src.getAvailableEndTime()); - return tgt; - } - - private static org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MON: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.MON; - case TUE: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.TUE; - case WED: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.WED; - case THU: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.THU; - case FRI: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.FRI; - case SAT: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.SAT; - case SUN: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.SUN; - default: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MON: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.MON; - case TUE: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.TUE; - case WED: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.WED; - case THU: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.THU; - case FRI: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.FRI; - case SAT: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.SAT; - case SUN: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.SUN; - default: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.NULL; - } -} - - public static org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasDuring()) - tgt.setDuring(convertPeriod(src.getDuring())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasDuring()) - tgt.setDuring(convertPeriod(src.getDuring())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImagingManifest convertImagingManifest(org.hl7.fhir.dstu3.model.ImagingManifest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImagingManifest tgt = new org.hl7.fhir.r4.model.ImagingManifest(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasAuthoringTime()) - tgt.setAuthoringTime(src.getAuthoringTime()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.ImagingManifest.StudyComponent t : src.getStudy()) - tgt.addStudy(convertStudyComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImagingManifest convertImagingManifest(org.hl7.fhir.r4.model.ImagingManifest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImagingManifest tgt = new org.hl7.fhir.dstu3.model.ImagingManifest(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasAuthoringTime()) - tgt.setAuthoringTime(src.getAuthoringTime()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.ImagingManifest.StudyComponent t : src.getStudy()) - tgt.addStudy(convertStudyComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImagingManifest.StudyComponent convertStudyComponent(org.hl7.fhir.dstu3.model.ImagingManifest.StudyComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImagingManifest.StudyComponent tgt = new org.hl7.fhir.r4.model.ImagingManifest.StudyComponent(); - copyElement(src, tgt); - if (src.hasUid()) - tgt.setUid(src.getUid()); - if (src.hasImagingStudy()) - tgt.setImagingStudy(convertReference(src.getImagingStudy())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - for (org.hl7.fhir.dstu3.model.ImagingManifest.SeriesComponent t : src.getSeries()) - tgt.addSeries(convertSeriesComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImagingManifest.StudyComponent convertStudyComponent(org.hl7.fhir.r4.model.ImagingManifest.StudyComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImagingManifest.StudyComponent tgt = new org.hl7.fhir.dstu3.model.ImagingManifest.StudyComponent(); - copyElement(src, tgt); - if (src.hasUid()) - tgt.setUid(src.getUid()); - if (src.hasImagingStudy()) - tgt.setImagingStudy(convertReference(src.getImagingStudy())); - for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - for (org.hl7.fhir.r4.model.ImagingManifest.SeriesComponent t : src.getSeries()) - tgt.addSeries(convertSeriesComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImagingManifest.SeriesComponent convertSeriesComponent(org.hl7.fhir.dstu3.model.ImagingManifest.SeriesComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImagingManifest.SeriesComponent tgt = new org.hl7.fhir.r4.model.ImagingManifest.SeriesComponent(); - copyElement(src, tgt); - if (src.hasUid()) - tgt.setUid(src.getUid()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - for (org.hl7.fhir.dstu3.model.ImagingManifest.InstanceComponent t : src.getInstance()) - tgt.addInstance(convertInstanceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImagingManifest.SeriesComponent convertSeriesComponent(org.hl7.fhir.r4.model.ImagingManifest.SeriesComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImagingManifest.SeriesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingManifest.SeriesComponent(); - copyElement(src, tgt); - if (src.hasUid()) - tgt.setUid(src.getUid()); - for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - for (org.hl7.fhir.r4.model.ImagingManifest.InstanceComponent t : src.getInstance()) - tgt.addInstance(convertInstanceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImagingManifest.InstanceComponent convertInstanceComponent(org.hl7.fhir.dstu3.model.ImagingManifest.InstanceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImagingManifest.InstanceComponent tgt = new org.hl7.fhir.r4.model.ImagingManifest.InstanceComponent(); - copyElement(src, tgt); - if (src.hasSopClass()) - tgt.setSopClass(src.getSopClass()); - if (src.hasUid()) - tgt.setUid(src.getUid()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImagingManifest.InstanceComponent convertInstanceComponent(org.hl7.fhir.r4.model.ImagingManifest.InstanceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImagingManifest.InstanceComponent tgt = new org.hl7.fhir.dstu3.model.ImagingManifest.InstanceComponent(); - copyElement(src, tgt); - if (src.hasSopClass()) - tgt.setSopClass(src.getSopClass()); - if (src.hasUid()) - tgt.setUid(src.getUid()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImagingStudy convertImagingStudy(org.hl7.fhir.dstu3.model.ImagingStudy src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImagingStudy tgt = new org.hl7.fhir.r4.model.ImagingStudy(); - copyDomainResource(src, tgt); - if (src.hasUid()) - tgt.setUid(src.getUid()); - if (src.hasAccession()) - tgt.setAccession(convertIdentifier(src.getAccession())); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasAvailability()) - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - for (org.hl7.fhir.dstu3.model.Coding t : src.getModalityList()) - tgt.addModalityList(convertCoding(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasStarted()) - tgt.setStarted(src.getStarted()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasReferrer()) - tgt.setReferrer(convertReference(src.getReferrer())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getInterpreter()) - tgt.addInterpreter(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - if (src.hasNumberOfSeries()) - tgt.setNumberOfSeries(src.getNumberOfSeries()); - if (src.hasNumberOfInstances()) - tgt.setNumberOfInstances(src.getNumberOfInstances()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProcedureReference()) - tgt.addProcedureReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProcedureCode()) - tgt.addProcedureCode(convertCodeableConcept(t)); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) - tgt.addSeries(convertImagingStudySeriesComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImagingStudy convertImagingStudy(org.hl7.fhir.r4.model.ImagingStudy src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImagingStudy tgt = new org.hl7.fhir.dstu3.model.ImagingStudy(); - copyDomainResource(src, tgt); - if (src.hasUid()) - tgt.setUid(src.getUid()); - if (src.hasAccession()) - tgt.setAccession(convertIdentifier(src.getAccession())); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasAvailability()) - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - for (org.hl7.fhir.r4.model.Coding t : src.getModalityList()) - tgt.addModalityList(convertCoding(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasStarted()) - tgt.setStarted(src.getStarted()); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasReferrer()) - tgt.setReferrer(convertReference(src.getReferrer())); - for (org.hl7.fhir.r4.model.Reference t : src.getInterpreter()) - tgt.addInterpreter(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - if (src.hasNumberOfSeries()) - tgt.setNumberOfSeries(src.getNumberOfSeries()); - if (src.hasNumberOfInstances()) - tgt.setNumberOfInstances(src.getNumberOfInstances()); - for (org.hl7.fhir.r4.model.Reference t : src.getProcedureReference()) - tgt.addProcedureReference(convertReference(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProcedureCode()) - tgt.addProcedureCode(convertCodeableConcept(t)); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) - tgt.addSeries(convertImagingStudySeriesComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ONLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.ONLINE; - case OFFLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.OFFLINE; - case NEARLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.NEARLINE; - case UNAVAILABLE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; - default: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ONLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.ONLINE; - case OFFLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.OFFLINE; - case NEARLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.NEARLINE; - case UNAVAILABLE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; - default: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.NULL; - } -} - - public static org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent(); - copyElement(src, tgt); - if (src.hasUid()) - tgt.setUid(src.getUid()); - if (src.hasNumber()) - tgt.setNumber(src.getNumber()); - if (src.hasModality()) - tgt.setModality(convertCoding(src.getModality())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasNumberOfInstances()) - tgt.setNumberOfInstances(src.getNumberOfInstances()); - if (src.hasAvailability()) - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - if (src.hasBodySite()) - tgt.setBodySite(convertCoding(src.getBodySite())); - if (src.hasLaterality()) - tgt.setLaterality(convertCoding(src.getLaterality())); - if (src.hasStarted()) - tgt.setStarted(src.getStarted()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - for (org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) - tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent(); - copyElement(src, tgt); - if (src.hasUid()) - tgt.setUid(src.getUid()); - if (src.hasNumber()) - tgt.setNumber(src.getNumber()); - if (src.hasModality()) - tgt.setModality(convertCoding(src.getModality())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasNumberOfInstances()) - tgt.setNumberOfInstances(src.getNumberOfInstances()); - if (src.hasAvailability()) - tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); - for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - if (src.hasBodySite()) - tgt.setBodySite(convertCoding(src.getBodySite())); - if (src.hasLaterality()) - tgt.setLaterality(convertCoding(src.getLaterality())); - if (src.hasStarted()) - tgt.setStarted(src.getStarted()); - for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - for (org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) - tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); - copyElement(src, tgt); - if (src.hasUid()) - tgt.setUid(src.getUid()); - if (src.hasNumber()) - tgt.setNumber(src.getNumber()); - if (src.hasSopClass()) - tgt.setSopClass(src.getSopClass()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); - copyElement(src, tgt); - if (src.hasUid()) - tgt.setUid(src.getUid()); - if (src.hasNumber()) - tgt.setNumber(src.getNumber()); - if (src.hasSopClass()) - tgt.setSopClass(src.getSopClass()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Immunization convertImmunization(org.hl7.fhir.dstu3.model.Immunization src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Immunization tgt = new org.hl7.fhir.r4.model.Immunization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertImmunizationStatus(src.getStatus())); - if (src.hasNotGiven()) - tgt.setNotGiven(src.getNotGiven()); - if (src.hasVaccineCode()) - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPrimarySource()) - tgt.setPrimarySource(src.getPrimarySource()); - if (src.hasReportOrigin()) - tgt.setReportOrigin(convertCodeableConcept(src.getReportOrigin())); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - if (src.hasManufacturer()) - tgt.setManufacturer(convertReference(src.getManufacturer())); - if (src.hasLotNumber()) - tgt.setLotNumber(src.getLotNumber()); - if (src.hasExpirationDate()) - tgt.setExpirationDate(src.getExpirationDate()); - if (src.hasSite()) - tgt.setSite(convertCodeableConcept(src.getSite())); - if (src.hasRoute()) - tgt.setRoute(convertCodeableConcept(src.getRoute())); - if (src.hasDoseQuantity()) - tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); - for (org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent t : src.getPractitioner()) - tgt.addPractitioner(convertImmunizationPractitionerComponent(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - if (src.hasExplanation()) - tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); - for (org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) - tgt.addReaction(convertImmunizationReactionComponent(t)); - for (org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) - tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Immunization convertImmunization(org.hl7.fhir.r4.model.Immunization src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Immunization tgt = new org.hl7.fhir.dstu3.model.Immunization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertImmunizationStatus(src.getStatus())); - if (src.hasNotGiven()) - tgt.setNotGiven(src.getNotGiven()); - if (src.hasVaccineCode()) - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPrimarySource()) - tgt.setPrimarySource(src.getPrimarySource()); - if (src.hasReportOrigin()) - tgt.setReportOrigin(convertCodeableConcept(src.getReportOrigin())); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - if (src.hasManufacturer()) - tgt.setManufacturer(convertReference(src.getManufacturer())); - if (src.hasLotNumber()) - tgt.setLotNumber(src.getLotNumber()); - if (src.hasExpirationDate()) - tgt.setExpirationDate(src.getExpirationDate()); - if (src.hasSite()) - tgt.setSite(convertCodeableConcept(src.getSite())); - if (src.hasRoute()) - tgt.setRoute(convertCodeableConcept(src.getRoute())); - if (src.hasDoseQuantity()) - tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); - for (org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent t : src.getPractitioner()) - tgt.addPractitioner(convertImmunizationPractitionerComponent(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - if (src.hasExplanation()) - tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); - for (org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) - tgt.addReaction(convertImmunizationReactionComponent(t)); - for (org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) - tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Immunization.ImmunizationStatus convertImmunizationStatus(org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPLETED: return org.hl7.fhir.r4.model.Immunization.ImmunizationStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Immunization.ImmunizationStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Immunization.ImmunizationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus convertImmunizationStatus(org.hl7.fhir.r4.model.Immunization.ImmunizationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPLETED: return org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent convertImmunizationPractitionerComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent(); - copyElement(src, tgt); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent convertImmunizationPractitionerComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent(); - copyElement(src, tgt); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotGiven()) - tgt.addReasonNotGiven(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotGiven()) - tgt.addReasonNotGiven(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDetail()) - tgt.setDetail(convertReference(src.getDetail())); - if (src.hasReported()) - tgt.setReported(src.getReported()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasDetail()) - tgt.setDetail(convertReference(src.getDetail())); - if (src.hasReported()) - tgt.setReported(src.getReported()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent(); - copyElement(src, tgt); - if (src.hasDoseSequence()) - tgt.setDoseSequence(src.getDoseSequence()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAuthority()) - tgt.setAuthority(convertReference(src.getAuthority())); - if (src.hasSeries()) - tgt.setSeries(src.getSeries()); - if (src.hasSeriesDoses()) - tgt.setSeriesDoses(src.getSeriesDoses()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTargetDisease()) - tgt.addTargetDisease(convertCodeableConcept(t)); - if (src.hasDoseStatus()) - tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); - if (src.hasDoseStatusReason()) - tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent(); - copyElement(src, tgt); - if (src.hasDoseSequence()) - tgt.setDoseSequence(src.getDoseSequence()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAuthority()) - tgt.setAuthority(convertReference(src.getAuthority())); - if (src.hasSeries()) - tgt.setSeries(src.getSeries()); - if (src.hasSeriesDoses()) - tgt.setSeriesDoses(src.getSeriesDoses()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTargetDisease()) - tgt.addTargetDisease(convertCodeableConcept(t)); - if (src.hasDoseStatus()) - tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); - if (src.hasDoseStatusReason()) - tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.dstu3.model.ImmunizationRecommendation src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImmunizationRecommendation tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - for (org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) - tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.r4.model.ImmunizationRecommendation src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImmunizationRecommendation tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - for (org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) - tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasVaccineCode()) - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - if (src.hasTargetDisease()) - tgt.setTargetDisease(convertCodeableConcept(src.getTargetDisease())); - if (src.hasDoseNumber()) - tgt.setDoseNumber(src.getDoseNumber()); - if (src.hasForecastStatus()) - tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); - for (org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) - tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); - if (src.hasProtocol()) - tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingImmunization()) - tgt.addSupportingImmunization(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingPatientInformation()) - tgt.addSupportingPatientInformation(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); - copyElement(src, tgt); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasVaccineCode()) - tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); - if (src.hasTargetDisease()) - tgt.setTargetDisease(convertCodeableConcept(src.getTargetDisease())); - if (src.hasDoseNumber()) - tgt.setDoseNumber(src.getDoseNumber()); - if (src.hasForecastStatus()) - tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); - for (org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) - tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); - if (src.hasProtocol()) - tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingImmunization()) - tgt.addSupportingImmunization(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingPatientInformation()) - tgt.addSupportingPatientInformation(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); - copyElement(src, tgt); - if (src.hasDoseSequence()) - tgt.setDoseSequence(src.getDoseSequence()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAuthority()) - tgt.setAuthority(convertReference(src.getAuthority())); - if (src.hasSeries()) - tgt.setSeries(src.getSeries()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); - copyElement(src, tgt); - if (src.hasDoseSequence()) - tgt.setDoseSequence(src.getDoseSequence()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAuthority()) - tgt.setAuthority(convertReference(src.getAuthority())); - if (src.hasSeries()) - tgt.setSeries(src.getSeries()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.dstu3.model.ImplementationGuide src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImplementationGuide tgt = new org.hl7.fhir.r4.model.ImplementationGuide(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) - tgt.addDependency(convertImplementationGuideDependencyComponent(t)); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) - tgt.addPackage(convertImplementationGuidePackageComponent(t)); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) - tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); - for (org.hl7.fhir.dstu3.model.UriType t : src.getBinary()) - tgt.addBinary(t.getValue()); - if (src.hasPage()) - tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.r4.model.ImplementationGuide src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) - tgt.addDependency(convertImplementationGuideDependencyComponent(t)); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) - tgt.addPackage(convertImplementationGuidePackageComponent(t)); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) - tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); - for (org.hl7.fhir.r4.model.UriType t : src.getBinary()) - tgt.addBinary(t.getValue()); - if (src.hasPage()) - tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertGuideDependencyType(src.getType())); - if (src.hasUri()) - tgt.setUri(src.getUri()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertGuideDependencyType(src.getType())); - if (src.hasUri()) - tgt.setUri(src.getUri()); - return tgt; - } - - private static org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REFERENCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.REFERENCE; - case INCLUSION: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.INCLUSION; - default: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REFERENCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.REFERENCE; - case INCLUSION: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.INCLUSION; - default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.NULL; - } -} - - public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) - tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) - tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); - copyElement(src, tgt); - if (src.hasExample()) - tgt.setExample(src.getExample()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAcronym()) - tgt.setAcronym(src.getAcronym()); - if (src.hasSource()) - tgt.setSource(convertType(src.getSource())); - if (src.hasExampleFor()) - tgt.setExampleFor(convertReference(src.getExampleFor())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); - copyElement(src, tgt); - if (src.hasExample()) - tgt.setExample(src.getExample()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAcronym()) - tgt.setAcronym(src.getAcronym()); - if (src.hasSource()) - tgt.setSource(convertType(src.getSource())); - if (src.hasExampleFor()) - tgt.setExampleFor(convertReference(src.getExampleFor())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent(); - copyElement(src, tgt); - if (src.hasSource()) - tgt.setSource(src.getSource()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasKind()) - tgt.setKind(convertGuidePageKind(src.getKind())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getType()) - tgt.addType(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getPackage()) - tgt.addPackage(t.getValue()); - if (src.hasFormat()) - tgt.setFormat(src.getFormat()); - for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) - tgt.addPage(convertImplementationGuidePageComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent(); - copyElement(src, tgt); - if (src.hasSource()) - tgt.setSource(src.getSource()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasKind()) - tgt.setKind(convertGuidePageKind(src.getKind())); - for (org.hl7.fhir.r4.model.CodeType t : src.getType()) - tgt.addType(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getPackage()) - tgt.addPackage(t.getValue()); - if (src.hasFormat()) - tgt.setFormat(src.getFormat()); - for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) - tgt.addPage(convertImplementationGuidePageComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PAGE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.PAGE; - case EXAMPLE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.EXAMPLE; - case LIST: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.LIST; - case INCLUDE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.INCLUDE; - case DIRECTORY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DIRECTORY; - case DICTIONARY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DICTIONARY; - case TOC: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.TOC; - case RESOURCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.RESOURCE; - default: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PAGE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.PAGE; - case EXAMPLE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.EXAMPLE; - case LIST: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.LIST; - case INCLUDE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.INCLUDE; - case DIRECTORY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DIRECTORY; - case DICTIONARY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DICTIONARY; - case TOC: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.TOC; - case RESOURCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.RESOURCE; - default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.NULL; - } -} - - public static org.hl7.fhir.r4.model.Library convertLibrary(org.hl7.fhir.dstu3.model.Library src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Library tgt = new org.hl7.fhir.r4.model.Library(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTopic()) - tgt.addTopic(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Contributor t : src.getContributor()) - tgt.addContributor(convertContributor(t)); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.dstu3.model.ParameterDefinition t : src.getParameter()) - tgt.addParameter(convertParameterDefinition(t)); - for (org.hl7.fhir.dstu3.model.DataRequirement t : src.getDataRequirement()) - tgt.addDataRequirement(convertDataRequirement(t)); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getContent()) - tgt.addContent(convertAttachment(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Library convertLibrary(org.hl7.fhir.r4.model.Library src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Library tgt = new org.hl7.fhir.dstu3.model.Library(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTopic()) - tgt.addTopic(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Contributor t : src.getContributor()) - tgt.addContributor(convertContributor(t)); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.r4.model.ParameterDefinition t : src.getParameter()) - tgt.addParameter(convertParameterDefinition(t)); - for (org.hl7.fhir.r4.model.DataRequirement t : src.getDataRequirement()) - tgt.addDataRequirement(convertDataRequirement(t)); - for (org.hl7.fhir.r4.model.Attachment t : src.getContent()) - tgt.addContent(convertAttachment(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Linkage convertLinkage(org.hl7.fhir.dstu3.model.Linkage src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Linkage tgt = new org.hl7.fhir.r4.model.Linkage(); - copyDomainResource(src, tgt); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - for (org.hl7.fhir.dstu3.model.Linkage.LinkageItemComponent t : src.getItem()) - tgt.addItem(convertLinkageItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Linkage convertLinkage(org.hl7.fhir.r4.model.Linkage src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Linkage tgt = new org.hl7.fhir.dstu3.model.Linkage(); - copyDomainResource(src, tgt); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - for (org.hl7.fhir.r4.model.Linkage.LinkageItemComponent t : src.getItem()) - tgt.addItem(convertLinkageItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Linkage.LinkageItemComponent convertLinkageItemComponent(org.hl7.fhir.dstu3.model.Linkage.LinkageItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Linkage.LinkageItemComponent tgt = new org.hl7.fhir.r4.model.Linkage.LinkageItemComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertLinkageType(src.getType())); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Linkage.LinkageItemComponent convertLinkageItemComponent(org.hl7.fhir.r4.model.Linkage.LinkageItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Linkage.LinkageItemComponent tgt = new org.hl7.fhir.dstu3.model.Linkage.LinkageItemComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertLinkageType(src.getType())); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Linkage.LinkageType convertLinkageType(org.hl7.fhir.dstu3.model.Linkage.LinkageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SOURCE: return org.hl7.fhir.r4.model.Linkage.LinkageType.SOURCE; - case ALTERNATE: return org.hl7.fhir.r4.model.Linkage.LinkageType.ALTERNATE; - case HISTORICAL: return org.hl7.fhir.r4.model.Linkage.LinkageType.HISTORICAL; - default: return org.hl7.fhir.r4.model.Linkage.LinkageType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Linkage.LinkageType convertLinkageType(org.hl7.fhir.r4.model.Linkage.LinkageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SOURCE: return org.hl7.fhir.dstu3.model.Linkage.LinkageType.SOURCE; - case ALTERNATE: return org.hl7.fhir.dstu3.model.Linkage.LinkageType.ALTERNATE; - case HISTORICAL: return org.hl7.fhir.dstu3.model.Linkage.LinkageType.HISTORICAL; - default: return org.hl7.fhir.dstu3.model.Linkage.LinkageType.NULL; - } -} - - public static org.hl7.fhir.r4.model.ListResource convertList(org.hl7.fhir.dstu3.model.ListResource src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ListResource tgt = new org.hl7.fhir.r4.model.ListResource(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertListStatus(src.getStatus())); - if (src.hasMode()) - tgt.setMode(convertListMode(src.getMode())); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - if (src.hasOrderedBy()) - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent t : src.getEntry()) - tgt.addEntry(convertListEntryComponent(t)); - if (src.hasEmptyReason()) - tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ListResource convertList(org.hl7.fhir.r4.model.ListResource src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ListResource tgt = new org.hl7.fhir.dstu3.model.ListResource(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertListStatus(src.getStatus())); - if (src.hasMode()) - tgt.setMode(convertListMode(src.getMode())); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - if (src.hasOrderedBy()) - tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.ListResource.ListEntryComponent t : src.getEntry()) - tgt.addEntry(convertListEntryComponent(t)); - if (src.hasEmptyReason()) - tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ListResource.ListStatus convertListStatus(org.hl7.fhir.dstu3.model.ListResource.ListStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.r4.model.ListResource.ListStatus.CURRENT; - case RETIRED: return org.hl7.fhir.r4.model.ListResource.ListStatus.RETIRED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ListResource.ListStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.ListResource.ListStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ListResource.ListStatus convertListStatus(org.hl7.fhir.r4.model.ListResource.ListStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CURRENT: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.CURRENT; - case RETIRED: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.RETIRED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.ListResource.ListMode convertListMode(org.hl7.fhir.dstu3.model.ListResource.ListMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case WORKING: return org.hl7.fhir.r4.model.ListResource.ListMode.WORKING; - case SNAPSHOT: return org.hl7.fhir.r4.model.ListResource.ListMode.SNAPSHOT; - case CHANGES: return org.hl7.fhir.r4.model.ListResource.ListMode.CHANGES; - default: return org.hl7.fhir.r4.model.ListResource.ListMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ListResource.ListMode convertListMode(org.hl7.fhir.r4.model.ListResource.ListMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case WORKING: return org.hl7.fhir.dstu3.model.ListResource.ListMode.WORKING; - case SNAPSHOT: return org.hl7.fhir.dstu3.model.ListResource.ListMode.SNAPSHOT; - case CHANGES: return org.hl7.fhir.dstu3.model.ListResource.ListMode.CHANGES; - default: return org.hl7.fhir.dstu3.model.ListResource.ListMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.ListResource.ListEntryComponent convertListEntryComponent(org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ListResource.ListEntryComponent tgt = new org.hl7.fhir.r4.model.ListResource.ListEntryComponent(); - copyElement(src, tgt); - if (src.hasFlag()) - tgt.setFlag(convertCodeableConcept(src.getFlag())); - if (src.hasDeleted()) - tgt.setDeleted(src.getDeleted()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasItem()) - tgt.setItem(convertReference(src.getItem())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent convertListEntryComponent(org.hl7.fhir.r4.model.ListResource.ListEntryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent tgt = new org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent(); - copyElement(src, tgt); - if (src.hasFlag()) - tgt.setFlag(convertCodeableConcept(src.getFlag())); - if (src.hasDeleted()) - tgt.setDeleted(src.getDeleted()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasItem()) - tgt.setItem(convertReference(src.getItem())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Location convertLocation(org.hl7.fhir.dstu3.model.Location src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Location tgt = new org.hl7.fhir.r4.model.Location(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertLocationStatus(src.getStatus())); - if (src.hasOperationalStatus()) - tgt.setOperationalStatus(convertCoding(src.getOperationalStatus())); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasMode()) - tgt.setMode(convertLocationMode(src.getMode())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasAddress()) - tgt.setAddress(convertAddress(src.getAddress())); - if (src.hasPhysicalType()) - tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); - if (src.hasPosition()) - tgt.setPosition(convertLocationPositionComponent(src.getPosition())); - if (src.hasManagingOrganization()) - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - if (src.hasPartOf()) - tgt.setPartOf(convertReference(src.getPartOf())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Location convertLocation(org.hl7.fhir.r4.model.Location src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Location tgt = new org.hl7.fhir.dstu3.model.Location(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertLocationStatus(src.getStatus())); - if (src.hasOperationalStatus()) - tgt.setOperationalStatus(convertCoding(src.getOperationalStatus())); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasMode()) - tgt.setMode(convertLocationMode(src.getMode())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasAddress()) - tgt.setAddress(convertAddress(src.getAddress())); - if (src.hasPhysicalType()) - tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); - if (src.hasPosition()) - tgt.setPosition(convertLocationPositionComponent(src.getPosition())); - if (src.hasManagingOrganization()) - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - if (src.hasPartOf()) - tgt.setPartOf(convertReference(src.getPartOf())); - for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.dstu3.model.Location.LocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Location.LocationStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.Location.LocationStatus.SUSPENDED; - case INACTIVE: return org.hl7.fhir.r4.model.Location.LocationStatus.INACTIVE; - default: return org.hl7.fhir.r4.model.Location.LocationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.r4.model.Location.LocationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Location.LocationStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.Location.LocationStatus.SUSPENDED; - case INACTIVE: return org.hl7.fhir.dstu3.model.Location.LocationStatus.INACTIVE; - default: return org.hl7.fhir.dstu3.model.Location.LocationStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.Location.LocationMode convertLocationMode(org.hl7.fhir.dstu3.model.Location.LocationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.r4.model.Location.LocationMode.INSTANCE; - case KIND: return org.hl7.fhir.r4.model.Location.LocationMode.KIND; - default: return org.hl7.fhir.r4.model.Location.LocationMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Location.LocationMode convertLocationMode(org.hl7.fhir.r4.model.Location.LocationMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INSTANCE: return org.hl7.fhir.dstu3.model.Location.LocationMode.INSTANCE; - case KIND: return org.hl7.fhir.dstu3.model.Location.LocationMode.KIND; - default: return org.hl7.fhir.dstu3.model.Location.LocationMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.dstu3.model.Location.LocationPositionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.r4.model.Location.LocationPositionComponent(); - copyElement(src, tgt); - if (src.hasLongitude()) - tgt.setLongitude(src.getLongitude()); - if (src.hasLatitude()) - tgt.setLatitude(src.getLatitude()); - if (src.hasAltitude()) - tgt.setAltitude(src.getAltitude()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.r4.model.Location.LocationPositionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.dstu3.model.Location.LocationPositionComponent(); - copyElement(src, tgt); - if (src.hasLongitude()) - tgt.setLongitude(src.getLongitude()); - if (src.hasLatitude()) - tgt.setLatitude(src.getLatitude()); - if (src.hasAltitude()) - tgt.setAltitude(src.getAltitude()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Measure convertMeasure(org.hl7.fhir.dstu3.model.Measure src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Measure tgt = new org.hl7.fhir.r4.model.Measure(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTopic()) - tgt.addTopic(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Contributor t : src.getContributor()) - tgt.addContributor(convertContributor(t)); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getLibrary()) - tgt.addLibrary(convertReference(t)); - if (src.hasDisclaimer()) - tgt.setDisclaimer(src.getDisclaimer()); - if (src.hasScoring()) - tgt.setScoring(convertCodeableConcept(src.getScoring())); - if (src.hasCompositeScoring()) - tgt.setCompositeScoring(convertCodeableConcept(src.getCompositeScoring())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasRiskAdjustment()) - tgt.setRiskAdjustment(src.getRiskAdjustment()); - if (src.hasRateAggregation()) - tgt.setRateAggregation(src.getRateAggregation()); - if (src.hasRationale()) - tgt.setRationale(src.getRationale()); - if (src.hasClinicalRecommendationStatement()) - tgt.setClinicalRecommendationStatement(src.getClinicalRecommendationStatement()); - if (src.hasImprovementNotation()) - tgt.setImprovementNotation(src.getImprovementNotation()); - for (org.hl7.fhir.dstu3.model.MarkdownType t : src.getDefinition()) - tgt.addDefinition(t.getValue()); - if (src.hasGuidance()) - tgt.setGuidance(src.getGuidance()); - if (src.hasSet()) - tgt.setSet(src.getSet()); - for (org.hl7.fhir.dstu3.model.Measure.MeasureGroupComponent t : src.getGroup()) - tgt.addGroup(convertMeasureGroupComponent(t)); - for (org.hl7.fhir.dstu3.model.Measure.MeasureSupplementalDataComponent t : src.getSupplementalData()) - tgt.addSupplementalData(convertMeasureSupplementalDataComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Measure convertMeasure(org.hl7.fhir.r4.model.Measure src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Measure tgt = new org.hl7.fhir.dstu3.model.Measure(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTopic()) - tgt.addTopic(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Contributor t : src.getContributor()) - tgt.addContributor(convertContributor(t)); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getLibrary()) - tgt.addLibrary(convertReference(t)); - if (src.hasDisclaimer()) - tgt.setDisclaimer(src.getDisclaimer()); - if (src.hasScoring()) - tgt.setScoring(convertCodeableConcept(src.getScoring())); - if (src.hasCompositeScoring()) - tgt.setCompositeScoring(convertCodeableConcept(src.getCompositeScoring())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasRiskAdjustment()) - tgt.setRiskAdjustment(src.getRiskAdjustment()); - if (src.hasRateAggregation()) - tgt.setRateAggregation(src.getRateAggregation()); - if (src.hasRationale()) - tgt.setRationale(src.getRationale()); - if (src.hasClinicalRecommendationStatement()) - tgt.setClinicalRecommendationStatement(src.getClinicalRecommendationStatement()); - if (src.hasImprovementNotation()) - tgt.setImprovementNotation(src.getImprovementNotation()); - for (org.hl7.fhir.r4.model.MarkdownType t : src.getDefinition()) - tgt.addDefinition(t.getValue()); - if (src.hasGuidance()) - tgt.setGuidance(src.getGuidance()); - if (src.hasSet()) - tgt.setSet(src.getSet()); - for (org.hl7.fhir.r4.model.Measure.MeasureGroupComponent t : src.getGroup()) - tgt.addGroup(convertMeasureGroupComponent(t)); - for (org.hl7.fhir.r4.model.Measure.MeasureSupplementalDataComponent t : src.getSupplementalData()) - tgt.addSupplementalData(convertMeasureSupplementalDataComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Measure.MeasureGroupComponent convertMeasureGroupComponent(org.hl7.fhir.dstu3.model.Measure.MeasureGroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Measure.MeasureGroupComponent tgt = new org.hl7.fhir.r4.model.Measure.MeasureGroupComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.Measure.MeasureGroupPopulationComponent t : src.getPopulation()) - tgt.addPopulation(convertMeasureGroupPopulationComponent(t)); - for (org.hl7.fhir.dstu3.model.Measure.MeasureGroupStratifierComponent t : src.getStratifier()) - tgt.addStratifier(convertMeasureGroupStratifierComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Measure.MeasureGroupComponent convertMeasureGroupComponent(org.hl7.fhir.r4.model.Measure.MeasureGroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Measure.MeasureGroupComponent tgt = new org.hl7.fhir.dstu3.model.Measure.MeasureGroupComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.Measure.MeasureGroupPopulationComponent t : src.getPopulation()) - tgt.addPopulation(convertMeasureGroupPopulationComponent(t)); - for (org.hl7.fhir.r4.model.Measure.MeasureGroupStratifierComponent t : src.getStratifier()) - tgt.addStratifier(convertMeasureGroupStratifierComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Measure.MeasureGroupPopulationComponent convertMeasureGroupPopulationComponent(org.hl7.fhir.dstu3.model.Measure.MeasureGroupPopulationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Measure.MeasureGroupPopulationComponent tgt = new org.hl7.fhir.r4.model.Measure.MeasureGroupPopulationComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasCriteria()) - tgt.setCriteria(src.getCriteria()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Measure.MeasureGroupPopulationComponent convertMeasureGroupPopulationComponent(org.hl7.fhir.r4.model.Measure.MeasureGroupPopulationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Measure.MeasureGroupPopulationComponent tgt = new org.hl7.fhir.dstu3.model.Measure.MeasureGroupPopulationComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasCriteria()) - tgt.setCriteria(src.getCriteria()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Measure.MeasureGroupStratifierComponent convertMeasureGroupStratifierComponent(org.hl7.fhir.dstu3.model.Measure.MeasureGroupStratifierComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Measure.MeasureGroupStratifierComponent tgt = new org.hl7.fhir.r4.model.Measure.MeasureGroupStratifierComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasCriteria()) - tgt.setCriteria(src.getCriteria()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Measure.MeasureGroupStratifierComponent convertMeasureGroupStratifierComponent(org.hl7.fhir.r4.model.Measure.MeasureGroupStratifierComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Measure.MeasureGroupStratifierComponent tgt = new org.hl7.fhir.dstu3.model.Measure.MeasureGroupStratifierComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasCriteria()) - tgt.setCriteria(src.getCriteria()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Measure.MeasureSupplementalDataComponent convertMeasureSupplementalDataComponent(org.hl7.fhir.dstu3.model.Measure.MeasureSupplementalDataComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Measure.MeasureSupplementalDataComponent tgt = new org.hl7.fhir.r4.model.Measure.MeasureSupplementalDataComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getUsage()) - tgt.addUsage(convertCodeableConcept(t)); - if (src.hasCriteria()) - tgt.setCriteria(src.getCriteria()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Measure.MeasureSupplementalDataComponent convertMeasureSupplementalDataComponent(org.hl7.fhir.r4.model.Measure.MeasureSupplementalDataComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Measure.MeasureSupplementalDataComponent tgt = new org.hl7.fhir.dstu3.model.Measure.MeasureSupplementalDataComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getUsage()) - tgt.addUsage(convertCodeableConcept(t)); - if (src.hasCriteria()) - tgt.setCriteria(src.getCriteria()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - return tgt; - } - - public static org.hl7.fhir.r4.model.MeasureReport convertMeasureReport(org.hl7.fhir.dstu3.model.MeasureReport src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MeasureReport tgt = new org.hl7.fhir.r4.model.MeasureReport(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertMeasureReportStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertMeasureReportType(src.getType())); - if (src.hasMeasure()) - tgt.setMeasure(convertReference(src.getMeasure())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasReportingOrganization()) - tgt.setReportingOrganization(convertReference(src.getReportingOrganization())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupComponent t : src.getGroup()) - tgt.addGroup(convertMeasureReportGroupComponent(t)); - if (src.hasEvaluatedResources()) - tgt.setEvaluatedResources(convertReference(src.getEvaluatedResources())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MeasureReport convertMeasureReport(org.hl7.fhir.r4.model.MeasureReport src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MeasureReport tgt = new org.hl7.fhir.dstu3.model.MeasureReport(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertMeasureReportStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertMeasureReportType(src.getType())); - if (src.hasMeasure()) - tgt.setMeasure(convertReference(src.getMeasure())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasReportingOrganization()) - tgt.setReportingOrganization(convertReference(src.getReportingOrganization())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupComponent t : src.getGroup()) - tgt.addGroup(convertMeasureReportGroupComponent(t)); - if (src.hasEvaluatedResources()) - tgt.setEvaluatedResources(convertReference(src.getEvaluatedResources())); - return tgt; - } - - private static org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus convertMeasureReportStatus(org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPLETE: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus.COMPLETE; - case PENDING: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus.PENDING; - case ERROR: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus.ERROR; - default: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus convertMeasureReportStatus(org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPLETE: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus.COMPLETE; - case PENDING: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus.PENDING; - case ERROR: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus.ERROR; - default: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.MeasureReport.MeasureReportType convertMeasureReportType(org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INDIVIDUAL: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportType.INDIVIDUAL; - case PATIENTLIST: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportType.PATIENTLIST; - case SUMMARY: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportType.SUMMARY; - default: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType convertMeasureReportType(org.hl7.fhir.r4.model.MeasureReport.MeasureReportType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INDIVIDUAL: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType.INDIVIDUAL; - case PATIENTLIST: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType.PATIENTLIST; - case SUMMARY: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType.SUMMARY; - default: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType.NULL; - } -} - - public static org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupComponent convertMeasureReportGroupComponent(org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupComponent tgt = new org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupPopulationComponent t : src.getPopulation()) - tgt.addPopulation(convertMeasureReportGroupPopulationComponent(t)); - if (src.hasMeasureScore()) - tgt.setMeasureScore(src.getMeasureScore()); - for (org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupStratifierComponent t : src.getStratifier()) - tgt.addStratifier(convertMeasureReportGroupStratifierComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupComponent convertMeasureReportGroupComponent(org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupComponent tgt = new org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupPopulationComponent t : src.getPopulation()) - tgt.addPopulation(convertMeasureReportGroupPopulationComponent(t)); - if (src.hasMeasureScore()) - tgt.setMeasureScore(src.getMeasureScore()); - for (org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupStratifierComponent t : src.getStratifier()) - tgt.addStratifier(convertMeasureReportGroupStratifierComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupPopulationComponent convertMeasureReportGroupPopulationComponent(org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupPopulationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupPopulationComponent tgt = new org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupPopulationComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - if (src.hasPatients()) - tgt.setPatients(convertReference(src.getPatients())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupPopulationComponent convertMeasureReportGroupPopulationComponent(org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupPopulationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupPopulationComponent tgt = new org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupPopulationComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - if (src.hasPatients()) - tgt.setPatients(convertReference(src.getPatients())); - return tgt; - } - - public static org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupStratifierComponent convertMeasureReportGroupStratifierComponent(org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupStratifierComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupStratifierComponent tgt = new org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupStratifierComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupComponent t : src.getStratum()) - tgt.addStratum(convertStratifierGroupComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupStratifierComponent convertMeasureReportGroupStratifierComponent(org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupStratifierComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupStratifierComponent tgt = new org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupStratifierComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.r4.model.MeasureReport.StratifierGroupComponent t : src.getStratum()) - tgt.addStratum(convertStratifierGroupComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.MeasureReport.StratifierGroupComponent convertStratifierGroupComponent(org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MeasureReport.StratifierGroupComponent tgt = new org.hl7.fhir.r4.model.MeasureReport.StratifierGroupComponent(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - for (org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupPopulationComponent t : src.getPopulation()) - tgt.addPopulation(convertStratifierGroupPopulationComponent(t)); - if (src.hasMeasureScore()) - tgt.setMeasureScore(src.getMeasureScore()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupComponent convertStratifierGroupComponent(org.hl7.fhir.r4.model.MeasureReport.StratifierGroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupComponent tgt = new org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupComponent(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(src.getValue()); - for (org.hl7.fhir.r4.model.MeasureReport.StratifierGroupPopulationComponent t : src.getPopulation()) - tgt.addPopulation(convertStratifierGroupPopulationComponent(t)); - if (src.hasMeasureScore()) - tgt.setMeasureScore(src.getMeasureScore()); - return tgt; - } - - public static org.hl7.fhir.r4.model.MeasureReport.StratifierGroupPopulationComponent convertStratifierGroupPopulationComponent(org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupPopulationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MeasureReport.StratifierGroupPopulationComponent tgt = new org.hl7.fhir.r4.model.MeasureReport.StratifierGroupPopulationComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - if (src.hasPatients()) - tgt.setPatients(convertReference(src.getPatients())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupPopulationComponent convertStratifierGroupPopulationComponent(org.hl7.fhir.r4.model.MeasureReport.StratifierGroupPopulationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupPopulationComponent tgt = new org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupPopulationComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasCount()) - tgt.setCount(src.getCount()); - if (src.hasPatients()) - tgt.setPatients(convertReference(src.getPatients())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Media convertMedia(org.hl7.fhir.dstu3.model.Media src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Media tgt = new org.hl7.fhir.r4.model.Media(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasType()) - tgt.setType(convertDigitalMediaType(src.getType())); - if (src.hasSubtype()) - tgt.setSubtype(convertCodeableConcept(src.getSubtype())); - if (src.hasView()) - tgt.setView(convertCodeableConcept(src.getView())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasOperator()) - tgt.setOperator(convertReference(src.getOperator())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - if (src.hasDevice()) - tgt.setDevice(convertReference(src.getDevice())); - if (src.hasHeight()) - tgt.setHeight(src.getHeight()); - if (src.hasWidth()) - tgt.setWidth(src.getWidth()); - if (src.hasFrames()) - tgt.setFrames(src.getFrames()); - if (src.hasDuration()) - tgt.setDuration(src.getDuration()); - if (src.hasContent()) - tgt.setContent(convertAttachment(src.getContent())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Media convertMedia(org.hl7.fhir.r4.model.Media src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Media tgt = new org.hl7.fhir.dstu3.model.Media(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasType()) - tgt.setType(convertDigitalMediaType(src.getType())); - if (src.hasSubtype()) - tgt.setSubtype(convertCodeableConcept(src.getSubtype())); - if (src.hasView()) - tgt.setView(convertCodeableConcept(src.getView())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasOperator()) - tgt.setOperator(convertReference(src.getOperator())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - if (src.hasDevice()) - tgt.setDevice(convertReference(src.getDevice())); - if (src.hasHeight()) - tgt.setHeight(src.getHeight()); - if (src.hasWidth()) - tgt.setWidth(src.getWidth()); - if (src.hasFrames()) - tgt.setFrames(src.getFrames()); - if (src.hasDuration()) - tgt.setDuration(src.getDuration()); - if (src.hasContent()) - tgt.setContent(convertAttachment(src.getContent())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.dstu3.model.Media.DigitalMediaType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHOTO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.PHOTO; - case VIDEO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.VIDEO; - case AUDIO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.AUDIO; - default: return org.hl7.fhir.r4.model.Media.DigitalMediaType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.r4.model.Media.DigitalMediaType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PHOTO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.PHOTO; - case VIDEO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.VIDEO; - case AUDIO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.AUDIO; - default: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Medication convertMedication(org.hl7.fhir.dstu3.model.Medication src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Medication tgt = new org.hl7.fhir.r4.model.Medication(); - copyDomainResource(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasStatus()) - tgt.setStatus(convertMedicationStatus(src.getStatus())); - if (src.hasIsBrand()) - tgt.setIsBrand(src.getIsBrand()); - if (src.hasIsOverTheCounter()) - tgt.setIsOverTheCounter(src.getIsOverTheCounter()); - if (src.hasManufacturer()) - tgt.setManufacturer(convertReference(src.getManufacturer())); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - for (org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent t : src.getIngredient()) - tgt.addIngredient(convertMedicationIngredientComponent(t)); - if (src.hasPackage()) - tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getImage()) - tgt.addImage(convertAttachment(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Medication convertMedication(org.hl7.fhir.r4.model.Medication src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Medication tgt = new org.hl7.fhir.dstu3.model.Medication(); - copyDomainResource(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasStatus()) - tgt.setStatus(convertMedicationStatus(src.getStatus())); - if (src.hasIsBrand()) - tgt.setIsBrand(src.getIsBrand()); - if (src.hasIsOverTheCounter()) - tgt.setIsOverTheCounter(src.getIsOverTheCounter()); - if (src.hasManufacturer()) - tgt.setManufacturer(convertReference(src.getManufacturer())); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - for (org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent t : src.getIngredient()) - tgt.addIngredient(convertMedicationIngredientComponent(t)); - if (src.hasPackage()) - tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); - for (org.hl7.fhir.r4.model.Attachment t : src.getImage()) - tgt.addImage(convertAttachment(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Medication.MedicationStatus convertMedicationStatus(org.hl7.fhir.dstu3.model.Medication.MedicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Medication.MedicationStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.r4.model.Medication.MedicationStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Medication.MedicationStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Medication.MedicationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Medication.MedicationStatus convertMedicationStatus(org.hl7.fhir.r4.model.Medication.MedicationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Medication.MedicationStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.dstu3.model.Medication.MedicationStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Medication.MedicationStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Medication.MedicationStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent convertMedicationIngredientComponent(org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent(); - copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); - if (src.hasIsActive()) - tgt.setIsActive(src.getIsActive()); - if (src.hasAmount()) - tgt.setAmount(convertRatio(src.getAmount())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent convertMedicationIngredientComponent(org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent(); - copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); - if (src.hasIsActive()) - tgt.setIsActive(src.getIsActive()); - if (src.hasAmount()) - tgt.setAmount(convertRatio(src.getAmount())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationPackageComponent(); - copyElement(src, tgt); - if (src.hasContainer()) - tgt.setContainer(convertCodeableConcept(src.getContainer())); - for (org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent t : src.getContent()) - tgt.addContent(convertMedicationPackageContentComponent(t)); - for (org.hl7.fhir.dstu3.model.Medication.MedicationPackageBatchComponent t : src.getBatch()) - tgt.addBatch(convertMedicationPackageBatchComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.r4.model.Medication.MedicationPackageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent(); - copyElement(src, tgt); - if (src.hasContainer()) - tgt.setContainer(convertCodeableConcept(src.getContainer())); - for (org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent t : src.getContent()) - tgt.addContent(convertMedicationPackageContentComponent(t)); - for (org.hl7.fhir.r4.model.Medication.MedicationPackageBatchComponent t : src.getBatch()) - tgt.addBatch(convertMedicationPackageBatchComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent(); - copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); - if (src.hasAmount()) - tgt.setAmount(convertSimpleQuantity(src.getAmount())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent(); - copyElement(src, tgt); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); - if (src.hasAmount()) - tgt.setAmount(convertSimpleQuantity(src.getAmount())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Medication.MedicationPackageBatchComponent convertMedicationPackageBatchComponent(org.hl7.fhir.dstu3.model.Medication.MedicationPackageBatchComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Medication.MedicationPackageBatchComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationPackageBatchComponent(); - copyElement(src, tgt); - if (src.hasLotNumber()) - tgt.setLotNumber(src.getLotNumber()); - if (src.hasExpirationDate()) - tgt.setExpirationDate(src.getExpirationDate()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Medication.MedicationPackageBatchComponent convertMedicationPackageBatchComponent(org.hl7.fhir.r4.model.Medication.MedicationPackageBatchComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Medication.MedicationPackageBatchComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationPackageBatchComponent(); - copyElement(src, tgt); - if (src.hasLotNumber()) - tgt.setLotNumber(src.getLotNumber()); - if (src.hasExpirationDate()) - tgt.setExpirationDate(src.getExpirationDate()); - return tgt; - } - - public static org.hl7.fhir.r4.model.MedicationAdministration convertMedicationAdministration(org.hl7.fhir.dstu3.model.MedicationAdministration src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationAdministration tgt = new org.hl7.fhir.r4.model.MedicationAdministration(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertMedicationAdministrationStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInformation(convertReference(t)); - if (src.hasEffective()) - tgt.setEffective(convertType(src.getEffective())); - for (org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationPerformerComponent t : src.getPerformer()) - tgt.addPerformer(convertMedicationAdministrationPerformerComponent(t)); - if (src.hasNotGiven()) - tgt.setNotGiven(src.getNotGiven()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotGiven()) - tgt.addReasonNotGiven(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - if (src.hasPrescription()) - tgt.setRequest(convertReference(src.getPrescription())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDevice()) - tgt.addDevice(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - if (src.hasDosage()) - tgt.setDosage(convertMedicationAdministrationDosageComponent(src.getDosage())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEventHistory()) - tgt.addEventHistory(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationAdministration convertMedicationAdministration(org.hl7.fhir.r4.model.MedicationAdministration src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationAdministration tgt = new org.hl7.fhir.dstu3.model.MedicationAdministration(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertMedicationAdministrationStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInformation(convertReference(t)); - if (src.hasEffective()) - tgt.setEffective(convertType(src.getEffective())); - for (org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent t : src.getPerformer()) - tgt.addPerformer(convertMedicationAdministrationPerformerComponent(t)); - if (src.hasNotGiven()) - tgt.setNotGiven(src.getNotGiven()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotGiven()) - tgt.addReasonNotGiven(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - if (src.hasRequest()) - tgt.setPrescription(convertReference(src.getRequest())); - for (org.hl7.fhir.r4.model.Reference t : src.getDevice()) - tgt.addDevice(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - if (src.hasDosage()) - tgt.setDosage(convertMedicationAdministrationDosageComponent(src.getDosage())); - for (org.hl7.fhir.r4.model.Reference t : src.getEventHistory()) - tgt.addEventHistory(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus convertMedicationAdministrationStatus(org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.STOPPED; - case UNKNOWN: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus convertMedicationAdministrationStatus(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.STOPPED; - case UNKNOWN: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent convertMedicationAdministrationPerformerComponent(org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationPerformerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent tgt = new org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent(); - copyElement(src, tgt); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationPerformerComponent convertMedicationAdministrationPerformerComponent(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationPerformerComponent tgt = new org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationPerformerComponent(); - copyElement(src, tgt); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationDosageComponent convertMedicationAdministrationDosageComponent(org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationDosageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationDosageComponent tgt = new org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationDosageComponent(); - copyElement(src, tgt); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasSite()) - tgt.setSite(convertCodeableConcept(src.getSite())); - if (src.hasRoute()) - tgt.setRoute(convertCodeableConcept(src.getRoute())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasDose()) - tgt.setDose(convertSimpleQuantity(src.getDose())); - if (src.hasRate()) - tgt.setRate(convertType(src.getRate())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationDosageComponent convertMedicationAdministrationDosageComponent(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationDosageComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationDosageComponent tgt = new org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationDosageComponent(); - copyElement(src, tgt); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasSite()) - tgt.setSite(convertCodeableConcept(src.getSite())); - if (src.hasRoute()) - tgt.setRoute(convertCodeableConcept(src.getRoute())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasDose()) - tgt.setDose(convertSimpleQuantity(src.getDose())); - if (src.hasRate()) - tgt.setRate(convertType(src.getRate())); - return tgt; - } - - public static org.hl7.fhir.r4.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.dstu3.model.MedicationDispense src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationDispense tgt = new org.hl7.fhir.r4.model.MedicationDispense(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInformation(convertReference(t)); - for (org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispensePerformerComponent t : src.getPerformer()) - tgt.addPerformer(convertMedicationDispensePerformerComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthorizingPrescription()) - tgt.addAuthorizingPrescription(convertReference(t)); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasDaysSupply()) - tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); - if (src.hasWhenPrepared()) - tgt.setWhenPrepared(src.getWhenPrepared()); - if (src.hasWhenHandedOver()) - tgt.setWhenHandedOver(src.getWhenHandedOver()); - if (src.hasDestination()) - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosageInstruction()) - tgt.addDosageInstruction(convertDosage(t)); - if (src.hasSubstitution()) - tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDetectedIssue()) - tgt.addDetectedIssue(convertReference(t)); - if (src.hasNotDone()) - tgt.setNotDone(src.getNotDone()); - if (src.hasNotDoneReason()) - tgt.setNotDoneReason(convertType(src.getNotDoneReason())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEventHistory()) - tgt.addEventHistory(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.r4.model.MedicationDispense src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationDispense tgt = new org.hl7.fhir.dstu3.model.MedicationDispense(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInformation(convertReference(t)); - for (org.hl7.fhir.r4.model.MedicationDispense.MedicationDispensePerformerComponent t : src.getPerformer()) - tgt.addPerformer(convertMedicationDispensePerformerComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getAuthorizingPrescription()) - tgt.addAuthorizingPrescription(convertReference(t)); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasDaysSupply()) - tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); - if (src.hasWhenPrepared()) - tgt.setWhenPrepared(src.getWhenPrepared()); - if (src.hasWhenHandedOver()) - tgt.setWhenHandedOver(src.getWhenHandedOver()); - if (src.hasDestination()) - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.r4.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.Dosage t : src.getDosageInstruction()) - tgt.addDosageInstruction(convertDosage(t)); - if (src.hasSubstitution()) - tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); - for (org.hl7.fhir.r4.model.Reference t : src.getDetectedIssue()) - tgt.addDetectedIssue(convertReference(t)); - if (src.hasNotDone()) - tgt.setNotDone(src.getNotDone()); - if (src.hasNotDoneReason()) - tgt.setNotDoneReason(convertType(src.getNotDoneReason())); - for (org.hl7.fhir.r4.model.Reference t : src.getEventHistory()) - tgt.addEventHistory(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PREPARATION: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.PREPARATION; - case INPROGRESS: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.STOPPED; - default: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PREPARATION: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.PREPARATION; - case INPROGRESS: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.STOPPED; - default: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.MedicationDispense.MedicationDispensePerformerComponent convertMedicationDispensePerformerComponent(org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispensePerformerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationDispense.MedicationDispensePerformerComponent tgt = new org.hl7.fhir.r4.model.MedicationDispense.MedicationDispensePerformerComponent(); - copyElement(src, tgt); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispensePerformerComponent convertMedicationDispensePerformerComponent(org.hl7.fhir.r4.model.MedicationDispense.MedicationDispensePerformerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispensePerformerComponent tgt = new org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispensePerformerComponent(); - copyElement(src, tgt); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); - copyElement(src, tgt); - if (src.hasWasSubstituted()) - tgt.setWasSubstituted(src.getWasSubstituted()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getResponsibleParty()) - tgt.addResponsibleParty(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); - copyElement(src, tgt); - if (src.hasWasSubstituted()) - tgt.setWasSubstituted(src.getWasSubstituted()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getResponsibleParty()) - tgt.addResponsibleParty(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.MedicationRequest convertMedicationRequest(org.hl7.fhir.dstu3.model.MedicationRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationRequest tgt = new org.hl7.fhir.r4.model.MedicationRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasGroupIdentifier()) - tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertMedicationRequestStatus(src.getStatus())); - if (src.hasIntent()) - tgt.setIntent(convertMedicationRequestIntent(src.getIntent())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasPriority()) - tgt.setPriority(convertMedicationRequestPriority(src.getPriority())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInformation(convertReference(t)); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasRequester()) - tgt.setRequester(convertMedicationRequestRequesterComponent(src.getRequester())); - if (src.hasRecorder()) - tgt.setRecorder(convertReference(src.getRecorder())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosageInstruction()) - tgt.addDosageInstruction(convertDosage(t)); - if (src.hasDispenseRequest()) - tgt.setDispenseRequest(convertMedicationRequestDispenseRequestComponent(src.getDispenseRequest())); - if (src.hasSubstitution()) - tgt.setSubstitution(convertMedicationRequestSubstitutionComponent(src.getSubstitution())); - if (src.hasPriorPrescription()) - tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDetectedIssue()) - tgt.addDetectedIssue(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEventHistory()) - tgt.addEventHistory(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationRequest convertMedicationRequest(org.hl7.fhir.r4.model.MedicationRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationRequest tgt = new org.hl7.fhir.dstu3.model.MedicationRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasGroupIdentifier()) - tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertMedicationRequestStatus(src.getStatus())); - if (src.hasIntent()) - tgt.setIntent(convertMedicationRequestIntent(src.getIntent())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasPriority()) - tgt.setPriority(convertMedicationRequestPriority(src.getPriority())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInformation()) - tgt.addSupportingInformation(convertReference(t)); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasRequester()) - tgt.setRequester(convertMedicationRequestRequesterComponent(src.getRequester())); - if (src.hasRecorder()) - tgt.setRecorder(convertReference(src.getRecorder())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.Dosage t : src.getDosageInstruction()) - tgt.addDosageInstruction(convertDosage(t)); - if (src.hasDispenseRequest()) - tgt.setDispenseRequest(convertMedicationRequestDispenseRequestComponent(src.getDispenseRequest())); - if (src.hasSubstitution()) - tgt.setSubstitution(convertMedicationRequestSubstitutionComponent(src.getSubstitution())); - if (src.hasPriorPrescription()) - tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); - for (org.hl7.fhir.r4.model.Reference t : src.getDetectedIssue()) - tgt.addDetectedIssue(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getEventHistory()) - tgt.addEventHistory(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus convertMedicationRequestStatus(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.ACTIVE; - case ONHOLD: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.ONHOLD; - case CANCELLED: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.STOPPED; - case DRAFT: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.DRAFT; - case UNKNOWN: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus convertMedicationRequestStatus(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.ACTIVE; - case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.ONHOLD; - case CANCELLED: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.STOPPED; - case DRAFT: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.DRAFT; - case UNKNOWN: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent convertMedicationRequestIntent(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSAL: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent.PROPOSAL; - case PLAN: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent.PLAN; - case ORDER: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent.ORDER; - case INSTANCEORDER: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent.INSTANCEORDER; - default: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent convertMedicationRequestIntent(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSAL: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent.PROPOSAL; - case PLAN: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent.PLAN; - case ORDER: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent.ORDER; - case INSTANCEORDER: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent.INSTANCEORDER; - default: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent.NULL; - } -} - - private static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority convertMedicationRequestPriority(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority.URGENT; - case STAT: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority.STAT; - case ASAP: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority.ASAP; - default: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority convertMedicationRequestPriority(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority.URGENT; - case STAT: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority.STAT; - case ASAP: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority.ASAP; - default: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority.NULL; - } -} - - public static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestRequesterComponent convertMedicationRequestRequesterComponent(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestRequesterComponent convertMedicationRequestRequesterComponent(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestRequesterComponent tgt = new org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestDispenseRequestComponent convertMedicationRequestDispenseRequestComponent(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestDispenseRequestComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestDispenseRequestComponent tgt = new org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestDispenseRequestComponent(); - copyElement(src, tgt); - if (src.hasValidityPeriod()) - tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); - if (src.hasNumberOfRepeatsAllowed()) - tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasExpectedSupplyDuration()) - tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestDispenseRequestComponent convertMedicationRequestDispenseRequestComponent(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestDispenseRequestComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestDispenseRequestComponent tgt = new org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestDispenseRequestComponent(); - copyElement(src, tgt); - if (src.hasValidityPeriod()) - tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); - if (src.hasNumberOfRepeatsAllowed()) - tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasExpectedSupplyDuration()) - tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - return tgt; - } - - public static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestSubstitutionComponent convertMedicationRequestSubstitutionComponent(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestSubstitutionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestSubstitutionComponent tgt = new org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestSubstitutionComponent(); - copyElement(src, tgt); - if (src.hasAllowed()) - tgt.setAllowed(src.getAllowed()); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestSubstitutionComponent convertMedicationRequestSubstitutionComponent(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestSubstitutionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestSubstitutionComponent tgt = new org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestSubstitutionComponent(); - copyElement(src, tgt); - if (src.hasAllowed()) - tgt.setAllowed(src.getAllowed()); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - return tgt; - } - - public static org.hl7.fhir.r4.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.dstu3.model.MedicationStatement src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MedicationStatement tgt = new org.hl7.fhir.r4.model.MedicationStatement(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasStatus()) - tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); - if (src.hasEffective()) - tgt.setEffective(convertType(src.getEffective())); - if (src.hasDateAsserted()) - tgt.setDateAsserted(src.getDateAsserted()); - if (src.hasInformationSource()) - tgt.setInformationSource(convertReference(src.getInformationSource())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDerivedFrom()) - tgt.addDerivedFrom(convertReference(t)); - if (src.hasTaken()) - tgt.setTaken(convertMedicationStatementTaken(src.getTaken())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotTaken()) - tgt.addReasonNotTaken(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosage()) - tgt.addDosage(convertDosage(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.r4.model.MedicationStatement src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MedicationStatement tgt = new org.hl7.fhir.dstu3.model.MedicationStatement(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasStatus()) - tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasMedication()) - tgt.setMedication(convertType(src.getMedication())); - if (src.hasEffective()) - tgt.setEffective(convertType(src.getEffective())); - if (src.hasDateAsserted()) - tgt.setDateAsserted(src.getDateAsserted()); - if (src.hasInformationSource()) - tgt.setInformationSource(convertReference(src.getInformationSource())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.r4.model.Reference t : src.getDerivedFrom()) - tgt.addDerivedFrom(convertReference(t)); - if (src.hasTaken()) - tgt.setTaken(convertMedicationStatementTaken(src.getTaken())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotTaken()) - tgt.addReasonNotTaken(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.Dosage t : src.getDosage()) - tgt.addDosage(convertDosage(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; - case INTENDED: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.INTENDED; - case STOPPED: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.STOPPED; - case ONHOLD: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.ONHOLD; - default: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.ACTIVE; - case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; - case INTENDED: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.INTENDED; - case STOPPED: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.STOPPED; - case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.ONHOLD; - default: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken convertMedicationStatementTaken(org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case Y: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken.Y; - case N: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken.N; - case UNK: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken.UNK; - case NA: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken.NA; - default: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken convertMedicationStatementTaken(org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case Y: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken.Y; - case N: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken.N; - case UNK: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken.UNK; - case NA: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken.NA; - default: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken.NULL; - } -} - - public static org.hl7.fhir.r4.model.MessageDefinition convertMessageDefinition(org.hl7.fhir.dstu3.model.MessageDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MessageDefinition tgt = new org.hl7.fhir.r4.model.MessageDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasBase()) - tgt.setBase(convertReference(src.getBase())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getParent()) - tgt.addParent(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - if (src.hasEvent()) - tgt.setEvent(convertCoding(src.getEvent())); - if (src.hasCategory()) - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - for (org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent t : src.getFocus()) - tgt.addFocus(convertMessageDefinitionFocusComponent(t)); - if (src.hasResponseRequired()) - tgt.setResponseRequired(src.getResponseRequired()); - for (org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent t : src.getAllowedResponse()) - tgt.addAllowedResponse(convertMessageDefinitionAllowedResponseComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MessageDefinition convertMessageDefinition(org.hl7.fhir.r4.model.MessageDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MessageDefinition tgt = new org.hl7.fhir.dstu3.model.MessageDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasBase()) - tgt.setBase(convertReference(src.getBase())); - for (org.hl7.fhir.r4.model.Reference t : src.getParent()) - tgt.addParent(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - if (src.hasEvent()) - tgt.setEvent(convertCoding(src.getEvent())); - if (src.hasCategory()) - tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); - for (org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionFocusComponent t : src.getFocus()) - tgt.addFocus(convertMessageDefinitionFocusComponent(t)); - if (src.hasResponseRequired()) - tgt.setResponseRequired(src.getResponseRequired()); - for (org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionAllowedResponseComponent t : src.getAllowedResponse()) - tgt.addAllowedResponse(convertMessageDefinitionAllowedResponseComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CONSEQUENCE: return org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory.CONSEQUENCE; - case CURRENCY: return org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory.CURRENCY; - case NOTIFICATION: return org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory.NOTIFICATION; - default: return org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory.NULL; - } -} - - public static org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionFocusComponent convertMessageDefinitionFocusComponent(org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionFocusComponent tgt = new org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionFocusComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent convertMessageDefinitionFocusComponent(org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionFocusComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent tgt = new org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - return tgt; - } - - public static org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionAllowedResponseComponent convertMessageDefinitionAllowedResponseComponent(org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionAllowedResponseComponent tgt = new org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionAllowedResponseComponent(); - copyElement(src, tgt); - if (src.hasMessage()) - tgt.setMessage(convertReference(src.getMessage())); - if (src.hasSituation()) - tgt.setSituation(src.getSituation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent convertMessageDefinitionAllowedResponseComponent(org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionAllowedResponseComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent tgt = new org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent(); - copyElement(src, tgt); - if (src.hasMessage()) - tgt.setMessage(convertReference(src.getMessage())); - if (src.hasSituation()) - tgt.setSituation(src.getSituation()); - return tgt; - } - - public static org.hl7.fhir.r4.model.MessageHeader convertMessageHeader(org.hl7.fhir.dstu3.model.MessageHeader src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MessageHeader tgt = new org.hl7.fhir.r4.model.MessageHeader(); - copyDomainResource(src, tgt); - if (src.hasEvent()) - tgt.setEvent(convertCoding(src.getEvent())); - for (org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) - tgt.addDestination(convertMessageDestinationComponent(t)); - if (src.hasSender()) - tgt.setSender(convertReference(src.getSender())); - if (src.hasTimestamp()) - tgt.setTimestamp(src.getTimestamp()); - if (src.hasEnterer()) - tgt.setEnterer(convertReference(src.getEnterer())); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasSource()) - tgt.setSource(convertMessageSourceComponent(src.getSource())); - if (src.hasResponsible()) - tgt.setResponsible(convertReference(src.getResponsible())); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - if (src.hasResponse()) - tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getFocus()) - tgt.addFocus(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MessageHeader convertMessageHeader(org.hl7.fhir.r4.model.MessageHeader src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MessageHeader tgt = new org.hl7.fhir.dstu3.model.MessageHeader(); - copyDomainResource(src, tgt); - if (src.hasEvent()) - tgt.setEvent(convertCoding(src.getEvent())); - for (org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) - tgt.addDestination(convertMessageDestinationComponent(t)); - if (src.hasSender()) - tgt.setSender(convertReference(src.getSender())); - if (src.hasTimestamp()) - tgt.setTimestamp(src.getTimestamp()); - if (src.hasEnterer()) - tgt.setEnterer(convertReference(src.getEnterer())); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasSource()) - tgt.setSource(convertMessageSourceComponent(src.getSource())); - if (src.hasResponsible()) - tgt.setResponsible(convertReference(src.getResponsible())); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - if (src.hasResponse()) - tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); - for (org.hl7.fhir.r4.model.Reference t : src.getFocus()) - tgt.addFocus(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - if (src.hasEndpoint()) - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - if (src.hasEndpoint()) - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public static org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasSoftware()) - tgt.setSoftware(src.getSoftware()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasContact()) - tgt.setContact(convertContactPoint(src.getContact())); - if (src.hasEndpoint()) - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasSoftware()) - tgt.setSoftware(src.getSoftware()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasContact()) - tgt.setContact(convertContactPoint(src.getContact())); - if (src.hasEndpoint()) - tgt.setEndpoint(src.getEndpoint()); - return tgt; - } - - public static org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(src.getIdentifier()); - if (src.hasCode()) - tgt.setCode(convertResponseType(src.getCode())); - if (src.hasDetails()) - tgt.setDetails(convertReference(src.getDetails())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(src.getIdentifier()); - if (src.hasCode()) - tgt.setCode(convertResponseType(src.getCode())); - if (src.hasDetails()) - tgt.setDetails(convertReference(src.getDetails())); - return tgt; - } - - private static org.hl7.fhir.r4.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.dstu3.model.MessageHeader.ResponseType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OK: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.OK; - case TRANSIENTERROR: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.TRANSIENTERROR; - case FATALERROR: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.FATALERROR; - default: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.r4.model.MessageHeader.ResponseType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OK: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.OK; - case TRANSIENTERROR: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.TRANSIENTERROR; - case FATALERROR: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.FATALERROR; - default: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.NULL; - } -} - - public static org.hl7.fhir.r4.model.NamingSystem convertNamingSystem(org.hl7.fhir.dstu3.model.NamingSystem src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.NamingSystem tgt = new org.hl7.fhir.r4.model.NamingSystem(); - copyDomainResource(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasKind()) - tgt.setKind(convertNamingSystemType(src.getKind())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasResponsible()) - tgt.setResponsible(src.getResponsible()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - for (org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) - tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); - if (src.hasReplacedBy()) - tgt.setReplacedBy(convertReference(src.getReplacedBy())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.NamingSystem convertNamingSystem(org.hl7.fhir.r4.model.NamingSystem src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.NamingSystem tgt = new org.hl7.fhir.dstu3.model.NamingSystem(); - copyDomainResource(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasKind()) - tgt.setKind(convertNamingSystemType(src.getKind())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasResponsible()) - tgt.setResponsible(src.getResponsible()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - for (org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) - tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); - if (src.hasReplacedBy()) - tgt.setReplacedBy(convertReference(src.getReplacedBy())); - return tgt; - } - - private static org.hl7.fhir.r4.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODESYSTEM: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.CODESYSTEM; - case IDENTIFIER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.IDENTIFIER; - case ROOT: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.ROOT; - default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CODESYSTEM: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.CODESYSTEM; - case IDENTIFIER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.IDENTIFIER; - case ROOT: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.ROOT; - default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.NULL; - } -} - - public static org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertNamingSystemIdentifierType(src.getType())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasPreferred()) - tgt.setPreferred(src.getPreferred()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertNamingSystemIdentifierType(src.getType())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasPreferred()) - tgt.setPreferred(src.getPreferred()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OID; - case UUID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.UUID; - case URI: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.URI; - case OTHER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OTHER; - default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OID; - case UUID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.UUID; - case URI: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.URI; - case OTHER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OTHER; - default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.NULL; - } -} - - public static org.hl7.fhir.r4.model.NutritionOrder convertNutritionOrder(org.hl7.fhir.dstu3.model.NutritionOrder src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.NutritionOrder tgt = new org.hl7.fhir.r4.model.NutritionOrder(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertNutritionOrderStatus(src.getStatus())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasDateTime()) - tgt.setDateTime(src.getDateTime()); - if (src.hasOrderer()) - tgt.setOrderer(convertReference(src.getOrderer())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAllergyIntolerance()) - tgt.addAllergyIntolerance(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getFoodPreferenceModifier()) - tgt.addFoodPreferenceModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getExcludeFoodModifier()) - tgt.addExcludeFoodModifier(convertCodeableConcept(t)); - if (src.hasOralDiet()) - tgt.setOralDiet(convertNutritionOrderOralDietComponent(src.getOralDiet())); - for (org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderSupplementComponent t : src.getSupplement()) - tgt.addSupplement(convertNutritionOrderSupplementComponent(t)); - if (src.hasEnteralFormula()) - tgt.setEnteralFormula(convertNutritionOrderEnteralFormulaComponent(src.getEnteralFormula())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.NutritionOrder convertNutritionOrder(org.hl7.fhir.r4.model.NutritionOrder src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.NutritionOrder tgt = new org.hl7.fhir.dstu3.model.NutritionOrder(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertNutritionOrderStatus(src.getStatus())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasDateTime()) - tgt.setDateTime(src.getDateTime()); - if (src.hasOrderer()) - tgt.setOrderer(convertReference(src.getOrderer())); - for (org.hl7.fhir.r4.model.Reference t : src.getAllergyIntolerance()) - tgt.addAllergyIntolerance(convertReference(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getFoodPreferenceModifier()) - tgt.addFoodPreferenceModifier(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getExcludeFoodModifier()) - tgt.addExcludeFoodModifier(convertCodeableConcept(t)); - if (src.hasOralDiet()) - tgt.setOralDiet(convertNutritionOrderOralDietComponent(src.getOralDiet())); - for (org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderSupplementComponent t : src.getSupplement()) - tgt.addSupplement(convertNutritionOrderSupplementComponent(t)); - if (src.hasEnteralFormula()) - tgt.setEnteralFormula(convertNutritionOrderEnteralFormulaComponent(src.getEnteralFormula())); - return tgt; - } - - private static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus convertNutritionOrderStatus(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.PROPOSED; - case DRAFT: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.DRAFT; - case PLANNED: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.PLANNED; - case REQUESTED: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.REQUESTED; - case ACTIVE: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.ACTIVE; - case ONHOLD: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus convertNutritionOrderStatus(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSED: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.PROPOSED; - case DRAFT: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.DRAFT; - case PLANNED: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.PLANNED; - case REQUESTED: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.REQUESTED; - case ACTIVE: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.ACTIVE; - case ONHOLD: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.ONHOLD; - case COMPLETED: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.COMPLETED; - case CANCELLED: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietComponent convertNutritionOrderOralDietComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Timing t : src.getSchedule()) - tgt.addSchedule(convertTiming(t)); - for (org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietNutrientComponent t : src.getNutrient()) - tgt.addNutrient(convertNutritionOrderOralDietNutrientComponent(t)); - for (org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietTextureComponent t : src.getTexture()) - tgt.addTexture(convertNutritionOrderOralDietTextureComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getFluidConsistencyType()) - tgt.addFluidConsistencyType(convertCodeableConcept(t)); - if (src.hasInstruction()) - tgt.setInstruction(src.getInstruction()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietComponent convertNutritionOrderOralDietComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Timing t : src.getSchedule()) - tgt.addSchedule(convertTiming(t)); - for (org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietNutrientComponent t : src.getNutrient()) - tgt.addNutrient(convertNutritionOrderOralDietNutrientComponent(t)); - for (org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietTextureComponent t : src.getTexture()) - tgt.addTexture(convertNutritionOrderOralDietTextureComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getFluidConsistencyType()) - tgt.addFluidConsistencyType(convertCodeableConcept(t)); - if (src.hasInstruction()) - tgt.setInstruction(src.getInstruction()); - return tgt; - } - - public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietNutrientComponent convertNutritionOrderOralDietNutrientComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietNutrientComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietNutrientComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietNutrientComponent(); - copyElement(src, tgt); - if (src.hasModifier()) - tgt.setModifier(convertCodeableConcept(src.getModifier())); - if (src.hasAmount()) - tgt.setAmount(convertSimpleQuantity(src.getAmount())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietNutrientComponent convertNutritionOrderOralDietNutrientComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietNutrientComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietNutrientComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietNutrientComponent(); - copyElement(src, tgt); - if (src.hasModifier()) - tgt.setModifier(convertCodeableConcept(src.getModifier())); - if (src.hasAmount()) - tgt.setAmount(convertSimpleQuantity(src.getAmount())); - return tgt; - } - - public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietTextureComponent convertNutritionOrderOralDietTextureComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietTextureComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietTextureComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietTextureComponent(); - copyElement(src, tgt); - if (src.hasModifier()) - tgt.setModifier(convertCodeableConcept(src.getModifier())); - if (src.hasFoodType()) - tgt.setFoodType(convertCodeableConcept(src.getFoodType())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietTextureComponent convertNutritionOrderOralDietTextureComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietTextureComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietTextureComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietTextureComponent(); - copyElement(src, tgt); - if (src.hasModifier()) - tgt.setModifier(convertCodeableConcept(src.getModifier())); - if (src.hasFoodType()) - tgt.setFoodType(convertCodeableConcept(src.getFoodType())); - return tgt; - } - - public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderSupplementComponent convertNutritionOrderSupplementComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderSupplementComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderSupplementComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderSupplementComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasProductName()) - tgt.setProductName(src.getProductName()); - for (org.hl7.fhir.dstu3.model.Timing t : src.getSchedule()) - tgt.addSchedule(convertTiming(t)); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasInstruction()) - tgt.setInstruction(src.getInstruction()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderSupplementComponent convertNutritionOrderSupplementComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderSupplementComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderSupplementComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderSupplementComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasProductName()) - tgt.setProductName(src.getProductName()); - for (org.hl7.fhir.r4.model.Timing t : src.getSchedule()) - tgt.addSchedule(convertTiming(t)); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasInstruction()) - tgt.setInstruction(src.getInstruction()); - return tgt; - } - - public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaComponent convertNutritionOrderEnteralFormulaComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaComponent(); - copyElement(src, tgt); - if (src.hasBaseFormulaType()) - tgt.setBaseFormulaType(convertCodeableConcept(src.getBaseFormulaType())); - if (src.hasBaseFormulaProductName()) - tgt.setBaseFormulaProductName(src.getBaseFormulaProductName()); - if (src.hasAdditiveType()) - tgt.setAdditiveType(convertCodeableConcept(src.getAdditiveType())); - if (src.hasAdditiveProductName()) - tgt.setAdditiveProductName(src.getAdditiveProductName()); - if (src.hasCaloricDensity()) - tgt.setCaloricDensity(convertSimpleQuantity(src.getCaloricDensity())); - if (src.hasRouteofAdministration()) - tgt.setRouteofAdministration(convertCodeableConcept(src.getRouteofAdministration())); - for (org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent t : src.getAdministration()) - tgt.addAdministration(convertNutritionOrderEnteralFormulaAdministrationComponent(t)); - if (src.hasMaxVolumeToDeliver()) - tgt.setMaxVolumeToDeliver(convertSimpleQuantity(src.getMaxVolumeToDeliver())); - if (src.hasAdministrationInstruction()) - tgt.setAdministrationInstruction(src.getAdministrationInstruction()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaComponent convertNutritionOrderEnteralFormulaComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaComponent(); - copyElement(src, tgt); - if (src.hasBaseFormulaType()) - tgt.setBaseFormulaType(convertCodeableConcept(src.getBaseFormulaType())); - if (src.hasBaseFormulaProductName()) - tgt.setBaseFormulaProductName(src.getBaseFormulaProductName()); - if (src.hasAdditiveType()) - tgt.setAdditiveType(convertCodeableConcept(src.getAdditiveType())); - if (src.hasAdditiveProductName()) - tgt.setAdditiveProductName(src.getAdditiveProductName()); - if (src.hasCaloricDensity()) - tgt.setCaloricDensity(convertSimpleQuantity(src.getCaloricDensity())); - if (src.hasRouteofAdministration()) - tgt.setRouteofAdministration(convertCodeableConcept(src.getRouteofAdministration())); - for (org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent t : src.getAdministration()) - tgt.addAdministration(convertNutritionOrderEnteralFormulaAdministrationComponent(t)); - if (src.hasMaxVolumeToDeliver()) - tgt.setMaxVolumeToDeliver(convertSimpleQuantity(src.getMaxVolumeToDeliver())); - if (src.hasAdministrationInstruction()) - tgt.setAdministrationInstruction(src.getAdministrationInstruction()); - return tgt; - } - - public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent convertNutritionOrderEnteralFormulaAdministrationComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent(); - copyElement(src, tgt); - if (src.hasSchedule()) - tgt.setSchedule(convertTiming(src.getSchedule())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasRate()) - tgt.setRate(convertType(src.getRate())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent convertNutritionOrderEnteralFormulaAdministrationComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent(); - copyElement(src, tgt); - if (src.hasSchedule()) - tgt.setSchedule(convertTiming(src.getSchedule())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasRate()) - tgt.setRate(convertType(src.getRate())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Observation convertObservation(org.hl7.fhir.dstu3.model.Observation src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Observation tgt = new org.hl7.fhir.r4.model.Observation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertObservationStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasEffective()) - tgt.setEffective(convertType(src.getEffective())); - if (src.hasIssued()) - tgt.setIssued(src.getIssued()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasDataAbsentReason()) - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - if (src.hasInterpretation()) - tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasSpecimen()) - tgt.setSpecimen(convertReference(src.getSpecimen())); - if (src.hasDevice()) - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - for (org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent t : src.getRelated()) - tgt.addRelated(convertObservationRelatedComponent(t)); - for (org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent t : src.getComponent()) - tgt.addComponent(convertObservationComponentComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Observation convertObservation(org.hl7.fhir.r4.model.Observation src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Observation tgt = new org.hl7.fhir.dstu3.model.Observation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertObservationStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasEffective()) - tgt.setEffective(convertType(src.getEffective())); - if (src.hasIssued()) - tgt.setIssued(src.getIssued()); - for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) - tgt.addPerformer(convertReference(t)); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasDataAbsentReason()) - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - if (src.hasInterpretation()) - tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasSpecimen()) - tgt.setSpecimen(convertReference(src.getSpecimen())); - if (src.hasDevice()) - tgt.setDevice(convertReference(src.getDevice())); - for (org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - for (org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent t : src.getRelated()) - tgt.addRelated(convertObservationRelatedComponent(t)); - for (org.hl7.fhir.r4.model.Observation.ObservationComponentComponent t : src.getComponent()) - tgt.addComponent(convertObservationComponentComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.dstu3.model.Observation.ObservationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.REGISTERED; - case PRELIMINARY: return org.hl7.fhir.r4.model.Observation.ObservationStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.r4.model.Observation.ObservationStatus.FINAL; - case AMENDED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.AMENDED; - case CORRECTED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.CORRECTED; - case CANCELLED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Observation.ObservationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.Observation.ObservationStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.Observation.ObservationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.r4.model.Observation.ObservationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.REGISTERED; - case PRELIMINARY: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.FINAL; - case AMENDED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.AMENDED; - case CORRECTED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.CORRECTED; - case CANCELLED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent(); - copyElement(src, tgt); - if (src.hasLow()) - tgt.setLow(convertSimpleQuantity(src.getLow())); - if (src.hasHigh()) - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAppliesTo()) - tgt.addAppliesTo(convertCodeableConcept(t)); - if (src.hasAge()) - tgt.setAge(convertRange(src.getAge())); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent(); - copyElement(src, tgt); - if (src.hasLow()) - tgt.setLow(convertSimpleQuantity(src.getLow())); - if (src.hasHigh()) - tgt.setHigh(convertSimpleQuantity(src.getHigh())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAppliesTo()) - tgt.addAppliesTo(convertCodeableConcept(t)); - if (src.hasAge()) - tgt.setAge(convertRange(src.getAge())); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertObservationRelationshipType(src.getType())); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertObservationRelationshipType(src.getType())); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HASMEMBER: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.HASMEMBER; - case DERIVEDFROM: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.DERIVEDFROM; - case SEQUELTO: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.SEQUELTO; - case REPLACES: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.REPLACES; - case QUALIFIEDBY: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.QUALIFIEDBY; - case INTERFEREDBY: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.INTERFEREDBY; - default: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.r4.model.Observation.ObservationRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case HASMEMBER: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.HASMEMBER; - case DERIVEDFROM: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.DERIVEDFROM; - case SEQUELTO: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.SEQUELTO; - case REPLACES: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.REPLACES; - case QUALIFIEDBY: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.QUALIFIEDBY; - case INTERFEREDBY: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.INTERFEREDBY; - default: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationComponentComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasDataAbsentReason()) - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - if (src.hasInterpretation()) - tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); - for (org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.r4.model.Observation.ObservationComponentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - if (src.hasDataAbsentReason()) - tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); - if (src.hasInterpretation()) - tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); - for (org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) - tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.dstu3.model.OperationDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.OperationDefinition tgt = new org.hl7.fhir.r4.model.OperationDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasKind()) - tgt.setKind(convertOperationKind(src.getKind())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasIdempotent()) - tgt.setIdempotent(src.getIdempotent()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasBase()) - tgt.setBase(convertReference(src.getBase())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getResource()) - tgt.addResource(t.getValue()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasInstance()) - tgt.setInstance(src.getInstance()); - for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) - tgt.addParameter(convertOperationDefinitionParameterComponent(t)); - for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionOverloadComponent t : src.getOverload()) - tgt.addOverload(convertOperationDefinitionOverloadComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.r4.model.OperationDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.OperationDefinition tgt = new org.hl7.fhir.dstu3.model.OperationDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasKind()) - tgt.setKind(convertOperationKind(src.getKind())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasIdempotent()) - tgt.setIdempotent(src.getIdempotent()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - if (src.hasBase()) - tgt.setBase(convertReference(src.getBase())); - for (org.hl7.fhir.r4.model.CodeType t : src.getResource()) - tgt.addResource(t.getValue()); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasInstance()) - tgt.setInstance(src.getInstance()); - for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) - tgt.addParameter(convertOperationDefinitionParameterComponent(t)); - for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionOverloadComponent t : src.getOverload()) - tgt.addOverload(convertOperationDefinitionOverloadComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OPERATION: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.OPERATION; - case QUERY: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.QUERY; - default: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.r4.model.OperationDefinition.OperationKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OPERATION: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.OPERATION; - case QUERY: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.QUERY; - default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.NULL; - } -} - - public static org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasUse()) - tgt.setUse(convertOperationParameterUse(src.getUse())); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasSearchType()) - tgt.setSearchType(convertSearchParamType(src.getSearchType())); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - if (src.hasBinding()) - tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); - for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) - tgt.addPart(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasUse()) - tgt.setUse(convertOperationParameterUse(src.getUse())); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasSearchType()) - tgt.setSearchType(convertSearchParamType(src.getSearchType())); - if (src.hasProfile()) - tgt.setProfile(convertReference(src.getProfile())); - if (src.hasBinding()) - tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); - for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) - tgt.addPart(convertOperationDefinitionParameterComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.IN; - case OUT: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.OUT; - default: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case IN: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.IN; - case OUT: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.OUT; - default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.NULL; - } -} - - public static org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); - copyElement(src, tgt); - if (src.hasStrength()) - tgt.setStrength(convertBindingStrength(src.getStrength())); - if (src.hasValueSet()) - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); - copyElement(src, tgt); - if (src.hasStrength()) - tgt.setStrength(convertBindingStrength(src.getStrength())); - if (src.hasValueSet()) - tgt.setValueSet(convertType(src.getValueSet())); - return tgt; - } - - public static org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionOverloadComponent convertOperationDefinitionOverloadComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionOverloadComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionOverloadComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionOverloadComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.StringType t : src.getParameterName()) - tgt.addParameterName(t.getValue()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionOverloadComponent convertOperationDefinitionOverloadComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionOverloadComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionOverloadComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionOverloadComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.StringType t : src.getParameterName()) - tgt.addParameterName(t.getValue()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.r4.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.dstu3.model.OperationOutcome src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.OperationOutcome tgt = new org.hl7.fhir.r4.model.OperationOutcome(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) - tgt.addIssue(convertOperationOutcomeIssueComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.r4.model.OperationOutcome src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.OperationOutcome tgt = new org.hl7.fhir.dstu3.model.OperationOutcome(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) - tgt.addIssue(convertOperationOutcomeIssueComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent(); - copyElement(src, tgt); - if (src.hasSeverity()) - tgt.setSeverity(convertIssueSeverity(src.getSeverity())); - if (src.hasCode()) - tgt.setCode(convertIssueType(src.getCode())); - if (src.hasDetails()) - tgt.setDetails(convertCodeableConcept(src.getDetails())); - if (src.hasDiagnostics()) - tgt.setDiagnostics(src.getDiagnostics()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getLocation()) - tgt.addLocation(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getExpression()) - tgt.addExpression(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent(); - copyElement(src, tgt); - if (src.hasSeverity()) - tgt.setSeverity(convertIssueSeverity(src.getSeverity())); - if (src.hasCode()) - tgt.setCode(convertIssueType(src.getCode())); - if (src.hasDetails()) - tgt.setDetails(convertCodeableConcept(src.getDetails())); - if (src.hasDiagnostics()) - tgt.setDiagnostics(src.getDiagnostics()); - for (org.hl7.fhir.r4.model.StringType t : src.getLocation()) - tgt.addLocation(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getExpression()) - tgt.addExpression(t.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FATAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.FATAL; - case ERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.ERROR; - case WARNING: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.WARNING; - case INFORMATION: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.INFORMATION; - default: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FATAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.FATAL; - case ERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.ERROR; - case WARNING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.WARNING; - case INFORMATION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.INFORMATION; - default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.NULL; - } -} - - private static org.hl7.fhir.r4.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.dstu3.model.OperationOutcome.IssueType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVALID; - case STRUCTURE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.STRUCTURE; - case REQUIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.REQUIRED; - case VALUE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.VALUE; - case INVARIANT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVARIANT; - case SECURITY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SECURITY; - case LOGIN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOGIN; - case UNKNOWN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.UNKNOWN; - case EXPIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXPIRED; - case FORBIDDEN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.FORBIDDEN; - case SUPPRESSED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SUPPRESSED; - case PROCESSING: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.PROCESSING; - case NOTSUPPORTED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTSUPPORTED; - case DUPLICATE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.DUPLICATE; - case NOTFOUND: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTFOUND; - case TOOLONG: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOLONG; - case CODEINVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CODEINVALID; - case EXTENSION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXTENSION; - case TOOCOSTLY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOCOSTLY; - case BUSINESSRULE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.BUSINESSRULE; - case CONFLICT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CONFLICT; - case INCOMPLETE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INCOMPLETE; - case TRANSIENT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TRANSIENT; - case LOCKERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOCKERROR; - case NOSTORE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOSTORE; - case EXCEPTION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXCEPTION; - case TIMEOUT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TIMEOUT; - case THROTTLED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.THROTTLED; - case INFORMATIONAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INFORMATIONAL; - default: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.r4.model.OperationOutcome.IssueType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVALID; - case STRUCTURE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.STRUCTURE; - case REQUIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.REQUIRED; - case VALUE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.VALUE; - case INVARIANT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVARIANT; - case SECURITY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SECURITY; - case LOGIN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOGIN; - case UNKNOWN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.UNKNOWN; - case EXPIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXPIRED; - case FORBIDDEN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.FORBIDDEN; - case SUPPRESSED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SUPPRESSED; - case PROCESSING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.PROCESSING; - case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTSUPPORTED; - case DUPLICATE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.DUPLICATE; - case NOTFOUND: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTFOUND; - case TOOLONG: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOLONG; - case CODEINVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CODEINVALID; - case EXTENSION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXTENSION; - case TOOCOSTLY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOCOSTLY; - case BUSINESSRULE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.BUSINESSRULE; - case CONFLICT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CONFLICT; - case INCOMPLETE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INCOMPLETE; - case TRANSIENT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TRANSIENT; - case LOCKERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOCKERROR; - case NOSTORE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOSTORE; - case EXCEPTION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXCEPTION; - case TIMEOUT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TIMEOUT; - case THROTTLED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.THROTTLED; - case INFORMATIONAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INFORMATIONAL; - default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Organization convertOrganization(org.hl7.fhir.dstu3.model.Organization src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Organization tgt = new org.hl7.fhir.r4.model.Organization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - if (src.hasPartOf()) - tgt.setPartOf(convertReference(src.getPartOf())); - for (org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent t : src.getContact()) - tgt.addContact(convertOrganizationContactComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Organization convertOrganization(org.hl7.fhir.r4.model.Organization src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Organization tgt = new org.hl7.fhir.dstu3.model.Organization(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) - tgt.addType(convertCodeableConcept(t)); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.StringType t : src.getAlias()) - tgt.addAlias(t.getValue()); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.r4.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - if (src.hasPartOf()) - tgt.setPartOf(convertReference(src.getPartOf())); - for (org.hl7.fhir.r4.model.Organization.OrganizationContactComponent t : src.getContact()) - tgt.addContact(convertOrganizationContactComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.r4.model.Organization.OrganizationContactComponent(); - copyElement(src, tgt); - if (src.hasPurpose()) - tgt.setPurpose(convertCodeableConcept(src.getPurpose())); - if (src.hasName()) - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasAddress()) - tgt.setAddress(convertAddress(src.getAddress())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.r4.model.Organization.OrganizationContactComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent(); - copyElement(src, tgt); - if (src.hasPurpose()) - tgt.setPurpose(convertCodeableConcept(src.getPurpose())); - if (src.hasName()) - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasAddress()) - tgt.setAddress(convertAddress(src.getAddress())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Patient convertPatient(org.hl7.fhir.dstu3.model.Patient src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Patient tgt = new org.hl7.fhir.r4.model.Patient(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasBirthDate()) - tgt.setBirthDate(src.getBirthDate()); - if (src.hasDeceased()) - tgt.setDeceased(convertType(src.getDeceased())); - for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - if (src.hasMaritalStatus()) - tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); - if (src.hasMultipleBirth()) - tgt.setMultipleBirth(convertType(src.getMultipleBirth())); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - for (org.hl7.fhir.dstu3.model.Patient.ContactComponent t : src.getContact()) - tgt.addContact(convertContactComponent(t)); - if (src.hasAnimal()) - tgt.setAnimal(convertAnimalComponent(src.getAnimal())); - for (org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent t : src.getCommunication()) - tgt.addCommunication(convertPatientCommunicationComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getGeneralPractitioner()) - tgt.addGeneralPractitioner(convertReference(t)); - if (src.hasManagingOrganization()) - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - for (org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent t : src.getLink()) - tgt.addLink(convertPatientLinkComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Patient convertPatient(org.hl7.fhir.r4.model.Patient src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Patient tgt = new org.hl7.fhir.dstu3.model.Patient(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - for (org.hl7.fhir.r4.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasBirthDate()) - tgt.setBirthDate(src.getBirthDate()); - if (src.hasDeceased()) - tgt.setDeceased(convertType(src.getDeceased())); - for (org.hl7.fhir.r4.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - if (src.hasMaritalStatus()) - tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); - if (src.hasMultipleBirth()) - tgt.setMultipleBirth(convertType(src.getMultipleBirth())); - for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - for (org.hl7.fhir.r4.model.Patient.ContactComponent t : src.getContact()) - tgt.addContact(convertContactComponent(t)); - if (src.hasAnimal()) - tgt.setAnimal(convertAnimalComponent(src.getAnimal())); - for (org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent t : src.getCommunication()) - tgt.addCommunication(convertPatientCommunicationComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getGeneralPractitioner()) - tgt.addGeneralPractitioner(convertReference(t)); - if (src.hasManagingOrganization()) - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - for (org.hl7.fhir.r4.model.Patient.PatientLinkComponent t : src.getLink()) - tgt.addLink(convertPatientLinkComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.dstu3.model.Patient.ContactComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Patient.ContactComponent tgt = new org.hl7.fhir.r4.model.Patient.ContactComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRelationship()) - tgt.addRelationship(convertCodeableConcept(t)); - if (src.hasName()) - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasAddress()) - tgt.setAddress(convertAddress(src.getAddress())); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.r4.model.Patient.ContactComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Patient.ContactComponent tgt = new org.hl7.fhir.dstu3.model.Patient.ContactComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRelationship()) - tgt.addRelationship(convertCodeableConcept(t)); - if (src.hasName()) - tgt.setName(convertHumanName(src.getName())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasAddress()) - tgt.setAddress(convertAddress(src.getAddress())); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.dstu3.model.Patient.AnimalComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Patient.AnimalComponent tgt = new org.hl7.fhir.r4.model.Patient.AnimalComponent(); - copyElement(src, tgt); - if (src.hasSpecies()) - tgt.setSpecies(convertCodeableConcept(src.getSpecies())); - if (src.hasBreed()) - tgt.setBreed(convertCodeableConcept(src.getBreed())); - if (src.hasGenderStatus()) - tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.r4.model.Patient.AnimalComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Patient.AnimalComponent tgt = new org.hl7.fhir.dstu3.model.Patient.AnimalComponent(); - copyElement(src, tgt); - if (src.hasSpecies()) - tgt.setSpecies(convertCodeableConcept(src.getSpecies())); - if (src.hasBreed()) - tgt.setBreed(convertCodeableConcept(src.getBreed())); - if (src.hasGenderStatus()) - tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(convertCodeableConcept(src.getLanguage())); - if (src.hasPreferred()) - tgt.setPreferred(src.getPreferred()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(convertCodeableConcept(src.getLanguage())); - if (src.hasPreferred()) - tgt.setPreferred(src.getPreferred()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.r4.model.Patient.PatientLinkComponent(); - copyElement(src, tgt); - if (src.hasOther()) - tgt.setOther(convertReference(src.getOther())); - if (src.hasType()) - tgt.setType(convertLinkType(src.getType())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.r4.model.Patient.PatientLinkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent(); - copyElement(src, tgt); - if (src.hasOther()) - tgt.setOther(convertReference(src.getOther())); - if (src.hasType()) - tgt.setType(convertLinkType(src.getType())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Patient.LinkType convertLinkType(org.hl7.fhir.dstu3.model.Patient.LinkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACEDBY: return org.hl7.fhir.r4.model.Patient.LinkType.REPLACEDBY; - case REPLACES: return org.hl7.fhir.r4.model.Patient.LinkType.REPLACES; - case REFER: return org.hl7.fhir.r4.model.Patient.LinkType.REFER; - case SEEALSO: return org.hl7.fhir.r4.model.Patient.LinkType.SEEALSO; - default: return org.hl7.fhir.r4.model.Patient.LinkType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Patient.LinkType convertLinkType(org.hl7.fhir.r4.model.Patient.LinkType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REPLACEDBY: return org.hl7.fhir.dstu3.model.Patient.LinkType.REPLACEDBY; - case REPLACES: return org.hl7.fhir.dstu3.model.Patient.LinkType.REPLACES; - case REFER: return org.hl7.fhir.dstu3.model.Patient.LinkType.REFER; - case SEEALSO: return org.hl7.fhir.dstu3.model.Patient.LinkType.SEEALSO; - default: return org.hl7.fhir.dstu3.model.Patient.LinkType.NULL; - } -} - - public static org.hl7.fhir.r4.model.PaymentNotice convertPaymentNotice(org.hl7.fhir.dstu3.model.PaymentNotice src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PaymentNotice tgt = new org.hl7.fhir.r4.model.PaymentNotice(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertPaymentNoticeStatus(src.getStatus())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasStatusDate()) - tgt.setStatusDate(src.getStatusDate()); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasPaymentStatus()) - tgt.setPaymentStatus(convertCodeableConcept(src.getPaymentStatus())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PaymentNotice convertPaymentNotice(org.hl7.fhir.r4.model.PaymentNotice src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PaymentNotice tgt = new org.hl7.fhir.dstu3.model.PaymentNotice(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertPaymentNoticeStatus(src.getStatus())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasStatusDate()) - tgt.setStatusDate(src.getStatusDate()); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasPaymentStatus()) - tgt.setPaymentStatus(convertCodeableConcept(src.getPaymentStatus())); - return tgt; - } - - private static org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus convertPaymentNoticeStatus(org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus convertPaymentNoticeStatus(org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.PaymentReconciliation convertPaymentReconciliation(org.hl7.fhir.dstu3.model.PaymentReconciliation src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PaymentReconciliation tgt = new org.hl7.fhir.r4.model.PaymentReconciliation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertPaymentReconciliationStatus(src.getStatus())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - if (src.hasRequestProvider()) - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - if (src.hasRequestOrganization()) - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - for (org.hl7.fhir.dstu3.model.PaymentReconciliation.DetailsComponent t : src.getDetail()) - tgt.addDetail(convertDetailsComponent(t)); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - if (src.hasTotal()) - tgt.setTotal(convertMoney(src.getTotal())); - for (org.hl7.fhir.dstu3.model.PaymentReconciliation.NotesComponent t : src.getProcessNote()) - tgt.addProcessNote(convertNotesComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PaymentReconciliation convertPaymentReconciliation(org.hl7.fhir.r4.model.PaymentReconciliation src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PaymentReconciliation tgt = new org.hl7.fhir.dstu3.model.PaymentReconciliation(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertPaymentReconciliationStatus(src.getStatus())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - if (src.hasRequestProvider()) - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - if (src.hasRequestOrganization()) - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - for (org.hl7.fhir.r4.model.PaymentReconciliation.DetailsComponent t : src.getDetail()) - tgt.addDetail(convertDetailsComponent(t)); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - if (src.hasTotal()) - tgt.setTotal(convertMoney(src.getTotal())); - for (org.hl7.fhir.r4.model.PaymentReconciliation.NotesComponent t : src.getProcessNote()) - tgt.addProcessNote(convertNotesComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus convertPaymentReconciliationStatus(org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus convertPaymentReconciliationStatus(org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.PaymentReconciliation.DetailsComponent convertDetailsComponent(org.hl7.fhir.dstu3.model.PaymentReconciliation.DetailsComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PaymentReconciliation.DetailsComponent tgt = new org.hl7.fhir.r4.model.PaymentReconciliation.DetailsComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasSubmitter()) - tgt.setSubmitter(convertReference(src.getSubmitter())); - if (src.hasPayee()) - tgt.setPayee(convertReference(src.getPayee())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAmount()) - tgt.setAmount(convertMoney(src.getAmount())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PaymentReconciliation.DetailsComponent convertDetailsComponent(org.hl7.fhir.r4.model.PaymentReconciliation.DetailsComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PaymentReconciliation.DetailsComponent tgt = new org.hl7.fhir.dstu3.model.PaymentReconciliation.DetailsComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasSubmitter()) - tgt.setSubmitter(convertReference(src.getSubmitter())); - if (src.hasPayee()) - tgt.setPayee(convertReference(src.getPayee())); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasAmount()) - tgt.setAmount(convertMoney(src.getAmount())); - return tgt; - } - - public static org.hl7.fhir.r4.model.PaymentReconciliation.NotesComponent convertNotesComponent(org.hl7.fhir.dstu3.model.PaymentReconciliation.NotesComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PaymentReconciliation.NotesComponent tgt = new org.hl7.fhir.r4.model.PaymentReconciliation.NotesComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PaymentReconciliation.NotesComponent convertNotesComponent(org.hl7.fhir.r4.model.PaymentReconciliation.NotesComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PaymentReconciliation.NotesComponent tgt = new org.hl7.fhir.dstu3.model.PaymentReconciliation.NotesComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Person convertPerson(org.hl7.fhir.dstu3.model.Person src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Person tgt = new org.hl7.fhir.r4.model.Person(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasBirthDate()) - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - if (src.hasPhoto()) - tgt.setPhoto(convertAttachment(src.getPhoto())); - if (src.hasManagingOrganization()) - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - if (src.hasActive()) - tgt.setActive(src.getActive()); - for (org.hl7.fhir.dstu3.model.Person.PersonLinkComponent t : src.getLink()) - tgt.addLink(convertPersonLinkComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Person convertPerson(org.hl7.fhir.r4.model.Person src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Person tgt = new org.hl7.fhir.dstu3.model.Person(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasBirthDate()) - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.r4.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - if (src.hasPhoto()) - tgt.setPhoto(convertAttachment(src.getPhoto())); - if (src.hasManagingOrganization()) - tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); - if (src.hasActive()) - tgt.setActive(src.getActive()); - for (org.hl7.fhir.r4.model.Person.PersonLinkComponent t : src.getLink()) - tgt.addLink(convertPersonLinkComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.dstu3.model.Person.PersonLinkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.r4.model.Person.PersonLinkComponent(); - copyElement(src, tgt); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - if (src.hasAssurance()) - tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.r4.model.Person.PersonLinkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.dstu3.model.Person.PersonLinkComponent(); - copyElement(src, tgt); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - if (src.hasAssurance()) - tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); - return tgt; - } - - private static org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LEVEL1: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL1; - case LEVEL2: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL2; - case LEVEL3: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL3; - case LEVEL4: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL4; - default: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case LEVEL1: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL1; - case LEVEL2: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL2; - case LEVEL3: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL3; - case LEVEL4: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL4; - default: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.NULL; - } -} - - public static org.hl7.fhir.r4.model.PlanDefinition convertPlanDefinition(org.hl7.fhir.dstu3.model.PlanDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PlanDefinition tgt = new org.hl7.fhir.r4.model.PlanDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTopic()) - tgt.addTopic(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Contributor t : src.getContributor()) - tgt.addContributor(convertContributor(t)); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getLibrary()) - tgt.addLibrary(convertReference(t)); - for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalComponent t : src.getGoal()) - tgt.addGoal(convertPlanDefinitionGoalComponent(t)); - for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent t : src.getAction()) - tgt.addAction(convertPlanDefinitionActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PlanDefinition convertPlanDefinition(org.hl7.fhir.r4.model.PlanDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PlanDefinition tgt = new org.hl7.fhir.dstu3.model.PlanDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTopic()) - tgt.addTopic(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Contributor t : src.getContributor()) - tgt.addContributor(convertContributor(t)); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getLibrary()) - tgt.addLibrary(convertReference(t)); - for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalComponent t : src.getGoal()) - tgt.addGoal(convertPlanDefinitionGoalComponent(t)); - for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent t : src.getAction()) - tgt.addAction(convertPlanDefinitionActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalComponent convertPlanDefinitionGoalComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasDescription()) - tgt.setDescription(convertCodeableConcept(src.getDescription())); - if (src.hasPriority()) - tgt.setPriority(convertCodeableConcept(src.getPriority())); - if (src.hasStart()) - tgt.setStart(convertCodeableConcept(src.getStart())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAddresses()) - tgt.addAddresses(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getDocumentation()) - tgt.addDocumentation(convertRelatedArtifact(t)); - for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalTargetComponent t : src.getTarget()) - tgt.addTarget(convertPlanDefinitionGoalTargetComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalComponent convertPlanDefinitionGoalComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalComponent(); - copyElement(src, tgt); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasDescription()) - tgt.setDescription(convertCodeableConcept(src.getDescription())); - if (src.hasPriority()) - tgt.setPriority(convertCodeableConcept(src.getPriority())); - if (src.hasStart()) - tgt.setStart(convertCodeableConcept(src.getStart())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAddresses()) - tgt.addAddresses(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getDocumentation()) - tgt.addDocumentation(convertRelatedArtifact(t)); - for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalTargetComponent t : src.getTarget()) - tgt.addTarget(convertPlanDefinitionGoalTargetComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalTargetComponent convertPlanDefinitionGoalTargetComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalTargetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalTargetComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalTargetComponent(); - copyElement(src, tgt); - if (src.hasMeasure()) - tgt.setMeasure(convertCodeableConcept(src.getMeasure())); - if (src.hasDetail()) - tgt.setDetail(convertType(src.getDetail())); - if (src.hasDue()) - tgt.setDue(convertDuration(src.getDue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalTargetComponent convertPlanDefinitionGoalTargetComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalTargetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalTargetComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalTargetComponent(); - copyElement(src, tgt); - if (src.hasMeasure()) - tgt.setMeasure(convertCodeableConcept(src.getMeasure())); - if (src.hasDetail()) - tgt.setDetail(convertType(src.getDetail())); - if (src.hasDue()) - tgt.setDue(convertDuration(src.getDue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent convertPlanDefinitionActionComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasTextEquivalent()) - tgt.setTextEquivalent(src.getTextEquivalent()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getDocumentation()) - tgt.addDocumentation(convertRelatedArtifact(t)); - for (org.hl7.fhir.dstu3.model.IdType t : src.getGoalId()) - tgt.addGoalId(t.getValue()); - for (org.hl7.fhir.dstu3.model.TriggerDefinition t : src.getTriggerDefinition()) - tgt.addTriggerDefinition(convertTriggerDefinition(t)); - for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionConditionComponent t : src.getCondition()) - tgt.addCondition(convertPlanDefinitionActionConditionComponent(t)); - for (org.hl7.fhir.dstu3.model.DataRequirement t : src.getInput()) - tgt.addInput(convertDataRequirement(t)); - for (org.hl7.fhir.dstu3.model.DataRequirement t : src.getOutput()) - tgt.addOutput(convertDataRequirement(t)); - for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent t : src.getRelatedAction()) - tgt.addRelatedAction(convertPlanDefinitionActionRelatedActionComponent(t)); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertPlanDefinitionActionParticipantComponent(t)); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - if (src.hasGroupingBehavior()) - tgt.setGroupingBehavior(convertActionGroupingBehavior(src.getGroupingBehavior())); - if (src.hasSelectionBehavior()) - tgt.setSelectionBehavior(convertActionSelectionBehavior(src.getSelectionBehavior())); - if (src.hasRequiredBehavior()) - tgt.setRequiredBehavior(convertActionRequiredBehavior(src.getRequiredBehavior())); - if (src.hasPrecheckBehavior()) - tgt.setPrecheckBehavior(convertActionPrecheckBehavior(src.getPrecheckBehavior())); - if (src.hasCardinalityBehavior()) - tgt.setCardinalityBehavior(convertActionCardinalityBehavior(src.getCardinalityBehavior())); - if (src.hasDefinition()) - tgt.setDefinition(convertReference(src.getDefinition())); - if (src.hasTransform()) - tgt.setTransform(convertReference(src.getTransform())); - for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent t : src.getDynamicValue()) - tgt.addDynamicValue(convertPlanDefinitionActionDynamicValueComponent(t)); - for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent t : src.getAction()) - tgt.addAction(convertPlanDefinitionActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent convertPlanDefinitionActionComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasTextEquivalent()) - tgt.setTextEquivalent(src.getTextEquivalent()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) - tgt.addReason(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getDocumentation()) - tgt.addDocumentation(convertRelatedArtifact(t)); - for (org.hl7.fhir.r4.model.IdType t : src.getGoalId()) - tgt.addGoalId(t.getValue()); - for (org.hl7.fhir.r4.model.TriggerDefinition t : src.getTriggerDefinition()) - tgt.addTriggerDefinition(convertTriggerDefinition(t)); - for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionConditionComponent t : src.getCondition()) - tgt.addCondition(convertPlanDefinitionActionConditionComponent(t)); - for (org.hl7.fhir.r4.model.DataRequirement t : src.getInput()) - tgt.addInput(convertDataRequirement(t)); - for (org.hl7.fhir.r4.model.DataRequirement t : src.getOutput()) - tgt.addOutput(convertDataRequirement(t)); - for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent t : src.getRelatedAction()) - tgt.addRelatedAction(convertPlanDefinitionActionRelatedActionComponent(t)); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertPlanDefinitionActionParticipantComponent(t)); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - if (src.hasGroupingBehavior()) - tgt.setGroupingBehavior(convertActionGroupingBehavior(src.getGroupingBehavior())); - if (src.hasSelectionBehavior()) - tgt.setSelectionBehavior(convertActionSelectionBehavior(src.getSelectionBehavior())); - if (src.hasRequiredBehavior()) - tgt.setRequiredBehavior(convertActionRequiredBehavior(src.getRequiredBehavior())); - if (src.hasPrecheckBehavior()) - tgt.setPrecheckBehavior(convertActionPrecheckBehavior(src.getPrecheckBehavior())); - if (src.hasCardinalityBehavior()) - tgt.setCardinalityBehavior(convertActionCardinalityBehavior(src.getCardinalityBehavior())); - if (src.hasDefinition()) - tgt.setDefinition(convertReference(src.getDefinition())); - if (src.hasTransform()) - tgt.setTransform(convertReference(src.getTransform())); - for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent t : src.getDynamicValue()) - tgt.addDynamicValue(convertPlanDefinitionActionDynamicValueComponent(t)); - for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent t : src.getAction()) - tgt.addAction(convertPlanDefinitionActionComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior convertActionGroupingBehavior(org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case VISUALGROUP: return org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior.VISUALGROUP; - case LOGICALGROUP: return org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior.LOGICALGROUP; - case SENTENCEGROUP: return org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior.SENTENCEGROUP; - default: return org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior convertActionGroupingBehavior(org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case VISUALGROUP: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior.VISUALGROUP; - case LOGICALGROUP: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior.LOGICALGROUP; - case SENTENCEGROUP: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior.SENTENCEGROUP; - default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior.NULL; - } -} - - private static org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior convertActionSelectionBehavior(org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ANY: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.ANY; - case ALL: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.ALL; - case ALLORNONE: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.ALLORNONE; - case EXACTLYONE: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.EXACTLYONE; - case ATMOSTONE: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.ATMOSTONE; - case ONEORMORE: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.ONEORMORE; - default: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior convertActionSelectionBehavior(org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ANY: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.ANY; - case ALL: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.ALL; - case ALLORNONE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.ALLORNONE; - case EXACTLYONE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.EXACTLYONE; - case ATMOSTONE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.ATMOSTONE; - case ONEORMORE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.ONEORMORE; - default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.NULL; - } -} - - private static org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior convertActionRequiredBehavior(org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MUST: return org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior.MUST; - case COULD: return org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior.COULD; - case MUSTUNLESSDOCUMENTED: return org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior.MUSTUNLESSDOCUMENTED; - default: return org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior convertActionRequiredBehavior(org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MUST: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior.MUST; - case COULD: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior.COULD; - case MUSTUNLESSDOCUMENTED: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior.MUSTUNLESSDOCUMENTED; - default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior.NULL; - } -} - - private static org.hl7.fhir.r4.model.PlanDefinition.ActionPrecheckBehavior convertActionPrecheckBehavior(org.hl7.fhir.dstu3.model.PlanDefinition.ActionPrecheckBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case YES: return org.hl7.fhir.r4.model.PlanDefinition.ActionPrecheckBehavior.YES; - case NO: return org.hl7.fhir.r4.model.PlanDefinition.ActionPrecheckBehavior.NO; - default: return org.hl7.fhir.r4.model.PlanDefinition.ActionPrecheckBehavior.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionPrecheckBehavior convertActionPrecheckBehavior(org.hl7.fhir.r4.model.PlanDefinition.ActionPrecheckBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case YES: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionPrecheckBehavior.YES; - case NO: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionPrecheckBehavior.NO; - default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionPrecheckBehavior.NULL; - } -} - - private static org.hl7.fhir.r4.model.PlanDefinition.ActionCardinalityBehavior convertActionCardinalityBehavior(org.hl7.fhir.dstu3.model.PlanDefinition.ActionCardinalityBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SINGLE: return org.hl7.fhir.r4.model.PlanDefinition.ActionCardinalityBehavior.SINGLE; - case MULTIPLE: return org.hl7.fhir.r4.model.PlanDefinition.ActionCardinalityBehavior.MULTIPLE; - default: return org.hl7.fhir.r4.model.PlanDefinition.ActionCardinalityBehavior.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionCardinalityBehavior convertActionCardinalityBehavior(org.hl7.fhir.r4.model.PlanDefinition.ActionCardinalityBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SINGLE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionCardinalityBehavior.SINGLE; - case MULTIPLE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionCardinalityBehavior.MULTIPLE; - default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionCardinalityBehavior.NULL; - } -} - - public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionConditionComponent convertPlanDefinitionActionConditionComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionConditionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionConditionComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionConditionComponent(); - copyElement(src, tgt); - if (src.hasKind()) - tgt.setKind(convertActionConditionKind(src.getKind())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionConditionComponent convertPlanDefinitionActionConditionComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionConditionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionConditionComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionConditionComponent(); - copyElement(src, tgt); - if (src.hasKind()) - tgt.setKind(convertActionConditionKind(src.getKind())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - return tgt; - } - - private static org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind convertActionConditionKind(org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case APPLICABILITY: return org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind.APPLICABILITY; - case START: return org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind.START; - case STOP: return org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind.STOP; - default: return org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind convertActionConditionKind(org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case APPLICABILITY: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind.APPLICABILITY; - case START: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind.START; - case STOP: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind.STOP; - default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind.NULL; - } -} - - public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent convertPlanDefinitionActionRelatedActionComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent(); - copyElement(src, tgt); - if (src.hasActionId()) - tgt.setActionId(src.getActionId()); - if (src.hasRelationship()) - tgt.setRelationship(convertActionRelationshipType(src.getRelationship())); - if (src.hasOffset()) - tgt.setOffset(convertType(src.getOffset())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent convertPlanDefinitionActionRelatedActionComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent(); - copyElement(src, tgt); - if (src.hasActionId()) - tgt.setActionId(src.getActionId()); - if (src.hasRelationship()) - tgt.setRelationship(convertActionRelationshipType(src.getRelationship())); - if (src.hasOffset()) - tgt.setOffset(convertType(src.getOffset())); - return tgt; - } - - private static org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType convertActionRelationshipType(org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BEFORESTART: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.BEFORESTART; - case BEFORE: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.BEFORE; - case BEFOREEND: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.BEFOREEND; - case CONCURRENTWITHSTART: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.CONCURRENTWITHSTART; - case CONCURRENT: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.CONCURRENT; - case CONCURRENTWITHEND: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.CONCURRENTWITHEND; - case AFTERSTART: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.AFTERSTART; - case AFTER: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.AFTER; - case AFTEREND: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.AFTEREND; - default: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType convertActionRelationshipType(org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BEFORESTART: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.BEFORESTART; - case BEFORE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.BEFORE; - case BEFOREEND: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.BEFOREEND; - case CONCURRENTWITHSTART: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.CONCURRENTWITHSTART; - case CONCURRENT: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.CONCURRENT; - case CONCURRENTWITHEND: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.CONCURRENTWITHEND; - case AFTERSTART: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.AFTERSTART; - case AFTER: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.AFTER; - case AFTEREND: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.AFTEREND; - default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.NULL; - } -} - - public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionParticipantComponent convertPlanDefinitionActionParticipantComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionParticipantComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionParticipantComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertActionParticipantType(src.getType())); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionParticipantComponent convertPlanDefinitionActionParticipantComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionParticipantComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionParticipantComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertActionParticipantType(src.getType())); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - return tgt; - } - - private static org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType convertActionParticipantType(org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType.PATIENT; - case PRACTITIONER: return org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType.PRACTITIONER; - case RELATEDPERSON: return org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType.RELATEDPERSON; - default: return org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType convertActionParticipantType(org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PATIENT: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType.PATIENT; - case PRACTITIONER: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType.PRACTITIONER; - case RELATEDPERSON: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType.RELATEDPERSON; - default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType.NULL; - } -} - - public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent convertPlanDefinitionActionDynamicValueComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent convertPlanDefinitionActionDynamicValueComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Practitioner convertPractitioner(org.hl7.fhir.dstu3.model.Practitioner src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Practitioner tgt = new org.hl7.fhir.r4.model.Practitioner(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasBirthDate()) - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - for (org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) - tgt.addQualification(convertPractitionerQualificationComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCommunication()) - tgt.addCommunication(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Practitioner convertPractitioner(org.hl7.fhir.r4.model.Practitioner src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Practitioner tgt = new org.hl7.fhir.dstu3.model.Practitioner(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - for (org.hl7.fhir.r4.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.r4.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasBirthDate()) - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - for (org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) - tgt.addQualification(convertPractitionerQualificationComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCommunication()) - tgt.addCommunication(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasIssuer()) - tgt.setIssuer(convertReference(src.getIssuer())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasIssuer()) - tgt.setIssuer(convertReference(src.getIssuer())); - return tgt; - } - - public static org.hl7.fhir.r4.model.PractitionerRole convertPractitionerRole(org.hl7.fhir.dstu3.model.PractitionerRole src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PractitionerRole tgt = new org.hl7.fhir.r4.model.PractitionerRole(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasPractitioner()) - tgt.setPractitioner(convertReference(src.getPractitioner())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getLocation()) - tgt.addLocation(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getHealthcareService()) - tgt.addHealthcareService(convertReference(t)); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleAvailableTimeComponent t : src.getAvailableTime()) - tgt.addAvailableTime(convertPractitionerRoleAvailableTimeComponent(t)); - for (org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleNotAvailableComponent t : src.getNotAvailable()) - tgt.addNotAvailable(convertPractitionerRoleNotAvailableComponent(t)); - if (src.hasAvailabilityExceptions()) - tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PractitionerRole convertPractitionerRole(org.hl7.fhir.r4.model.PractitionerRole src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PractitionerRole tgt = new org.hl7.fhir.dstu3.model.PractitionerRole(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasPractitioner()) - tgt.setPractitioner(convertReference(src.getPractitioner())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getLocation()) - tgt.addLocation(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getHealthcareService()) - tgt.addHealthcareService(convertReference(t)); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - for (org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleAvailableTimeComponent t : src.getAvailableTime()) - tgt.addAvailableTime(convertPractitionerRoleAvailableTimeComponent(t)); - for (org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleNotAvailableComponent t : src.getNotAvailable()) - tgt.addNotAvailable(convertPractitionerRoleNotAvailableComponent(t)); - if (src.hasAvailabilityExceptions()) - tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); - for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) - tgt.addEndpoint(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleAvailableTimeComponent convertPractitionerRoleAvailableTimeComponent(org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleAvailableTimeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleAvailableTimeComponent tgt = new org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleAvailableTimeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getDaysOfWeek()) - tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); - if (src.hasAllDay()) - tgt.setAllDay(src.getAllDay()); - if (src.hasAvailableStartTime()) - tgt.setAvailableStartTime(src.getAvailableStartTime()); - if (src.hasAvailableEndTime()) - tgt.setAvailableEndTime(src.getAvailableEndTime()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleAvailableTimeComponent convertPractitionerRoleAvailableTimeComponent(org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleAvailableTimeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleAvailableTimeComponent tgt = new org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleAvailableTimeComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Enumeration t : src.getDaysOfWeek()) - tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); - if (src.hasAllDay()) - tgt.setAllDay(src.getAllDay()); - if (src.hasAvailableStartTime()) - tgt.setAvailableStartTime(src.getAvailableStartTime()); - if (src.hasAvailableEndTime()) - tgt.setAvailableEndTime(src.getAvailableEndTime()); - return tgt; - } - - private static org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MON: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.MON; - case TUE: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.TUE; - case WED: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.WED; - case THU: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.THU; - case FRI: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.FRI; - case SAT: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.SAT; - case SUN: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.SUN; - default: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MON: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.MON; - case TUE: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.TUE; - case WED: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.WED; - case THU: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.THU; - case FRI: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.FRI; - case SAT: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.SAT; - case SUN: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.SUN; - default: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.NULL; - } -} - - public static org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleNotAvailableComponent convertPractitionerRoleNotAvailableComponent(org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleNotAvailableComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleNotAvailableComponent tgt = new org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleNotAvailableComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasDuring()) - tgt.setDuring(convertPeriod(src.getDuring())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleNotAvailableComponent convertPractitionerRoleNotAvailableComponent(org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleNotAvailableComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleNotAvailableComponent tgt = new org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleNotAvailableComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasDuring()) - tgt.setDuring(convertPeriod(src.getDuring())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Procedure convertProcedure(org.hl7.fhir.dstu3.model.Procedure src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Procedure tgt = new org.hl7.fhir.r4.model.Procedure(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertProcedureStatus(src.getStatus())); - if (src.hasNotDone()) - tgt.setNotDone(src.getNotDone()); - if (src.hasNotDoneReason()) - tgt.setNotDoneReason(convertCodeableConcept(src.getNotDoneReason())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasPerformed()) - tgt.setPerformed(convertType(src.getPerformed())); - for (org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) - tgt.addPerformer(convertProcedurePerformerComponent(t)); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReport()) - tgt.addReport(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getComplication()) - tgt.addComplication(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getComplicationDetail()) - tgt.addComplicationDetail(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getFollowUp()) - tgt.addFollowUp(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) - tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getUsedReference()) - tgt.addUsedReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getUsedCode()) - tgt.addUsedCode(convertCodeableConcept(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Procedure convertProcedure(org.hl7.fhir.r4.model.Procedure src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Procedure tgt = new org.hl7.fhir.dstu3.model.Procedure(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertProcedureStatus(src.getStatus())); - if (src.hasNotDone()) - tgt.setNotDone(src.getNotDone()); - if (src.hasNotDoneReason()) - tgt.setNotDoneReason(convertCodeableConcept(src.getNotDoneReason())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasPerformed()) - tgt.setPerformed(convertType(src.getPerformed())); - for (org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) - tgt.addPerformer(convertProcedurePerformerComponent(t)); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - for (org.hl7.fhir.r4.model.Reference t : src.getReport()) - tgt.addReport(convertReference(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getComplication()) - tgt.addComplication(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getComplicationDetail()) - tgt.addComplicationDetail(convertReference(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getFollowUp()) - tgt.addFollowUp(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) - tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getUsedReference()) - tgt.addUsedReference(convertReference(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getUsedCode()) - tgt.addUsedCode(convertCodeableConcept(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PREPARATION: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.PREPARATION; - case INPROGRESS: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.INPROGRESS; - case SUSPENDED: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.SUSPENDED; - case ABORTED: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.ABORTED; - case COMPLETED: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.r4.model.Procedure.ProcedureStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PREPARATION: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.PREPARATION; - case INPROGRESS: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.INPROGRESS; - case SUSPENDED: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.SUSPENDED; - case ABORTED: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.ABORTED; - case COMPLETED: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent(); - copyElement(src, tgt); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent(); - copyElement(src, tgt); - if (src.hasRole()) - tgt.setRole(convertCodeableConcept(src.getRole())); - if (src.hasActor()) - tgt.setActor(convertReference(src.getActor())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent(); - copyElement(src, tgt); - if (src.hasAction()) - tgt.setAction(convertCodeableConcept(src.getAction())); - if (src.hasManipulated()) - tgt.setManipulated(convertReference(src.getManipulated())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent(); - copyElement(src, tgt); - if (src.hasAction()) - tgt.setAction(convertCodeableConcept(src.getAction())); - if (src.hasManipulated()) - tgt.setManipulated(convertReference(src.getManipulated())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.dstu3.model.ProcedureRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ProcedureRequest tgt = new org.hl7.fhir.r4.model.ProcedureRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - if (src.hasRequisition()) - tgt.setRequisition(convertIdentifier(src.getRequisition())); - if (src.hasStatus()) - tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); - if (src.hasIntent()) - tgt.setIntent(convertProcedureRequestIntent(src.getIntent())); - if (src.hasPriority()) - tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); - if (src.hasDoNotPerform()) - tgt.setDoNotPerform(src.getDoNotPerform()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasAsNeeded()) - tgt.setAsNeeded(convertType(src.getAsNeeded())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasRequester()) - tgt.setRequester(convertProcedureRequestRequesterComponent(src.getRequester())); - if (src.hasPerformerType()) - tgt.setPerformerType(convertCodeableConcept(src.getPerformerType())); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInfo()) - tgt.addSupportingInfo(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSpecimen()) - tgt.addSpecimen(convertReference(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRelevantHistory()) - tgt.addRelevantHistory(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.r4.model.ProcedureRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ProcedureRequest tgt = new org.hl7.fhir.dstu3.model.ProcedureRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - if (src.hasRequisition()) - tgt.setRequisition(convertIdentifier(src.getRequisition())); - if (src.hasStatus()) - tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); - if (src.hasIntent()) - tgt.setIntent(convertProcedureRequestIntent(src.getIntent())); - if (src.hasPriority()) - tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); - if (src.hasDoNotPerform()) - tgt.setDoNotPerform(src.getDoNotPerform()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasAsNeeded()) - tgt.setAsNeeded(convertType(src.getAsNeeded())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasRequester()) - tgt.setRequester(convertProcedureRequestRequesterComponent(src.getRequester())); - if (src.hasPerformerType()) - tgt.setPerformerType(convertCodeableConcept(src.getPerformerType())); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInfo()) - tgt.addSupportingInfo(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getSpecimen()) - tgt.addSpecimen(convertReference(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) - tgt.addBodySite(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getRelevantHistory()) - tgt.addRelevantHistory(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent convertProcedureRequestIntent(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSAL: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.PROPOSAL; - case PLAN: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.PLAN; - case ORDER: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.ORDER; - case ORIGINALORDER: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.ORIGINALORDER; - case REFLEXORDER: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.REFLEXORDER; - case FILLERORDER: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.FILLERORDER; - case INSTANCEORDER: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.INSTANCEORDER; - case OPTION: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.OPTION; - default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent convertProcedureRequestIntent(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSAL: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.PROPOSAL; - case PLAN: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.PLAN; - case ORDER: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.ORDER; - case ORIGINALORDER: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.ORIGINALORDER; - case REFLEXORDER: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.REFLEXORDER; - case FILLERORDER: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.FILLERORDER; - case INSTANCEORDER: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.INSTANCEORDER; - case OPTION: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.OPTION; - default: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.NULL; - } -} - - private static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.URGENT; - case ASAP: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ASAP; - case STAT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.STAT; - default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.URGENT; - case ASAP: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.ASAP; - case STAT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.STAT; - default: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.NULL; - } -} - - public static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent convertProcedureRequestRequesterComponent(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestRequesterComponent convertProcedureRequestRequesterComponent(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestRequesterComponent tgt = new org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ProcessRequest convertProcessRequest(org.hl7.fhir.dstu3.model.ProcessRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ProcessRequest tgt = new org.hl7.fhir.r4.model.ProcessRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertProcessRequestStatus(src.getStatus())); - if (src.hasAction()) - tgt.setAction(convertActionList(src.getAction())); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasNullify()) - tgt.setNullify(src.getNullify()); - if (src.hasReference()) - tgt.setReference(src.getReference()); - for (org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent t : src.getItem()) - tgt.addItem(convertItemsComponent(t)); - for (org.hl7.fhir.dstu3.model.StringType t : src.getInclude()) - tgt.addInclude(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getExclude()) - tgt.addExclude(t.getValue()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ProcessRequest convertProcessRequest(org.hl7.fhir.r4.model.ProcessRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ProcessRequest tgt = new org.hl7.fhir.dstu3.model.ProcessRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertProcessRequestStatus(src.getStatus())); - if (src.hasAction()) - tgt.setAction(convertActionList(src.getAction())); - if (src.hasTarget()) - tgt.setTarget(convertReference(src.getTarget())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasProvider()) - tgt.setProvider(convertReference(src.getProvider())); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasResponse()) - tgt.setResponse(convertReference(src.getResponse())); - if (src.hasNullify()) - tgt.setNullify(src.getNullify()); - if (src.hasReference()) - tgt.setReference(src.getReference()); - for (org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent t : src.getItem()) - tgt.addItem(convertItemsComponent(t)); - for (org.hl7.fhir.r4.model.StringType t : src.getInclude()) - tgt.addInclude(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getExclude()) - tgt.addExclude(t.getValue()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus convertProcessRequestStatus(org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus convertProcessRequestStatus(org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.dstu3.model.ProcessRequest.ActionList src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CANCEL: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.CANCEL; - case POLL: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.POLL; - case REPROCESS: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.REPROCESS; - case STATUS: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.STATUS; - default: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.r4.model.ProcessRequest.ActionList src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CANCEL: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.CANCEL; - case POLL: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.POLL; - case REPROCESS: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.REPROCESS; - case STATUS: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.STATUS; - default: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.NULL; - } -} - - public static org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent(); - copyElement(src, tgt); - if (src.hasSequenceLinkId()) - tgt.setSequenceLinkId(src.getSequenceLinkId()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent(); - copyElement(src, tgt); - if (src.hasSequenceLinkId()) - tgt.setSequenceLinkId(src.getSequenceLinkId()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ProcessResponse convertProcessResponse(org.hl7.fhir.dstu3.model.ProcessResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ProcessResponse tgt = new org.hl7.fhir.r4.model.ProcessResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertProcessResponseStatus(src.getStatus())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - if (src.hasRequestProvider()) - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - if (src.hasRequestOrganization()) - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - for (org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseProcessNoteComponent t : src.getProcessNote()) - tgt.addProcessNote(convertProcessResponseProcessNoteComponent(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getError()) - tgt.addError(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getCommunicationRequest()) - tgt.addCommunicationRequest(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ProcessResponse convertProcessResponse(org.hl7.fhir.r4.model.ProcessResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ProcessResponse tgt = new org.hl7.fhir.dstu3.model.ProcessResponse(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertProcessResponseStatus(src.getStatus())); - if (src.hasCreated()) - tgt.setCreated(src.getCreated()); - if (src.hasOrganization()) - tgt.setOrganization(convertReference(src.getOrganization())); - if (src.hasRequest()) - tgt.setRequest(convertReference(src.getRequest())); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasDisposition()) - tgt.setDisposition(src.getDisposition()); - if (src.hasRequestProvider()) - tgt.setRequestProvider(convertReference(src.getRequestProvider())); - if (src.hasRequestOrganization()) - tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); - if (src.hasForm()) - tgt.setForm(convertCodeableConcept(src.getForm())); - for (org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseProcessNoteComponent t : src.getProcessNote()) - tgt.addProcessNote(convertProcessResponseProcessNoteComponent(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getError()) - tgt.addError(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getCommunicationRequest()) - tgt.addCommunicationRequest(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus convertProcessResponseStatus(org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus convertProcessResponseStatus(org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseProcessNoteComponent convertProcessResponseProcessNoteComponent(org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseProcessNoteComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseProcessNoteComponent tgt = new org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseProcessNoteComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseProcessNoteComponent convertProcessResponseProcessNoteComponent(org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseProcessNoteComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseProcessNoteComponent tgt = new org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseProcessNoteComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasText()) - tgt.setText(src.getText()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Provenance convertProvenance(org.hl7.fhir.dstu3.model.Provenance src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Provenance tgt = new org.hl7.fhir.r4.model.Provenance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Reference t : src.getTarget()) - tgt.addTarget(convertReference(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasRecorded()) - tgt.setRecorded(src.getRecorded()); - for (org.hl7.fhir.dstu3.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.dstu3.model.Coding t : src.getReason()) - tgt.addReason(convertCoding(t)); - if (src.hasActivity()) - tgt.setActivity(convertCoding(src.getActivity())); - for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) - tgt.addAgent(convertProvenanceAgentComponent(t)); - for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) - tgt.addEntity(convertProvenanceEntityComponent(t)); - for (org.hl7.fhir.dstu3.model.Signature t : src.getSignature()) - tgt.addSignature(convertSignature(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Provenance convertProvenance(org.hl7.fhir.r4.model.Provenance src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Provenance tgt = new org.hl7.fhir.dstu3.model.Provenance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Reference t : src.getTarget()) - tgt.addTarget(convertReference(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasRecorded()) - tgt.setRecorded(src.getRecorded()); - for (org.hl7.fhir.r4.model.UriType t : src.getPolicy()) - tgt.addPolicy(t.getValue()); - if (src.hasLocation()) - tgt.setLocation(convertReference(src.getLocation())); - for (org.hl7.fhir.r4.model.Coding t : src.getReason()) - tgt.addReason(convertCoding(t)); - if (src.hasActivity()) - tgt.setActivity(convertCoding(src.getActivity())); - for (org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) - tgt.addAgent(convertProvenanceAgentComponent(t)); - for (org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) - tgt.addEntity(convertProvenanceEntityComponent(t)); - for (org.hl7.fhir.r4.model.Signature t : src.getSignature()) - tgt.addSignature(convertSignature(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - if (src.hasWho()) - tgt.setWho(convertType(src.getWho())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertType(src.getOnBehalfOf())); - if (src.hasRelatedAgentType()) - tgt.setRelatedAgentType(convertCodeableConcept(src.getRelatedAgentType())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) - tgt.addRole(convertCodeableConcept(t)); - if (src.hasWho()) - tgt.setWho(convertType(src.getWho())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertType(src.getOnBehalfOf())); - if (src.hasRelatedAgentType()) - tgt.setRelatedAgentType(convertCodeableConcept(src.getRelatedAgentType())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent(); - copyElement(src, tgt); - if (src.hasRole()) - tgt.setRole(convertProvenanceEntityRole(src.getRole())); - if (src.hasWhat()) - tgt.setWhat(convertType(src.getWhat())); - for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) - tgt.addAgent(convertProvenanceAgentComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent(); - copyElement(src, tgt); - if (src.hasRole()) - tgt.setRole(convertProvenanceEntityRole(src.getRole())); - if (src.hasWhat()) - tgt.setWhat(convertType(src.getWhat())); - for (org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) - tgt.addAgent(convertProvenanceAgentComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DERIVATION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.DERIVATION; - case REVISION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.REVISION; - case QUOTATION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.QUOTATION; - case SOURCE: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.SOURCE; - case REMOVAL: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.REMOVAL; - default: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DERIVATION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.DERIVATION; - case REVISION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.REVISION; - case QUOTATION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.QUOTATION; - case SOURCE: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.SOURCE; - case REMOVAL: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.REMOVAL; - default: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.NULL; - } -} - - public static org.hl7.fhir.r4.model.Questionnaire convertQuestionnaire(org.hl7.fhir.dstu3.model.Questionnaire src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Questionnaire tgt = new org.hl7.fhir.r4.model.Questionnaire(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getSubjectType()) - tgt.addSubjectType(t.getValue()); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Questionnaire convertQuestionnaire(org.hl7.fhir.r4.model.Questionnaire src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Questionnaire tgt = new org.hl7.fhir.dstu3.model.Questionnaire(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - for (org.hl7.fhir.r4.model.CodeType t : src.getSubjectType()) - tgt.addSubjectType(t.getValue()); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - if (src.hasPrefix()) - tgt.setPrefix(src.getPrefix()); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasType()) - tgt.setType(convertQuestionnaireItemType(src.getType())); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) - tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasRepeats()) - tgt.setRepeats(src.getRepeats()); - if (src.hasReadOnly()) - tgt.setReadOnly(src.getReadOnly()); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - if (src.hasOptions()) - tgt.setOptions(convertReference(src.getOptions())); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) - tgt.addOption(convertQuestionnaireItemOptionComponent(t)); - if (src.hasInitial()) - tgt.setInitial(convertType(src.getInitial())); - for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - for (org.hl7.fhir.r4.model.Coding t : src.getCode()) - tgt.addCode(convertCoding(t)); - if (src.hasPrefix()) - tgt.setPrefix(src.getPrefix()); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasType()) - tgt.setType(convertQuestionnaireItemType(src.getType())); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) - tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasRepeats()) - tgt.setRepeats(src.getRepeats()); - if (src.hasReadOnly()) - tgt.setReadOnly(src.getReadOnly()); - if (src.hasMaxLength()) - tgt.setMaxLength(src.getMaxLength()); - if (src.hasOptions()) - tgt.setOptions(convertReference(src.getOptions())); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) - tgt.addOption(convertQuestionnaireItemOptionComponent(t)); - if (src.hasInitial()) - tgt.setInitial(convertType(src.getInitial())); - for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireItemComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GROUP: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.GROUP; - case DISPLAY: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DISPLAY; - case QUESTION: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.QUESTION; - case BOOLEAN: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.BOOLEAN; - case DECIMAL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DECIMAL; - case INTEGER: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.INTEGER; - case DATE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATE; - case DATETIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATETIME; - case TIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TIME; - case STRING: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.STRING; - case TEXT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TEXT; - case URL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.URL; - case CHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.CHOICE; - case OPENCHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; - case ATTACHMENT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; - case REFERENCE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.REFERENCE; - case QUANTITY: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.QUANTITY; - default: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case GROUP: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.GROUP; - case DISPLAY: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DISPLAY; - case QUESTION: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.QUESTION; - case BOOLEAN: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.BOOLEAN; - case DECIMAL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DECIMAL; - case INTEGER: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.INTEGER; - case DATE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATE; - case DATETIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATETIME; - case TIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TIME; - case STRING: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.STRING; - case TEXT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TEXT; - case URL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.URL; - case CHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.CHOICE; - case OPENCHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; - case ATTACHMENT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; - case REFERENCE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.REFERENCE; - case QUANTITY: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.QUANTITY; - default: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); - copyElement(src, tgt); - if (src.hasQuestion()) - tgt.setQuestion(src.getQuestion()); - if (src.hasHasAnswer()) - tgt.setHasAnswer(src.getHasAnswer()); - if (src.hasAnswer()) - tgt.setAnswer(convertType(src.getAnswer())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); - copyElement(src, tgt); - if (src.hasQuestion()) - tgt.setQuestion(src.getQuestion()); - if (src.hasHasAnswer()) - tgt.setHasAnswer(src.getHasAnswer()); - if (src.hasAnswer()) - tgt.setAnswer(convertType(src.getAnswer())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.dstu3.model.QuestionnaireResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.QuestionnaireResponse tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getParent()) - tgt.addParent(convertReference(t)); - if (src.hasQuestionnaire()) - tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); - if (src.hasStatus()) - tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasAuthored()) - tgt.setAuthored(src.getAuthored()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.r4.model.QuestionnaireResponse src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.QuestionnaireResponse tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getParent()) - tgt.addParent(convertReference(t)); - if (src.hasQuestionnaire()) - tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); - if (src.hasStatus()) - tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasAuthored()) - tgt.setAuthored(src.getAuthored()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasSource()) - tgt.setSource(convertReference(src.getSource())); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; - case AMENDED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.STOPPED; - default: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; - case AMENDED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.ENTEREDINERROR; - case STOPPED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.STOPPED; - default: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) - tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); - copyElement(src, tgt); - if (src.hasLinkId()) - tgt.setLinkId(src.getLinkId()); - if (src.hasDefinition()) - tgt.setDefinition(src.getDefinition()); - if (src.hasText()) - tgt.setText(src.getText()); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) - tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) - tgt.addItem(convertQuestionnaireResponseItemComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ProcedureRequest convertReferralRequest(org.hl7.fhir.dstu3.model.ReferralRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ProcedureRequest tgt = new org.hl7.fhir.r4.model.ProcedureRequest(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertReferralRequestStatus(src.getStatus())); - if (src.hasType()) - tgt.setCode(convertCodeableConcept(src.getType())); - if (src.hasPriority()) - tgt.setPriority(convertReferralPriority(src.getPriority())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasRequester()) - tgt.setRequester(convertReferralRequestRequesterComponent(src.getRequester())); - if (src.hasSpecialty()) - tgt.setPerformerType(convertCodeableConcept(src.getSpecialty())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) - tgt.addReasonCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) - tgt.addReasonReference(convertReference(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInfo()) - tgt.addSupportingInfo(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRelevantHistory()) - tgt.addRelevantHistory(convertReference(t)); - return tgt; - } - - - private static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus convertReferralRequestStatus(org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority convertReferralPriority(org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.URGENT; - case ASAP: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ASAP; - case STAT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.STAT; - default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.NULL; - } -} - - - public static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent convertReferralRequestRequesterComponent(org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - - public static org.hl7.fhir.r4.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.dstu3.model.RelatedPerson src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.RelatedPerson tgt = new org.hl7.fhir.r4.model.RelatedPerson(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasRelationship()) - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasBirthDate()) - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.r4.model.RelatedPerson src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.RelatedPerson tgt = new org.hl7.fhir.dstu3.model.RelatedPerson(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasRelationship()) - tgt.setRelationship(convertCodeableConcept(src.getRelationship())); - for (org.hl7.fhir.r4.model.HumanName t : src.getName()) - tgt.addName(convertHumanName(t)); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) - tgt.addTelecom(convertContactPoint(t)); - if (src.hasGender()) - tgt.setGender(convertAdministrativeGender(src.getGender())); - if (src.hasBirthDate()) - tgt.setBirthDate(src.getBirthDate()); - for (org.hl7.fhir.r4.model.Address t : src.getAddress()) - tgt.addAddress(convertAddress(t)); - for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) - tgt.addPhoto(convertAttachment(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - return tgt; - } - - public static org.hl7.fhir.r4.model.RequestGroup convertRequestGroup(org.hl7.fhir.dstu3.model.RequestGroup src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.RequestGroup tgt = new org.hl7.fhir.r4.model.RequestGroup(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - if (src.hasGroupIdentifier()) - tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertRequestStatus(src.getStatus())); - if (src.hasIntent()) - tgt.setIntent(convertRequestIntent(src.getIntent())); - if (src.hasPriority()) - tgt.setPriority(convertRequestPriority(src.getPriority())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasReason()) - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent t : src.getAction()) - tgt.addAction(convertRequestGroupActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.RequestGroup convertRequestGroup(org.hl7.fhir.r4.model.RequestGroup src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.RequestGroup tgt = new org.hl7.fhir.dstu3.model.RequestGroup(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) - tgt.addDefinition(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getReplaces()) - tgt.addReplaces(convertReference(t)); - if (src.hasGroupIdentifier()) - tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertRequestStatus(src.getStatus())); - if (src.hasIntent()) - tgt.setIntent(convertRequestIntent(src.getIntent())); - if (src.hasPriority()) - tgt.setPriority(convertRequestPriority(src.getPriority())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasAuthor()) - tgt.setAuthor(convertReference(src.getAuthor())); - if (src.hasReason()) - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent t : src.getAction()) - tgt.addAction(convertRequestGroupActionComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.RequestGroup.RequestPriority convertRequestPriority(org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.r4.model.RequestGroup.RequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.r4.model.RequestGroup.RequestPriority.URGENT; - case ASAP: return org.hl7.fhir.r4.model.RequestGroup.RequestPriority.ASAP; - case STAT: return org.hl7.fhir.r4.model.RequestGroup.RequestPriority.STAT; - default: return org.hl7.fhir.r4.model.RequestGroup.RequestPriority.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority convertRequestPriority(org.hl7.fhir.r4.model.RequestGroup.RequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority.URGENT; - case ASAP: return org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority.ASAP; - case STAT: return org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority.STAT; - default: return org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority.NULL; - } -} - - - private static org.hl7.fhir.r4.model.RequestGroup.RequestStatus convertRequestStatus(org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus convertRequestStatus(org.hl7.fhir.r4.model.RequestGroup.RequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.RequestGroup.RequestIntent convertRequestIntent(org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSAL: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.PROPOSAL; - case PLAN: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.PLAN; - case ORDER: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.ORDER; - case ORIGINALORDER: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.ORIGINALORDER; - case REFLEXORDER: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.REFLEXORDER; - case FILLERORDER: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.FILLERORDER; - case INSTANCEORDER: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.INSTANCEORDER; - case OPTION: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.OPTION; - default: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent convertRequestIntent(org.hl7.fhir.r4.model.RequestGroup.RequestIntent src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSAL: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.PROPOSAL; - case PLAN: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.PLAN; - case ORDER: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.ORDER; - case ORIGINALORDER: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.ORIGINALORDER; - case REFLEXORDER: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.REFLEXORDER; - case FILLERORDER: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.FILLERORDER; - case INSTANCEORDER: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.INSTANCEORDER; - case OPTION: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.OPTION; - default: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.NULL; - } -} - - public static org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent convertRequestGroupActionComponent(org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent tgt = new org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasTextEquivalent()) - tgt.setTextEquivalent(src.getTextEquivalent()); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getDocumentation()) - tgt.addDocumentation(convertRelatedArtifact(t)); - for (org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionConditionComponent t : src.getCondition()) - tgt.addCondition(convertRequestGroupActionConditionComponent(t)); - for (org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionRelatedActionComponent t : src.getRelatedAction()) - tgt.addRelatedAction(convertRequestGroupActionRelatedActionComponent(t)); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getParticipant()) - tgt.addParticipant(convertReference(t)); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - if (src.hasGroupingBehavior()) - tgt.setGroupingBehavior(convertActionGroupingBehavior(src.getGroupingBehavior())); - if (src.hasSelectionBehavior()) - tgt.setSelectionBehavior(convertActionSelectionBehavior(src.getSelectionBehavior())); - if (src.hasRequiredBehavior()) - tgt.setRequiredBehavior(convertActionRequiredBehavior(src.getRequiredBehavior())); - if (src.hasPrecheckBehavior()) - tgt.setPrecheckBehavior(convertActionPrecheckBehavior(src.getPrecheckBehavior())); - if (src.hasCardinalityBehavior()) - tgt.setCardinalityBehavior(convertActionCardinalityBehavior(src.getCardinalityBehavior())); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent t : src.getAction()) - tgt.addAction(convertRequestGroupActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent convertRequestGroupActionComponent(org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent tgt = new org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasTextEquivalent()) - tgt.setTextEquivalent(src.getTextEquivalent()); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) - tgt.addCode(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getDocumentation()) - tgt.addDocumentation(convertRelatedArtifact(t)); - for (org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionConditionComponent t : src.getCondition()) - tgt.addCondition(convertRequestGroupActionConditionComponent(t)); - for (org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionRelatedActionComponent t : src.getRelatedAction()) - tgt.addRelatedAction(convertRequestGroupActionRelatedActionComponent(t)); - if (src.hasTiming()) - tgt.setTiming(convertType(src.getTiming())); - for (org.hl7.fhir.r4.model.Reference t : src.getParticipant()) - tgt.addParticipant(convertReference(t)); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - if (src.hasGroupingBehavior()) - tgt.setGroupingBehavior(convertActionGroupingBehavior(src.getGroupingBehavior())); - if (src.hasSelectionBehavior()) - tgt.setSelectionBehavior(convertActionSelectionBehavior(src.getSelectionBehavior())); - if (src.hasRequiredBehavior()) - tgt.setRequiredBehavior(convertActionRequiredBehavior(src.getRequiredBehavior())); - if (src.hasPrecheckBehavior()) - tgt.setPrecheckBehavior(convertActionPrecheckBehavior(src.getPrecheckBehavior())); - if (src.hasCardinalityBehavior()) - tgt.setCardinalityBehavior(convertActionCardinalityBehavior(src.getCardinalityBehavior())); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent t : src.getAction()) - tgt.addAction(convertRequestGroupActionComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior convertActionGroupingBehavior(org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case VISUALGROUP: return org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior.VISUALGROUP; - case LOGICALGROUP: return org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior.LOGICALGROUP; - case SENTENCEGROUP: return org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior.SENTENCEGROUP; - default: return org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior convertActionGroupingBehavior(org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case VISUALGROUP: return org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior.VISUALGROUP; - case LOGICALGROUP: return org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior.LOGICALGROUP; - case SENTENCEGROUP: return org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior.SENTENCEGROUP; - default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior.NULL; - } -} - - private static org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior convertActionSelectionBehavior(org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ANY: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.ANY; - case ALL: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.ALL; - case ALLORNONE: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.ALLORNONE; - case EXACTLYONE: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.EXACTLYONE; - case ATMOSTONE: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.ATMOSTONE; - case ONEORMORE: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.ONEORMORE; - default: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior convertActionSelectionBehavior(org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ANY: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.ANY; - case ALL: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.ALL; - case ALLORNONE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.ALLORNONE; - case EXACTLYONE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.EXACTLYONE; - case ATMOSTONE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.ATMOSTONE; - case ONEORMORE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.ONEORMORE; - default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.NULL; - } -} - - private static org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior convertActionRequiredBehavior(org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MUST: return org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior.MUST; - case COULD: return org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior.COULD; - case MUSTUNLESSDOCUMENTED: return org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior.MUSTUNLESSDOCUMENTED; - default: return org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior convertActionRequiredBehavior(org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MUST: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior.MUST; - case COULD: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior.COULD; - case MUSTUNLESSDOCUMENTED: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior.MUSTUNLESSDOCUMENTED; - default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior.NULL; - } -} - - private static org.hl7.fhir.r4.model.RequestGroup.ActionPrecheckBehavior convertActionPrecheckBehavior(org.hl7.fhir.dstu3.model.RequestGroup.ActionPrecheckBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case YES: return org.hl7.fhir.r4.model.RequestGroup.ActionPrecheckBehavior.YES; - case NO: return org.hl7.fhir.r4.model.RequestGroup.ActionPrecheckBehavior.NO; - default: return org.hl7.fhir.r4.model.RequestGroup.ActionPrecheckBehavior.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RequestGroup.ActionPrecheckBehavior convertActionPrecheckBehavior(org.hl7.fhir.r4.model.RequestGroup.ActionPrecheckBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case YES: return org.hl7.fhir.dstu3.model.RequestGroup.ActionPrecheckBehavior.YES; - case NO: return org.hl7.fhir.dstu3.model.RequestGroup.ActionPrecheckBehavior.NO; - default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionPrecheckBehavior.NULL; - } -} - - private static org.hl7.fhir.r4.model.RequestGroup.ActionCardinalityBehavior convertActionCardinalityBehavior(org.hl7.fhir.dstu3.model.RequestGroup.ActionCardinalityBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SINGLE: return org.hl7.fhir.r4.model.RequestGroup.ActionCardinalityBehavior.SINGLE; - case MULTIPLE: return org.hl7.fhir.r4.model.RequestGroup.ActionCardinalityBehavior.MULTIPLE; - default: return org.hl7.fhir.r4.model.RequestGroup.ActionCardinalityBehavior.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RequestGroup.ActionCardinalityBehavior convertActionCardinalityBehavior(org.hl7.fhir.r4.model.RequestGroup.ActionCardinalityBehavior src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SINGLE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionCardinalityBehavior.SINGLE; - case MULTIPLE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionCardinalityBehavior.MULTIPLE; - default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionCardinalityBehavior.NULL; - } -} - - - public static org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionConditionComponent convertRequestGroupActionConditionComponent(org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionConditionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionConditionComponent tgt = new org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionConditionComponent(); - copyElement(src, tgt); - if (src.hasKind()) - tgt.setKind(convertActionConditionKind(src.getKind())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionConditionComponent convertRequestGroupActionConditionComponent(org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionConditionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionConditionComponent tgt = new org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionConditionComponent(); - copyElement(src, tgt); - if (src.hasKind()) - tgt.setKind(convertActionConditionKind(src.getKind())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - return tgt; - } - - private static org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind convertActionConditionKind(org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case APPLICABILITY: return org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind.APPLICABILITY; - case START: return org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind.START; - case STOP: return org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind.STOP; - default: return org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind convertActionConditionKind(org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case APPLICABILITY: return org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind.APPLICABILITY; - case START: return org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind.START; - case STOP: return org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind.STOP; - default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind.NULL; - } -} - - - public static org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionRelatedActionComponent convertRequestGroupActionRelatedActionComponent(org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionRelatedActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionRelatedActionComponent tgt = new org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionRelatedActionComponent(); - copyElement(src, tgt); - if (src.hasActionId()) - tgt.setActionId(src.getActionId()); - if (src.hasRelationship()) - tgt.setRelationship(convertActionRelationshipType(src.getRelationship())); - if (src.hasOffset()) - tgt.setOffset(convertType(src.getOffset())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionRelatedActionComponent convertRequestGroupActionRelatedActionComponent(org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionRelatedActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionRelatedActionComponent tgt = new org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionRelatedActionComponent(); - copyElement(src, tgt); - if (src.hasActionId()) - tgt.setActionId(src.getActionId()); - if (src.hasRelationship()) - tgt.setRelationship(convertActionRelationshipType(src.getRelationship())); - if (src.hasOffset()) - tgt.setOffset(convertType(src.getOffset())); - return tgt; - } - - private static org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType convertActionRelationshipType(org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BEFORESTART: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.BEFORESTART; - case BEFORE: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.BEFORE; - case BEFOREEND: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.BEFOREEND; - case CONCURRENTWITHSTART: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.CONCURRENTWITHSTART; - case CONCURRENT: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.CONCURRENT; - case CONCURRENTWITHEND: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.CONCURRENTWITHEND; - case AFTERSTART: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.AFTERSTART; - case AFTER: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.AFTER; - case AFTEREND: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.AFTEREND; - default: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType convertActionRelationshipType(org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BEFORESTART: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.BEFORESTART; - case BEFORE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.BEFORE; - case BEFOREEND: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.BEFOREEND; - case CONCURRENTWITHSTART: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.CONCURRENTWITHSTART; - case CONCURRENT: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.CONCURRENT; - case CONCURRENTWITHEND: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.CONCURRENTWITHEND; - case AFTERSTART: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.AFTERSTART; - case AFTER: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.AFTER; - case AFTEREND: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.AFTEREND; - default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.NULL; - } -} - - public static org.hl7.fhir.r4.model.ResearchStudy convertResearchStudy(org.hl7.fhir.dstu3.model.ResearchStudy src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ResearchStudy tgt = new org.hl7.fhir.r4.model.ResearchStudy(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProtocol()) - tgt.addProtocol(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertResearchStudyStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getFocus()) - tgt.addFocus(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getKeyword()) - tgt.addKeyword(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getEnrollment()) - tgt.addEnrollment(convertReference(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasSponsor()) - tgt.setSponsor(convertReference(src.getSponsor())); - if (src.hasPrincipalInvestigator()) - tgt.setPrincipalInvestigator(convertReference(src.getPrincipalInvestigator())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSite()) - tgt.addSite(convertReference(t)); - if (src.hasReasonStopped()) - tgt.setReasonStopped(convertCodeableConcept(src.getReasonStopped())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyArmComponent t : src.getArm()) - tgt.addArm(convertResearchStudyArmComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ResearchStudy convertResearchStudy(org.hl7.fhir.r4.model.ResearchStudy src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ResearchStudy tgt = new org.hl7.fhir.dstu3.model.ResearchStudy(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - for (org.hl7.fhir.r4.model.Reference t : src.getProtocol()) - tgt.addProtocol(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertResearchStudyStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getFocus()) - tgt.addFocus(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getKeyword()) - tgt.addKeyword(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.Reference t : src.getEnrollment()) - tgt.addEnrollment(convertReference(t)); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasSponsor()) - tgt.setSponsor(convertReference(src.getSponsor())); - if (src.hasPrincipalInvestigator()) - tgt.setPrincipalInvestigator(convertReference(src.getPrincipalInvestigator())); - for (org.hl7.fhir.r4.model.Reference t : src.getSite()) - tgt.addSite(convertReference(t)); - if (src.hasReasonStopped()) - tgt.setReasonStopped(convertCodeableConcept(src.getReasonStopped())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyArmComponent t : src.getArm()) - tgt.addArm(convertResearchStudyArmComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus convertResearchStudyStatus(org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.DRAFT; - case INPROGRESS: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.INPROGRESS; - case SUSPENDED: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.SUSPENDED; - case STOPPED: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.STOPPED; - case COMPLETED: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus convertResearchStudyStatus(org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.DRAFT; - case INPROGRESS: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.INPROGRESS; - case SUSPENDED: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.SUSPENDED; - case STOPPED: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.STOPPED; - case COMPLETED: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyArmComponent convertResearchStudyArmComponent(org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyArmComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyArmComponent tgt = new org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyArmComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyArmComponent convertResearchStudyArmComponent(org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyArmComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyArmComponent tgt = new org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyArmComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ResearchSubject convertResearchSubject(org.hl7.fhir.dstu3.model.ResearchSubject src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ResearchSubject tgt = new org.hl7.fhir.r4.model.ResearchSubject(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertResearchSubjectStatus(src.getStatus())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasStudy()) - tgt.setStudy(convertReference(src.getStudy())); - if (src.hasIndividual()) - tgt.setIndividual(convertReference(src.getIndividual())); - if (src.hasAssignedArm()) - tgt.setAssignedArm(src.getAssignedArm()); - if (src.hasActualArm()) - tgt.setActualArm(src.getActualArm()); - if (src.hasConsent()) - tgt.setConsent(convertReference(src.getConsent())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ResearchSubject convertResearchSubject(org.hl7.fhir.r4.model.ResearchSubject src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ResearchSubject tgt = new org.hl7.fhir.dstu3.model.ResearchSubject(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertResearchSubjectStatus(src.getStatus())); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - if (src.hasStudy()) - tgt.setStudy(convertReference(src.getStudy())); - if (src.hasIndividual()) - tgt.setIndividual(convertReference(src.getIndividual())); - if (src.hasAssignedArm()) - tgt.setAssignedArm(src.getAssignedArm()); - if (src.hasActualArm()) - tgt.setActualArm(src.getActualArm()); - if (src.hasConsent()) - tgt.setConsent(convertReference(src.getConsent())); - return tgt; - } - - private static org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus convertResearchSubjectStatus(org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CANDIDATE: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.CANDIDATE; - case ENROLLED: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.ENROLLED; - case ACTIVE: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.SUSPENDED; - case WITHDRAWN: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.WITHDRAWN; - case COMPLETED: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.COMPLETED; - default: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus convertResearchSubjectStatus(org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CANDIDATE: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.CANDIDATE; - case ENROLLED: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.ENROLLED; - case ACTIVE: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.SUSPENDED; - case WITHDRAWN: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.WITHDRAWN; - case COMPLETED: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.COMPLETED; - default: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.dstu3.model.RiskAssessment src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.RiskAssessment tgt = new org.hl7.fhir.r4.model.RiskAssessment(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasBasedOn()) - tgt.setBasedOn(convertReference(src.getBasedOn())); - if (src.hasParent()) - tgt.setParent(convertReference(src.getParent())); - if (src.hasStatus()) - tgt.setStatus(convertRiskAssessmentStatus(src.getStatus())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasCondition()) - tgt.setCondition(convertReference(src.getCondition())); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - if (src.hasReason()) - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasis()) - tgt.addBasis(convertReference(t)); - for (org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) - tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); - if (src.hasMitigation()) - tgt.setMitigation(src.getMitigation()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.r4.model.RiskAssessment src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.RiskAssessment tgt = new org.hl7.fhir.dstu3.model.RiskAssessment(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasBasedOn()) - tgt.setBasedOn(convertReference(src.getBasedOn())); - if (src.hasParent()) - tgt.setParent(convertReference(src.getParent())); - if (src.hasStatus()) - tgt.setStatus(convertRiskAssessmentStatus(src.getStatus())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasCondition()) - tgt.setCondition(convertReference(src.getCondition())); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - if (src.hasReason()) - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.r4.model.Reference t : src.getBasis()) - tgt.addBasis(convertReference(t)); - for (org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) - tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); - if (src.hasMitigation()) - tgt.setMitigation(src.getMitigation()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - private static org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus convertRiskAssessmentStatus(org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.REGISTERED; - case PRELIMINARY: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.FINAL; - case AMENDED: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.AMENDED; - case CORRECTED: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.CORRECTED; - case CANCELLED: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus convertRiskAssessmentStatus(org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REGISTERED: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.REGISTERED; - case PRELIMINARY: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.PRELIMINARY; - case FINAL: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.FINAL; - case AMENDED: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.AMENDED; - case CORRECTED: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.CORRECTED; - case CANCELLED: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.CANCELLED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent(); - copyElement(src, tgt); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasProbability()) - tgt.setProbability(convertType(src.getProbability())); - if (src.hasQualitativeRisk()) - tgt.setQualitativeRisk(convertCodeableConcept(src.getQualitativeRisk())); - if (src.hasRelativeRisk()) - tgt.setRelativeRisk(src.getRelativeRisk()); - if (src.hasWhen()) - tgt.setWhen(convertType(src.getWhen())); - if (src.hasRationale()) - tgt.setRationale(src.getRationale()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent(); - copyElement(src, tgt); - if (src.hasOutcome()) - tgt.setOutcome(convertCodeableConcept(src.getOutcome())); - if (src.hasProbability()) - tgt.setProbability(convertType(src.getProbability())); - if (src.hasQualitativeRisk()) - tgt.setQualitativeRisk(convertCodeableConcept(src.getQualitativeRisk())); - if (src.hasRelativeRisk()) - tgt.setRelativeRisk(src.getRelativeRisk()); - if (src.hasWhen()) - tgt.setWhen(convertType(src.getWhen())); - if (src.hasRationale()) - tgt.setRationale(src.getRationale()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Schedule convertSchedule(org.hl7.fhir.dstu3.model.Schedule src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Schedule tgt = new org.hl7.fhir.r4.model.Schedule(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasServiceCategory()) - tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) - tgt.addServiceType(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getActor()) - tgt.addActor(convertReference(t)); - if (src.hasPlanningHorizon()) - tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Schedule convertSchedule(org.hl7.fhir.r4.model.Schedule src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Schedule tgt = new org.hl7.fhir.dstu3.model.Schedule(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasActive()) - tgt.setActive(src.getActive()); - if (src.hasServiceCategory()) - tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) - tgt.addServiceType(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getActor()) - tgt.addActor(convertReference(t)); - if (src.hasPlanningHorizon()) - tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.r4.model.SearchParameter convertSearchParameter(org.hl7.fhir.dstu3.model.SearchParameter src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.SearchParameter tgt = new org.hl7.fhir.r4.model.SearchParameter(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getBase()) - tgt.addBase(t.getValue()); - if (src.hasType()) - tgt.setType(convertSearchParamType(src.getType())); - if (src.hasDerivedFrom()) - tgt.setDerivedFrom(src.getDerivedFrom()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasXpath()) - tgt.setXpath(src.getXpath()); - if (src.hasXpathUsage()) - tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); - for (org.hl7.fhir.dstu3.model.CodeType t : src.getTarget()) - tgt.addTarget(t.getValue()); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getComparator()) - tgt.addComparator(convertSearchComparator(t.getValue())); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getModifier()) - tgt.addModifier(convertSearchModifierCode(t.getValue())); - for (org.hl7.fhir.dstu3.model.StringType t : src.getChain()) - tgt.addChain(t.getValue()); - for (org.hl7.fhir.dstu3.model.SearchParameter.SearchParameterComponentComponent t : src.getComponent()) - tgt.addComponent(convertSearchParameterComponentComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SearchParameter convertSearchParameter(org.hl7.fhir.r4.model.SearchParameter src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.SearchParameter tgt = new org.hl7.fhir.dstu3.model.SearchParameter(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - for (org.hl7.fhir.r4.model.CodeType t : src.getBase()) - tgt.addBase(t.getValue()); - if (src.hasType()) - tgt.setType(convertSearchParamType(src.getType())); - if (src.hasDerivedFrom()) - tgt.setDerivedFrom(src.getDerivedFrom()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasXpath()) - tgt.setXpath(src.getXpath()); - if (src.hasXpathUsage()) - tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); - for (org.hl7.fhir.r4.model.CodeType t : src.getTarget()) - tgt.addTarget(t.getValue()); - for (org.hl7.fhir.r4.model.Enumeration t : src.getComparator()) - tgt.addComparator(convertSearchComparator(t.getValue())); - for (org.hl7.fhir.r4.model.Enumeration t : src.getModifier()) - tgt.addModifier(convertSearchModifierCode(t.getValue())); - for (org.hl7.fhir.r4.model.StringType t : src.getChain()) - tgt.addChain(t.getValue()); - for (org.hl7.fhir.r4.model.SearchParameter.SearchParameterComponentComponent t : src.getComponent()) - tgt.addComponent(convertSearchParameterComponentComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NORMAL: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NORMAL; - case PHONETIC: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.PHONETIC; - case NEARBY: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NEARBY; - case DISTANCE: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.DISTANCE; - case OTHER: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.OTHER; - default: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.r4.model.SearchParameter.XPathUsageType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NORMAL: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NORMAL; - case PHONETIC: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.PHONETIC; - case NEARBY: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NEARBY; - case DISTANCE: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.DISTANCE; - case OTHER: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.OTHER; - default: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NULL; - } -} - - private static org.hl7.fhir.r4.model.SearchParameter.SearchComparator convertSearchComparator(org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQ: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.EQ; - case NE: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.NE; - case GT: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.GT; - case LT: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.LT; - case GE: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.GE; - case LE: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.LE; - case SA: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.SA; - case EB: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.EB; - case AP: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.AP; - default: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator convertSearchComparator(org.hl7.fhir.r4.model.SearchParameter.SearchComparator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQ: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.EQ; - case NE: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.NE; - case GT: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.GT; - case LT: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.LT; - case GE: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.GE; - case LE: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.LE; - case SA: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.SA; - case EB: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.EB; - case AP: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.AP; - default: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.NULL; - } -} - - private static org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode convertSearchModifierCode(org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MISSING: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.MISSING; - case EXACT: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.EXACT; - case CONTAINS: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.CONTAINS; - case NOT: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.NOT; - case TEXT: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.TEXT; - case IN: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.IN; - case NOTIN: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.NOTIN; - case BELOW: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.BELOW; - case ABOVE: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.ABOVE; - case TYPE: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.TYPE; - default: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode convertSearchModifierCode(org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case MISSING: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.MISSING; - case EXACT: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.EXACT; - case CONTAINS: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.CONTAINS; - case NOT: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.NOT; - case TEXT: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.TEXT; - case IN: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.IN; - case NOTIN: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.NOTIN; - case BELOW: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.BELOW; - case ABOVE: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.ABOVE; - case TYPE: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.TYPE; - default: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.NULL; - } -} - - public static org.hl7.fhir.r4.model.SearchParameter.SearchParameterComponentComponent convertSearchParameterComponentComponent(org.hl7.fhir.dstu3.model.SearchParameter.SearchParameterComponentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.SearchParameter.SearchParameterComponentComponent tgt = new org.hl7.fhir.r4.model.SearchParameter.SearchParameterComponentComponent(); - copyElement(src, tgt); - if (src.hasDefinition()) - tgt.setDefinition(convertReference(src.getDefinition())); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SearchParameter.SearchParameterComponentComponent convertSearchParameterComponentComponent(org.hl7.fhir.r4.model.SearchParameter.SearchParameterComponentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.SearchParameter.SearchParameterComponentComponent tgt = new org.hl7.fhir.dstu3.model.SearchParameter.SearchParameterComponentComponent(); - copyElement(src, tgt); - if (src.hasDefinition()) - tgt.setDefinition(convertReference(src.getDefinition())); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Sequence convertSequence(org.hl7.fhir.dstu3.model.Sequence src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Sequence tgt = new org.hl7.fhir.r4.model.Sequence(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasType()) - tgt.setType(convertSequenceType(src.getType())); - if (src.hasCoordinateSystem()) - tgt.setCoordinateSystem(src.getCoordinateSystem()); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasSpecimen()) - tgt.setSpecimen(convertReference(src.getSpecimen())); - if (src.hasDevice()) - tgt.setDevice(convertReference(src.getDevice())); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - if (src.hasQuantity()) - tgt.setQuantity(convertQuantity(src.getQuantity())); - if (src.hasReferenceSeq()) - tgt.setReferenceSeq(convertSequenceReferenceSeqComponent(src.getReferenceSeq())); - for (org.hl7.fhir.dstu3.model.Sequence.SequenceVariantComponent t : src.getVariant()) - tgt.addVariant(convertSequenceVariantComponent(t)); - if (src.hasObservedSeq()) - tgt.setObservedSeq(src.getObservedSeq()); - for (org.hl7.fhir.dstu3.model.Sequence.SequenceQualityComponent t : src.getQuality()) - tgt.addQuality(convertSequenceQualityComponent(t)); - if (src.hasReadCoverage()) - tgt.setReadCoverage(src.getReadCoverage()); - for (org.hl7.fhir.dstu3.model.Sequence.SequenceRepositoryComponent t : src.getRepository()) - tgt.addRepository(convertSequenceRepositoryComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPointer()) - tgt.addPointer(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Sequence convertSequence(org.hl7.fhir.r4.model.Sequence src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Sequence tgt = new org.hl7.fhir.dstu3.model.Sequence(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasType()) - tgt.setType(convertSequenceType(src.getType())); - if (src.hasCoordinateSystem()) - tgt.setCoordinateSystem(src.getCoordinateSystem()); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasSpecimen()) - tgt.setSpecimen(convertReference(src.getSpecimen())); - if (src.hasDevice()) - tgt.setDevice(convertReference(src.getDevice())); - if (src.hasPerformer()) - tgt.setPerformer(convertReference(src.getPerformer())); - if (src.hasQuantity()) - tgt.setQuantity(convertQuantity(src.getQuantity())); - if (src.hasReferenceSeq()) - tgt.setReferenceSeq(convertSequenceReferenceSeqComponent(src.getReferenceSeq())); - for (org.hl7.fhir.r4.model.Sequence.SequenceVariantComponent t : src.getVariant()) - tgt.addVariant(convertSequenceVariantComponent(t)); - if (src.hasObservedSeq()) - tgt.setObservedSeq(src.getObservedSeq()); - for (org.hl7.fhir.r4.model.Sequence.SequenceQualityComponent t : src.getQuality()) - tgt.addQuality(convertSequenceQualityComponent(t)); - if (src.hasReadCoverage()) - tgt.setReadCoverage(src.getReadCoverage()); - for (org.hl7.fhir.r4.model.Sequence.SequenceRepositoryComponent t : src.getRepository()) - tgt.addRepository(convertSequenceRepositoryComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPointer()) - tgt.addPointer(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Sequence.SequenceType convertSequenceType(org.hl7.fhir.dstu3.model.Sequence.SequenceType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case AA: return org.hl7.fhir.r4.model.Sequence.SequenceType.AA; - case DNA: return org.hl7.fhir.r4.model.Sequence.SequenceType.DNA; - case RNA: return org.hl7.fhir.r4.model.Sequence.SequenceType.RNA; - default: return org.hl7.fhir.r4.model.Sequence.SequenceType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Sequence.SequenceType convertSequenceType(org.hl7.fhir.r4.model.Sequence.SequenceType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case AA: return org.hl7.fhir.dstu3.model.Sequence.SequenceType.AA; - case DNA: return org.hl7.fhir.dstu3.model.Sequence.SequenceType.DNA; - case RNA: return org.hl7.fhir.dstu3.model.Sequence.SequenceType.RNA; - default: return org.hl7.fhir.dstu3.model.Sequence.SequenceType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Sequence.SequenceReferenceSeqComponent convertSequenceReferenceSeqComponent(org.hl7.fhir.dstu3.model.Sequence.SequenceReferenceSeqComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Sequence.SequenceReferenceSeqComponent tgt = new org.hl7.fhir.r4.model.Sequence.SequenceReferenceSeqComponent(); - copyElement(src, tgt); - if (src.hasChromosome()) - tgt.setChromosome(convertCodeableConcept(src.getChromosome())); - if (src.hasGenomeBuild()) - tgt.setGenomeBuild(src.getGenomeBuild()); - if (src.hasReferenceSeqId()) - tgt.setReferenceSeqId(convertCodeableConcept(src.getReferenceSeqId())); - if (src.hasReferenceSeqPointer()) - tgt.setReferenceSeqPointer(convertReference(src.getReferenceSeqPointer())); - if (src.hasReferenceSeqString()) - tgt.setReferenceSeqString(src.getReferenceSeqString()); - if (src.hasStrand()) - tgt.setStrand(src.getStrand()); - if (src.hasWindowStart()) - tgt.setWindowStart(src.getWindowStart()); - if (src.hasWindowEnd()) - tgt.setWindowEnd(src.getWindowEnd()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Sequence.SequenceReferenceSeqComponent convertSequenceReferenceSeqComponent(org.hl7.fhir.r4.model.Sequence.SequenceReferenceSeqComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Sequence.SequenceReferenceSeqComponent tgt = new org.hl7.fhir.dstu3.model.Sequence.SequenceReferenceSeqComponent(); - copyElement(src, tgt); - if (src.hasChromosome()) - tgt.setChromosome(convertCodeableConcept(src.getChromosome())); - if (src.hasGenomeBuild()) - tgt.setGenomeBuild(src.getGenomeBuild()); - if (src.hasReferenceSeqId()) - tgt.setReferenceSeqId(convertCodeableConcept(src.getReferenceSeqId())); - if (src.hasReferenceSeqPointer()) - tgt.setReferenceSeqPointer(convertReference(src.getReferenceSeqPointer())); - if (src.hasReferenceSeqString()) - tgt.setReferenceSeqString(src.getReferenceSeqString()); - if (src.hasStrand()) - tgt.setStrand(src.getStrand()); - if (src.hasWindowStart()) - tgt.setWindowStart(src.getWindowStart()); - if (src.hasWindowEnd()) - tgt.setWindowEnd(src.getWindowEnd()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Sequence.SequenceVariantComponent convertSequenceVariantComponent(org.hl7.fhir.dstu3.model.Sequence.SequenceVariantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Sequence.SequenceVariantComponent tgt = new org.hl7.fhir.r4.model.Sequence.SequenceVariantComponent(); - copyElement(src, tgt); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - if (src.hasObservedAllele()) - tgt.setObservedAllele(src.getObservedAllele()); - if (src.hasReferenceAllele()) - tgt.setReferenceAllele(src.getReferenceAllele()); - if (src.hasCigar()) - tgt.setCigar(src.getCigar()); - if (src.hasVariantPointer()) - tgt.setVariantPointer(convertReference(src.getVariantPointer())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Sequence.SequenceVariantComponent convertSequenceVariantComponent(org.hl7.fhir.r4.model.Sequence.SequenceVariantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Sequence.SequenceVariantComponent tgt = new org.hl7.fhir.dstu3.model.Sequence.SequenceVariantComponent(); - copyElement(src, tgt); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - if (src.hasObservedAllele()) - tgt.setObservedAllele(src.getObservedAllele()); - if (src.hasReferenceAllele()) - tgt.setReferenceAllele(src.getReferenceAllele()); - if (src.hasCigar()) - tgt.setCigar(src.getCigar()); - if (src.hasVariantPointer()) - tgt.setVariantPointer(convertReference(src.getVariantPointer())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Sequence.SequenceQualityComponent convertSequenceQualityComponent(org.hl7.fhir.dstu3.model.Sequence.SequenceQualityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Sequence.SequenceQualityComponent tgt = new org.hl7.fhir.r4.model.Sequence.SequenceQualityComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertQualityType(src.getType())); - if (src.hasStandardSequence()) - tgt.setStandardSequence(convertCodeableConcept(src.getStandardSequence())); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - if (src.hasScore()) - tgt.setScore(convertQuantity(src.getScore())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasTruthTP()) - tgt.setTruthTP(src.getTruthTP()); - if (src.hasQueryTP()) - tgt.setQueryTP(src.getQueryTP()); - if (src.hasTruthFN()) - tgt.setTruthFN(src.getTruthFN()); - if (src.hasQueryFP()) - tgt.setQueryFP(src.getQueryFP()); - if (src.hasGtFP()) - tgt.setGtFP(src.getGtFP()); - if (src.hasPrecision()) - tgt.setPrecision(src.getPrecision()); - if (src.hasRecall()) - tgt.setRecall(src.getRecall()); - if (src.hasFScore()) - tgt.setFScore(src.getFScore()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Sequence.SequenceQualityComponent convertSequenceQualityComponent(org.hl7.fhir.r4.model.Sequence.SequenceQualityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Sequence.SequenceQualityComponent tgt = new org.hl7.fhir.dstu3.model.Sequence.SequenceQualityComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertQualityType(src.getType())); - if (src.hasStandardSequence()) - tgt.setStandardSequence(convertCodeableConcept(src.getStandardSequence())); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - if (src.hasScore()) - tgt.setScore(convertQuantity(src.getScore())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasTruthTP()) - tgt.setTruthTP(src.getTruthTP()); - if (src.hasQueryTP()) - tgt.setQueryTP(src.getQueryTP()); - if (src.hasTruthFN()) - tgt.setTruthFN(src.getTruthFN()); - if (src.hasQueryFP()) - tgt.setQueryFP(src.getQueryFP()); - if (src.hasGtFP()) - tgt.setGtFP(src.getGtFP()); - if (src.hasPrecision()) - tgt.setPrecision(src.getPrecision()); - if (src.hasRecall()) - tgt.setRecall(src.getRecall()); - if (src.hasFScore()) - tgt.setFScore(src.getFScore()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Sequence.QualityType convertQualityType(org.hl7.fhir.dstu3.model.Sequence.QualityType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INDEL: return org.hl7.fhir.r4.model.Sequence.QualityType.INDEL; - case SNP: return org.hl7.fhir.r4.model.Sequence.QualityType.SNP; - case UNKNOWN: return org.hl7.fhir.r4.model.Sequence.QualityType.UNKNOWN; - default: return org.hl7.fhir.r4.model.Sequence.QualityType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Sequence.QualityType convertQualityType(org.hl7.fhir.r4.model.Sequence.QualityType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INDEL: return org.hl7.fhir.dstu3.model.Sequence.QualityType.INDEL; - case SNP: return org.hl7.fhir.dstu3.model.Sequence.QualityType.SNP; - case UNKNOWN: return org.hl7.fhir.dstu3.model.Sequence.QualityType.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.Sequence.QualityType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Sequence.SequenceRepositoryComponent convertSequenceRepositoryComponent(org.hl7.fhir.dstu3.model.Sequence.SequenceRepositoryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Sequence.SequenceRepositoryComponent tgt = new org.hl7.fhir.r4.model.Sequence.SequenceRepositoryComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertRepositoryType(src.getType())); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDatasetId()) - tgt.setDatasetId(src.getDatasetId()); - if (src.hasVariantsetId()) - tgt.setVariantsetId(src.getVariantsetId()); - if (src.hasReadsetId()) - tgt.setReadsetId(src.getReadsetId()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Sequence.SequenceRepositoryComponent convertSequenceRepositoryComponent(org.hl7.fhir.r4.model.Sequence.SequenceRepositoryComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Sequence.SequenceRepositoryComponent tgt = new org.hl7.fhir.dstu3.model.Sequence.SequenceRepositoryComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertRepositoryType(src.getType())); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDatasetId()) - tgt.setDatasetId(src.getDatasetId()); - if (src.hasVariantsetId()) - tgt.setVariantsetId(src.getVariantsetId()); - if (src.hasReadsetId()) - tgt.setReadsetId(src.getReadsetId()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Sequence.RepositoryType convertRepositoryType(org.hl7.fhir.dstu3.model.Sequence.RepositoryType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DIRECTLINK: return org.hl7.fhir.r4.model.Sequence.RepositoryType.DIRECTLINK; - case OPENAPI: return org.hl7.fhir.r4.model.Sequence.RepositoryType.OPENAPI; - case LOGIN: return org.hl7.fhir.r4.model.Sequence.RepositoryType.LOGIN; - case OAUTH: return org.hl7.fhir.r4.model.Sequence.RepositoryType.OAUTH; - case OTHER: return org.hl7.fhir.r4.model.Sequence.RepositoryType.OTHER; - default: return org.hl7.fhir.r4.model.Sequence.RepositoryType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Sequence.RepositoryType convertRepositoryType(org.hl7.fhir.r4.model.Sequence.RepositoryType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DIRECTLINK: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.DIRECTLINK; - case OPENAPI: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.OPENAPI; - case LOGIN: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.LOGIN; - case OAUTH: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.OAUTH; - case OTHER: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.OTHER; - default: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.NULL; - } -} - - public static org.hl7.fhir.r4.model.ServiceDefinition convertServiceDefinition(org.hl7.fhir.dstu3.model.ServiceDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ServiceDefinition tgt = new org.hl7.fhir.r4.model.ServiceDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTopic()) - tgt.addTopic(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.Contributor t : src.getContributor()) - tgt.addContributor(convertContributor(t)); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.dstu3.model.TriggerDefinition t : src.getTrigger()) - tgt.addTrigger(convertTriggerDefinition(t)); - for (org.hl7.fhir.dstu3.model.DataRequirement t : src.getDataRequirement()) - tgt.addDataRequirement(convertDataRequirement(t)); - if (src.hasOperationDefinition()) - tgt.setOperationDefinition(convertReference(src.getOperationDefinition())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ServiceDefinition convertServiceDefinition(org.hl7.fhir.r4.model.ServiceDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ServiceDefinition tgt = new org.hl7.fhir.dstu3.model.ServiceDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasUsage()) - tgt.setUsage(src.getUsage()); - if (src.hasApprovalDate()) - tgt.setApprovalDate(src.getApprovalDate()); - if (src.hasLastReviewDate()) - tgt.setLastReviewDate(src.getLastReviewDate()); - if (src.hasEffectivePeriod()) - tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTopic()) - tgt.addTopic(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.Contributor t : src.getContributor()) - tgt.addContributor(convertContributor(t)); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) - tgt.addRelatedArtifact(convertRelatedArtifact(t)); - for (org.hl7.fhir.r4.model.TriggerDefinition t : src.getTrigger()) - tgt.addTrigger(convertTriggerDefinition(t)); - for (org.hl7.fhir.r4.model.DataRequirement t : src.getDataRequirement()) - tgt.addDataRequirement(convertDataRequirement(t)); - if (src.hasOperationDefinition()) - tgt.setOperationDefinition(convertReference(src.getOperationDefinition())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Slot convertSlot(org.hl7.fhir.dstu3.model.Slot src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Slot tgt = new org.hl7.fhir.r4.model.Slot(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasServiceCategory()) - tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) - tgt.addServiceType(convertCodeableConcept(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(t)); - if (src.hasAppointmentType()) - tgt.setAppointmentType(convertCodeableConcept(src.getAppointmentType())); - if (src.hasSchedule()) - tgt.setSchedule(convertReference(src.getSchedule())); - if (src.hasStatus()) - tgt.setStatus(convertSlotStatus(src.getStatus())); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - if (src.hasOverbooked()) - tgt.setOverbooked(src.getOverbooked()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Slot convertSlot(org.hl7.fhir.r4.model.Slot src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Slot tgt = new org.hl7.fhir.dstu3.model.Slot(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasServiceCategory()) - tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) - tgt.addServiceType(convertCodeableConcept(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) - tgt.addSpecialty(convertCodeableConcept(t)); - if (src.hasAppointmentType()) - tgt.setAppointmentType(convertCodeableConcept(src.getAppointmentType())); - if (src.hasSchedule()) - tgt.setSchedule(convertReference(src.getSchedule())); - if (src.hasStatus()) - tgt.setStatus(convertSlotStatus(src.getStatus())); - if (src.hasStart()) - tgt.setStart(src.getStart()); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - if (src.hasOverbooked()) - tgt.setOverbooked(src.getOverbooked()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.dstu3.model.Slot.SlotStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BUSY: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSY; - case FREE: return org.hl7.fhir.r4.model.Slot.SlotStatus.FREE; - case BUSYUNAVAILABLE: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSYUNAVAILABLE; - case BUSYTENTATIVE: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSYTENTATIVE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Slot.SlotStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Slot.SlotStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.r4.model.Slot.SlotStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case BUSY: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSY; - case FREE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.FREE; - case BUSYUNAVAILABLE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSYUNAVAILABLE; - case BUSYTENTATIVE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSYTENTATIVE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Specimen convertSpecimen(org.hl7.fhir.dstu3.model.Specimen src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Specimen tgt = new org.hl7.fhir.r4.model.Specimen(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasAccessionIdentifier()) - tgt.setAccessionIdentifier(convertIdentifier(src.getAccessionIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertSpecimenStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasReceivedTime()) - tgt.setReceivedTime(src.getReceivedTime()); - for (org.hl7.fhir.dstu3.model.Reference t : src.getParent()) - tgt.addParent(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRequest()) - tgt.addRequest(convertReference(t)); - if (src.hasCollection()) - tgt.setCollection(convertSpecimenCollectionComponent(src.getCollection())); - for (org.hl7.fhir.dstu3.model.Specimen.SpecimenProcessingComponent t : src.getProcessing()) - tgt.addProcessing(convertSpecimenProcessingComponent(t)); - for (org.hl7.fhir.dstu3.model.Specimen.SpecimenContainerComponent t : src.getContainer()) - tgt.addContainer(convertSpecimenContainerComponent(t)); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Specimen convertSpecimen(org.hl7.fhir.r4.model.Specimen src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Specimen tgt = new org.hl7.fhir.dstu3.model.Specimen(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasAccessionIdentifier()) - tgt.setAccessionIdentifier(convertIdentifier(src.getAccessionIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertSpecimenStatus(src.getStatus())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSubject()) - tgt.setSubject(convertReference(src.getSubject())); - if (src.hasReceivedTime()) - tgt.setReceivedTime(src.getReceivedTime()); - for (org.hl7.fhir.r4.model.Reference t : src.getParent()) - tgt.addParent(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getRequest()) - tgt.addRequest(convertReference(t)); - if (src.hasCollection()) - tgt.setCollection(convertSpecimenCollectionComponent(src.getCollection())); - for (org.hl7.fhir.r4.model.Specimen.SpecimenProcessingComponent t : src.getProcessing()) - tgt.addProcessing(convertSpecimenProcessingComponent(t)); - for (org.hl7.fhir.r4.model.Specimen.SpecimenContainerComponent t : src.getContainer()) - tgt.addContainer(convertSpecimenContainerComponent(t)); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Specimen.SpecimenStatus convertSpecimenStatus(org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case AVAILABLE: return org.hl7.fhir.r4.model.Specimen.SpecimenStatus.AVAILABLE; - case UNAVAILABLE: return org.hl7.fhir.r4.model.Specimen.SpecimenStatus.UNAVAILABLE; - case UNSATISFACTORY: return org.hl7.fhir.r4.model.Specimen.SpecimenStatus.UNSATISFACTORY; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Specimen.SpecimenStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Specimen.SpecimenStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus convertSpecimenStatus(org.hl7.fhir.r4.model.Specimen.SpecimenStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case AVAILABLE: return org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus.AVAILABLE; - case UNAVAILABLE: return org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus.UNAVAILABLE; - case UNSATISFACTORY: return org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus.UNSATISFACTORY; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Specimen.SpecimenCollectionComponent convertSpecimenCollectionComponent(org.hl7.fhir.dstu3.model.Specimen.SpecimenCollectionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Specimen.SpecimenCollectionComponent tgt = new org.hl7.fhir.r4.model.Specimen.SpecimenCollectionComponent(); - copyElement(src, tgt); - if (src.hasCollector()) - tgt.setCollector(convertReference(src.getCollector())); - if (src.hasCollected()) - tgt.setCollected(convertType(src.getCollected())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Specimen.SpecimenCollectionComponent convertSpecimenCollectionComponent(org.hl7.fhir.r4.model.Specimen.SpecimenCollectionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Specimen.SpecimenCollectionComponent tgt = new org.hl7.fhir.dstu3.model.Specimen.SpecimenCollectionComponent(); - copyElement(src, tgt); - if (src.hasCollector()) - tgt.setCollector(convertReference(src.getCollector())); - if (src.hasCollected()) - tgt.setCollected(convertType(src.getCollected())); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasMethod()) - tgt.setMethod(convertCodeableConcept(src.getMethod())); - if (src.hasBodySite()) - tgt.setBodySite(convertCodeableConcept(src.getBodySite())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Specimen.SpecimenProcessingComponent convertSpecimenProcessingComponent(org.hl7.fhir.dstu3.model.Specimen.SpecimenProcessingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Specimen.SpecimenProcessingComponent tgt = new org.hl7.fhir.r4.model.Specimen.SpecimenProcessingComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasProcedure()) - tgt.setProcedure(convertCodeableConcept(src.getProcedure())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getAdditive()) - tgt.addAdditive(convertReference(t)); - if (src.hasTime()) - tgt.setTime(convertType(src.getTime())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Specimen.SpecimenProcessingComponent convertSpecimenProcessingComponent(org.hl7.fhir.r4.model.Specimen.SpecimenProcessingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Specimen.SpecimenProcessingComponent tgt = new org.hl7.fhir.dstu3.model.Specimen.SpecimenProcessingComponent(); - copyElement(src, tgt); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasProcedure()) - tgt.setProcedure(convertCodeableConcept(src.getProcedure())); - for (org.hl7.fhir.r4.model.Reference t : src.getAdditive()) - tgt.addAdditive(convertReference(t)); - if (src.hasTime()) - tgt.setTime(convertType(src.getTime())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Specimen.SpecimenContainerComponent convertSpecimenContainerComponent(org.hl7.fhir.dstu3.model.Specimen.SpecimenContainerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Specimen.SpecimenContainerComponent tgt = new org.hl7.fhir.r4.model.Specimen.SpecimenContainerComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasCapacity()) - tgt.setCapacity(convertSimpleQuantity(src.getCapacity())); - if (src.hasSpecimenQuantity()) - tgt.setSpecimenQuantity(convertSimpleQuantity(src.getSpecimenQuantity())); - if (src.hasAdditive()) - tgt.setAdditive(convertType(src.getAdditive())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Specimen.SpecimenContainerComponent convertSpecimenContainerComponent(org.hl7.fhir.r4.model.Specimen.SpecimenContainerComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Specimen.SpecimenContainerComponent tgt = new org.hl7.fhir.dstu3.model.Specimen.SpecimenContainerComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasCapacity()) - tgt.setCapacity(convertSimpleQuantity(src.getCapacity())); - if (src.hasSpecimenQuantity()) - tgt.setSpecimenQuantity(convertSimpleQuantity(src.getSpecimenQuantity())); - if (src.hasAdditive()) - tgt.setAdditive(convertType(src.getAdditive())); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.dstu3.model.StructureDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.Coding t : src.getKeyword()) - tgt.addKeyword(convertCoding(t)); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertStructureDefinitionMappingComponent(t)); - if (src.hasKind()) - tgt.setKind(convertStructureDefinitionKind(src.getKind())); - if (src.hasAbstract()) - tgt.setAbstract(src.getAbstract()); - if (src.hasContextType()) - tgt.setContextType(convertExtensionContext(src.getContextType())); - for (org.hl7.fhir.dstu3.model.StringType t : src.getContext()) - tgt.addContext(t.getValue()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getContextInvariant()) - tgt.addContextInvariant(t.getValue()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasBaseDefinition()) - tgt.setBaseDefinition(src.getBaseDefinition()); - if (src.hasDerivation()) - tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); - if (src.hasSnapshot()) - tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); - if (src.hasDifferential()) - tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.r4.model.StructureDefinition src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition tgt = new org.hl7.fhir.dstu3.model.StructureDefinition(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.Coding t : src.getKeyword()) - tgt.addKeyword(convertCoding(t)); - if (src.hasFhirVersion()) - tgt.setFhirVersion(src.getFhirVersion()); - for (org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) - tgt.addMapping(convertStructureDefinitionMappingComponent(t)); - if (src.hasKind()) - tgt.setKind(convertStructureDefinitionKind(src.getKind())); - if (src.hasAbstract()) - tgt.setAbstract(src.getAbstract()); - if (src.hasContextType()) - tgt.setContextType(convertExtensionContext(src.getContextType())); - for (org.hl7.fhir.r4.model.StringType t : src.getContext()) - tgt.addContext(t.getValue()); - for (org.hl7.fhir.r4.model.StringType t : src.getContextInvariant()) - tgt.addContextInvariant(t.getValue()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasBaseDefinition()) - tgt.setBaseDefinition(src.getBaseDefinition()); - if (src.hasDerivation()) - tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); - if (src.hasSnapshot()) - tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); - if (src.hasDifferential()) - tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); - return tgt; - } - - private static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRIMITIVETYPE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.PRIMITIVETYPE; - case COMPLEXTYPE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; - case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.RESOURCE; - case LOGICAL: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.LOGICAL; - default: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PRIMITIVETYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.PRIMITIVETYPE; - case COMPLEXTYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; - case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.RESOURCE; - case LOGICAL: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.LOGICAL; - default: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.NULL; - } -} - - private static org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.RESOURCE; - case DATATYPE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.DATATYPE; - case EXTENSION: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.EXTENSION; - default: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.RESOURCE; - case DATATYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.DATATYPE; - case EXTENSION: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.EXTENSION; - default: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.NULL; - } -} - - private static org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SPECIALIZATION: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; - case CONSTRAINT: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; - default: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SPECIALIZATION: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; - case CONSTRAINT: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; - default: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.NULL; - } -} - - public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - if (src.hasIdentity()) - tgt.setIdentity(src.getIdentity()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent(); - copyElement(src, tgt); - if (src.hasIdentity()) - tgt.setIdentity(src.getIdentity()); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasComment()) - tgt.setComment(src.getComment()); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) - tgt.addElement(convertElementDefinition(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureMap convertStructureMap(org.hl7.fhir.dstu3.model.StructureMap src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureMap tgt = new org.hl7.fhir.r4.model.StructureMap(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapStructureComponent t : src.getStructure()) - tgt.addStructure(convertStructureMapStructureComponent(t)); - for (org.hl7.fhir.dstu3.model.UriType t : src.getImport()) - tgt.addImport(t.getValue()); - for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupComponent t : src.getGroup()) - tgt.addGroup(convertStructureMapGroupComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureMap convertStructureMap(org.hl7.fhir.r4.model.StructureMap src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureMap tgt = new org.hl7.fhir.dstu3.model.StructureMap(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.StructureMap.StructureMapStructureComponent t : src.getStructure()) - tgt.addStructure(convertStructureMapStructureComponent(t)); - for (org.hl7.fhir.r4.model.UriType t : src.getImport()) - tgt.addImport(t.getValue()); - for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupComponent t : src.getGroup()) - tgt.addGroup(convertStructureMapGroupComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureMap.StructureMapStructureComponent convertStructureMapStructureComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapStructureComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureMap.StructureMapStructureComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapStructureComponent(); - copyElement(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasMode()) - tgt.setMode(convertStructureMapModelMode(src.getMode())); - if (src.hasAlias()) - tgt.setAlias(src.getAlias()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapStructureComponent convertStructureMapStructureComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapStructureComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureMap.StructureMapStructureComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapStructureComponent(); - copyElement(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasMode()) - tgt.setMode(convertStructureMapModelMode(src.getMode())); - if (src.hasAlias()) - tgt.setAlias(src.getAlias()); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode convertStructureMapModelMode(org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SOURCE: return org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode.SOURCE; - case QUERIED: return org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode.QUERIED; - case TARGET: return org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode.TARGET; - case PRODUCED: return org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode.PRODUCED; - default: return org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode convertStructureMapModelMode(org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SOURCE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode.SOURCE; - case QUERIED: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode.QUERIED; - case TARGET: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode.TARGET; - case PRODUCED: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode.PRODUCED; - default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupComponent convertStructureMapGroupComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureMap.StructureMapGroupComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasExtends()) - tgt.setExtends(src.getExtends()); - if (src.hasTypeMode()) - tgt.setTypeMode(convertStructureMapGroupTypeMode(src.getTypeMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupInputComponent t : src.getInput()) - tgt.addInput(convertStructureMapGroupInputComponent(t)); - for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent t : src.getRule()) - tgt.addRule(convertStructureMapGroupRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupComponent convertStructureMapGroupComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasExtends()) - tgt.setExtends(src.getExtends()); - if (src.hasTypeMode()) - tgt.setTypeMode(convertStructureMapGroupTypeMode(src.getTypeMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupInputComponent t : src.getInput()) - tgt.addInput(convertStructureMapGroupInputComponent(t)); - for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent t : src.getRule()) - tgt.addRule(convertStructureMapGroupRuleComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode convertStructureMapGroupTypeMode(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NONE: return org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode.NONE; - case TYPES: return org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode.TYPES; - case TYPEANDTYPES: return org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode.TYPEANDTYPES; - default: return org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode convertStructureMapGroupTypeMode(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case NONE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode.NONE; - case TYPES: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode.TYPES; - case TYPEANDTYPES: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode.TYPEANDTYPES; - default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupInputComponent convertStructureMapGroupInputComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupInputComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureMap.StructureMapGroupInputComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupInputComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasMode()) - tgt.setMode(convertStructureMapInputMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupInputComponent convertStructureMapGroupInputComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupInputComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupInputComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupInputComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasMode()) - tgt.setMode(convertStructureMapInputMode(src.getMode())); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - private static org.hl7.fhir.r4.model.StructureMap.StructureMapInputMode convertStructureMapInputMode(org.hl7.fhir.dstu3.model.StructureMap.StructureMapInputMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SOURCE: return org.hl7.fhir.r4.model.StructureMap.StructureMapInputMode.SOURCE; - case TARGET: return org.hl7.fhir.r4.model.StructureMap.StructureMapInputMode.TARGET; - default: return org.hl7.fhir.r4.model.StructureMap.StructureMapInputMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapInputMode convertStructureMapInputMode(org.hl7.fhir.r4.model.StructureMap.StructureMapInputMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case SOURCE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapInputMode.SOURCE; - case TARGET: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapInputMode.TARGET; - default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapInputMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent convertStructureMapGroupRuleComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleSourceComponent t : src.getSource()) - tgt.addSource(convertStructureMapGroupRuleSourceComponent(t)); - for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetComponent t : src.getTarget()) - tgt.addTarget(convertStructureMapGroupRuleTargetComponent(t)); - for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent t : src.getRule()) - tgt.addRule(convertStructureMapGroupRuleComponent(t)); - for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleDependentComponent t : src.getDependent()) - tgt.addDependent(convertStructureMapGroupRuleDependentComponent(t)); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent convertStructureMapGroupRuleComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleSourceComponent t : src.getSource()) - tgt.addSource(convertStructureMapGroupRuleSourceComponent(t)); - for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetComponent t : src.getTarget()) - tgt.addTarget(convertStructureMapGroupRuleTargetComponent(t)); - for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent t : src.getRule()) - tgt.addRule(convertStructureMapGroupRuleComponent(t)); - for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleDependentComponent t : src.getDependent()) - tgt.addDependent(convertStructureMapGroupRuleDependentComponent(t)); - if (src.hasDocumentation()) - tgt.setDocumentation(src.getDocumentation()); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleSourceComponent convertStructureMapGroupRuleSourceComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleSourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleSourceComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleSourceComponent(); - copyElement(src, tgt); - if (src.hasContext()) - tgt.setContext(src.getContext()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasDefaultValue()) - tgt.setDefaultValue(convertType(src.getDefaultValue())); - if (src.hasElement()) - tgt.setElement(src.getElement()); - if (src.hasListMode()) - tgt.setListMode(convertStructureMapSourceListMode(src.getListMode())); - if (src.hasVariable()) - tgt.setVariable(src.getVariable()); - if (src.hasCondition()) - tgt.setCondition(src.getCondition()); - if (src.hasCheck()) - tgt.setCheck(src.getCheck()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleSourceComponent convertStructureMapGroupRuleSourceComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleSourceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleSourceComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleSourceComponent(); - copyElement(src, tgt); - if (src.hasContext()) - tgt.setContext(src.getContext()); - if (src.hasMin()) - tgt.setMin(src.getMin()); - if (src.hasMax()) - tgt.setMax(src.getMax()); - if (src.hasType()) - tgt.setType(src.getType()); - if (src.hasDefaultValue()) - tgt.setDefaultValue(convertType(src.getDefaultValue())); - if (src.hasElement()) - tgt.setElement(src.getElement()); - if (src.hasListMode()) - tgt.setListMode(convertStructureMapSourceListMode(src.getListMode())); - if (src.hasVariable()) - tgt.setVariable(src.getVariable()); - if (src.hasCondition()) - tgt.setCondition(src.getCondition()); - if (src.hasCheck()) - tgt.setCheck(src.getCheck()); - return tgt; - } - - private static org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode convertStructureMapSourceListMode(org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FIRST: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.FIRST; - case NOTFIRST: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.NOTFIRST; - case LAST: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.LAST; - case NOTLAST: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.NOTLAST; - case ONLYONE: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.ONLYONE; - default: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode convertStructureMapSourceListMode(org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FIRST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.FIRST; - case NOTFIRST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.NOTFIRST; - case LAST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.LAST; - case NOTLAST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.NOTLAST; - case ONLYONE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.ONLYONE; - default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.NULL; - } -} - - public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetComponent convertStructureMapGroupRuleTargetComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetComponent(); - copyElement(src, tgt); - if (src.hasContext()) - tgt.setContext(src.getContext()); - if (src.hasContextType()) - tgt.setContextType(convertStructureMapContextType(src.getContextType())); - if (src.hasElement()) - tgt.setElement(src.getElement()); - if (src.hasVariable()) - tgt.setVariable(src.getVariable()); - for (org.hl7.fhir.dstu3.model.Enumeration t : src.getListMode()) - tgt.addListMode(convertStructureMapTargetListMode(t.getValue())); - if (src.hasListRuleId()) - tgt.setListRuleId(src.getListRuleId()); - if (src.hasTransform()) - tgt.setTransform(convertStructureMapTransform(src.getTransform())); - for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetParameterComponent t : src.getParameter()) - tgt.addParameter(convertStructureMapGroupRuleTargetParameterComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetComponent convertStructureMapGroupRuleTargetComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetComponent(); - copyElement(src, tgt); - if (src.hasContext()) - tgt.setContext(src.getContext()); - if (src.hasContextType()) - tgt.setContextType(convertStructureMapContextType(src.getContextType())); - if (src.hasElement()) - tgt.setElement(src.getElement()); - if (src.hasVariable()) - tgt.setVariable(src.getVariable()); - for (org.hl7.fhir.r4.model.Enumeration t : src.getListMode()) - tgt.addListMode(convertStructureMapTargetListMode(t.getValue())); - if (src.hasListRuleId()) - tgt.setListRuleId(src.getListRuleId()); - if (src.hasTransform()) - tgt.setTransform(convertStructureMapTransform(src.getTransform())); - for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetParameterComponent t : src.getParameter()) - tgt.addParameter(convertStructureMapGroupRuleTargetParameterComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.StructureMap.StructureMapContextType convertStructureMapContextType(org.hl7.fhir.dstu3.model.StructureMap.StructureMapContextType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TYPE: return org.hl7.fhir.r4.model.StructureMap.StructureMapContextType.TYPE; - case VARIABLE: return org.hl7.fhir.r4.model.StructureMap.StructureMapContextType.VARIABLE; - default: return org.hl7.fhir.r4.model.StructureMap.StructureMapContextType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapContextType convertStructureMapContextType(org.hl7.fhir.r4.model.StructureMap.StructureMapContextType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TYPE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapContextType.TYPE; - case VARIABLE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapContextType.VARIABLE; - default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapContextType.NULL; - } -} - - private static org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode convertStructureMapTargetListMode(org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FIRST: return org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode.FIRST; - case SHARE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode.SHARE; - case LAST: return org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode.LAST; - case COLLATE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode.COLLATE; - default: return org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode convertStructureMapTargetListMode(org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case FIRST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode.FIRST; - case SHARE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode.SHARE; - case LAST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode.LAST; - case COLLATE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode.COLLATE; - default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode.NULL; - } -} - - private static org.hl7.fhir.r4.model.StructureMap.StructureMapTransform convertStructureMapTransform(org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CREATE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.CREATE; - case COPY: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.COPY; - case TRUNCATE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.TRUNCATE; - case ESCAPE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.ESCAPE; - case CAST: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.CAST; - case APPEND: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.APPEND; - case TRANSLATE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.TRANSLATE; - case REFERENCE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.REFERENCE; - case DATEOP: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.DATEOP; - case UUID: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.UUID; - case POINTER: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.POINTER; - case EVALUATE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.EVALUATE; - case CC: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.CC; - case C: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.C; - case QTY: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.QTY; - case ID: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.ID; - case CP: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.CP; - default: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform convertStructureMapTransform(org.hl7.fhir.r4.model.StructureMap.StructureMapTransform src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case CREATE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.CREATE; - case COPY: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.COPY; - case TRUNCATE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.TRUNCATE; - case ESCAPE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.ESCAPE; - case CAST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.CAST; - case APPEND: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.APPEND; - case TRANSLATE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.TRANSLATE; - case REFERENCE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.REFERENCE; - case DATEOP: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.DATEOP; - case UUID: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.UUID; - case POINTER: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.POINTER; - case EVALUATE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.EVALUATE; - case CC: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.CC; - case C: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.C; - case QTY: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.QTY; - case ID: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.ID; - case CP: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.CP; - default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.NULL; - } -} - - public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetParameterComponent convertStructureMapGroupRuleTargetParameterComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetParameterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetParameterComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetParameterComponent(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetParameterComponent convertStructureMapGroupRuleTargetParameterComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetParameterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetParameterComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetParameterComponent(); - copyElement(src, tgt); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleDependentComponent convertStructureMapGroupRuleDependentComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleDependentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleDependentComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleDependentComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getVariable()) - tgt.addVariable(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleDependentComponent convertStructureMapGroupRuleDependentComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleDependentComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleDependentComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleDependentComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - for (org.hl7.fhir.r4.model.StringType t : src.getVariable()) - tgt.addVariable(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.Subscription convertSubscription(org.hl7.fhir.dstu3.model.Subscription src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Subscription tgt = new org.hl7.fhir.r4.model.Subscription(); - copyDomainResource(src, tgt); - if (src.hasStatus()) - tgt.setStatus(convertSubscriptionStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - if (src.hasReason()) - tgt.setReason(src.getReason()); - if (src.hasCriteria()) - tgt.setCriteria(src.getCriteria()); - if (src.hasError()) - tgt.setError(src.getError()); - if (src.hasChannel()) - tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); - for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Subscription convertSubscription(org.hl7.fhir.r4.model.Subscription src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Subscription tgt = new org.hl7.fhir.dstu3.model.Subscription(); - copyDomainResource(src, tgt); - if (src.hasStatus()) - tgt.setStatus(convertSubscriptionStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) - tgt.addContact(convertContactPoint(t)); - if (src.hasEnd()) - tgt.setEnd(src.getEnd()); - if (src.hasReason()) - tgt.setReason(src.getReason()); - if (src.hasCriteria()) - tgt.setCriteria(src.getCriteria()); - if (src.hasError()) - tgt.setError(src.getError()); - if (src.hasChannel()) - tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); - for (org.hl7.fhir.r4.model.Coding t : src.getTag()) - tgt.addTag(convertCoding(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUESTED: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.REQUESTED; - case ACTIVE: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.ACTIVE; - case ERROR: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.ERROR; - case OFF: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.OFF; - default: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.r4.model.Subscription.SubscriptionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case REQUESTED: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.REQUESTED; - case ACTIVE: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.ACTIVE; - case ERROR: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.ERROR; - case OFF: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.OFF; - default: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertSubscriptionChannelType(src.getType())); - if (src.hasEndpoint()) - tgt.setEndpoint(src.getEndpoint()); - if (src.hasPayload()) - tgt.setPayload(src.getPayload()); - for (org.hl7.fhir.dstu3.model.StringType t : src.getHeader()) - tgt.addHeader(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertSubscriptionChannelType(src.getType())); - if (src.hasEndpoint()) - tgt.setEndpoint(src.getEndpoint()); - if (src.hasPayload()) - tgt.setPayload(src.getPayload()); - for (org.hl7.fhir.r4.model.StringType t : src.getHeader()) - tgt.addHeader(t.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESTHOOK: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.RESTHOOK; - case WEBSOCKET: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.WEBSOCKET; - case EMAIL: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.EMAIL; - case SMS: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.SMS; - case MESSAGE: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.MESSAGE; - default: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESTHOOK: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.RESTHOOK; - case WEBSOCKET: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.WEBSOCKET; - case EMAIL: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.EMAIL; - case SMS: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.SMS; - case MESSAGE: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.MESSAGE; - default: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.NULL; - } -} - - public static org.hl7.fhir.r4.model.Substance convertSubstance(org.hl7.fhir.dstu3.model.Substance src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Substance tgt = new org.hl7.fhir.r4.model.Substance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertFHIRSubstanceStatus(src.getStatus())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent t : src.getInstance()) - tgt.addInstance(convertSubstanceInstanceComponent(t)); - for (org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) - tgt.addIngredient(convertSubstanceIngredientComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Substance convertSubstance(org.hl7.fhir.r4.model.Substance src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Substance tgt = new org.hl7.fhir.dstu3.model.Substance(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertFHIRSubstanceStatus(src.getStatus())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) - tgt.addCategory(convertCodeableConcept(t)); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent t : src.getInstance()) - tgt.addInstance(convertSubstanceInstanceComponent(t)); - for (org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) - tgt.addIngredient(convertSubstanceIngredientComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus convertFHIRSubstanceStatus(org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus convertFHIRSubstanceStatus(org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus.ACTIVE; - case INACTIVE: return org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus.INACTIVE; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasExpiry()) - tgt.setExpiry(src.getExpiry()); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasExpiry()) - tgt.setExpiry(src.getExpiry()); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent(); - copyElement(src, tgt); - if (src.hasQuantity()) - tgt.setQuantity(convertRatio(src.getQuantity())); - if (src.hasSubstance()) - tgt.setSubstance(convertType(src.getSubstance())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent(); - copyElement(src, tgt); - if (src.hasQuantity()) - tgt.setQuantity(convertRatio(src.getQuantity())); - if (src.hasSubstance()) - tgt.setSubstance(convertType(src.getSubstance())); - return tgt; - } - - public static org.hl7.fhir.r4.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.dstu3.model.SupplyDelivery src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.SupplyDelivery tgt = new org.hl7.fhir.r4.model.SupplyDelivery(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSuppliedItem()) - tgt.setSuppliedItem(convertSupplyDeliverySuppliedItemComponent(src.getSuppliedItem())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasSupplier()) - tgt.setSupplier(convertReference(src.getSupplier())); - if (src.hasDestination()) - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.r4.model.SupplyDelivery src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.SupplyDelivery tgt = new org.hl7.fhir.dstu3.model.SupplyDelivery(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasSuppliedItem()) - tgt.setSuppliedItem(convertSupplyDeliverySuppliedItemComponent(src.getSuppliedItem())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasSupplier()) - tgt.setSupplier(convertReference(src.getSupplier())); - if (src.hasDestination()) - tgt.setDestination(convertReference(src.getDestination())); - for (org.hl7.fhir.r4.model.Reference t : src.getReceiver()) - tgt.addReceiver(convertReference(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; - case ABANDONED: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case INPROGRESS: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; - case COMPLETED: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; - case ABANDONED: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent convertSupplyDeliverySuppliedItemComponent(org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent tgt = new org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent(); - copyElement(src, tgt); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent convertSupplyDeliverySuppliedItemComponent(org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent tgt = new org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent(); - copyElement(src, tgt); - if (src.hasQuantity()) - tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); - return tgt; - } - - public static org.hl7.fhir.r4.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.dstu3.model.SupplyRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.SupplyRequest tgt = new org.hl7.fhir.r4.model.SupplyRequest(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasPriority()) - tgt.setPriority(convertRequestPriority(src.getPriority())); - if (src.hasOrderedItem()) - tgt.setOrderedItem(convertSupplyRequestOrderedItemComponent(src.getOrderedItem())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasRequester()) - tgt.setRequester(convertSupplyRequestRequesterComponent(src.getRequester())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getSupplier()) - tgt.addSupplier(convertReference(t)); - if (src.hasReason()) - tgt.setReason(convertType(src.getReason())); - if (src.hasDeliverFrom()) - tgt.setDeliverFrom(convertReference(src.getDeliverFrom())); - if (src.hasDeliverTo()) - tgt.setDeliverTo(convertReference(src.getDeliverTo())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.r4.model.SupplyRequest src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.SupplyRequest tgt = new org.hl7.fhir.dstu3.model.SupplyRequest(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasStatus()) - tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); - if (src.hasCategory()) - tgt.setCategory(convertCodeableConcept(src.getCategory())); - if (src.hasPriority()) - tgt.setPriority(convertRequestPriority(src.getPriority())); - if (src.hasOrderedItem()) - tgt.setOrderedItem(convertSupplyRequestOrderedItemComponent(src.getOrderedItem())); - if (src.hasOccurrence()) - tgt.setOccurrence(convertType(src.getOccurrence())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasRequester()) - tgt.setRequester(convertSupplyRequestRequesterComponent(src.getRequester())); - for (org.hl7.fhir.r4.model.Reference t : src.getSupplier()) - tgt.addSupplier(convertReference(t)); - if (src.hasReason()) - tgt.setReason(convertType(src.getReason())); - if (src.hasDeliverFrom()) - tgt.setDeliverFrom(convertReference(src.getDeliverFrom())); - if (src.hasDeliverTo()) - tgt.setDeliverTo(convertReference(src.getDeliverTo())); - return tgt; - } - - private static org.hl7.fhir.r4.model.SupplyRequest.RequestPriority convertRequestPriority(org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.r4.model.SupplyRequest.RequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.r4.model.SupplyRequest.RequestPriority.URGENT; - case ASAP: return org.hl7.fhir.r4.model.SupplyRequest.RequestPriority.ASAP; - case STAT: return org.hl7.fhir.r4.model.SupplyRequest.RequestPriority.STAT; - default: return org.hl7.fhir.r4.model.SupplyRequest.RequestPriority.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority convertRequestPriority(org.hl7.fhir.r4.model.SupplyRequest.RequestPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority.ROUTINE; - case URGENT: return org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority.URGENT; - case ASAP: return org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority.ASAP; - case STAT: return org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority.STAT; - default: return org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority.NULL; - } -} - - - private static org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.UNKNOWN; - default: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.DRAFT; - case ACTIVE: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.ACTIVE; - case SUSPENDED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.SUSPENDED; - case CANCELLED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.CANCELLED; - case COMPLETED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.ENTEREDINERROR; - case UNKNOWN: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.UNKNOWN; - default: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestOrderedItemComponent convertSupplyRequestOrderedItemComponent(org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestOrderedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestOrderedItemComponent tgt = new org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestOrderedItemComponent(); - copyElement(src, tgt); - if (src.hasQuantity()) - tgt.setQuantity(convertQuantity(src.getQuantity())); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestOrderedItemComponent convertSupplyRequestOrderedItemComponent(org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestOrderedItemComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestOrderedItemComponent tgt = new org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestOrderedItemComponent(); - copyElement(src, tgt); - if (src.hasQuantity()) - tgt.setQuantity(convertQuantity(src.getQuantity())); - if (src.hasItem()) - tgt.setItem(convertType(src.getItem())); - return tgt; - } - - public static org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestRequesterComponent convertSupplyRequestRequesterComponent(org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestRequesterComponent convertSupplyRequestRequesterComponent(org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestRequesterComponent tgt = new org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Task convertTask(org.hl7.fhir.dstu3.model.Task src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Task tgt = new org.hl7.fhir.r4.model.Task(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasDefinition()) - tgt.setDefinition(convertType(src.getDefinition())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasGroupIdentifier()) - tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertTaskStatus(src.getStatus())); - if (src.hasStatusReason()) - tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); - if (src.hasBusinessStatus()) - tgt.setBusinessStatus(convertCodeableConcept(src.getBusinessStatus())); - if (src.hasIntent()) - tgt.setIntent(convertTaskIntent(src.getIntent())); - if (src.hasPriority()) - tgt.setPriority(convertTaskPriority(src.getPriority())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasFocus()) - tgt.setFocus(convertReference(src.getFocus())); - if (src.hasFor()) - tgt.setFor(convertReference(src.getFor())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasExecutionPeriod()) - tgt.setExecutionPeriod(convertPeriod(src.getExecutionPeriod())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasLastModified()) - tgt.setLastModified(src.getLastModified()); - if (src.hasRequester()) - tgt.setRequester(convertTaskRequesterComponent(src.getRequester())); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPerformerType()) - tgt.addPerformerType(convertCodeableConcept(t)); - if (src.hasOwner()) - tgt.setOwner(convertReference(src.getOwner())); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRelevantHistory()) - tgt.addRelevantHistory(convertReference(t)); - if (src.hasRestriction()) - tgt.setRestriction(convertTaskRestrictionComponent(src.getRestriction())); - for (org.hl7.fhir.dstu3.model.Task.ParameterComponent t : src.getInput()) - tgt.addInput(convertParameterComponent(t)); - for (org.hl7.fhir.dstu3.model.Task.TaskOutputComponent t : src.getOutput()) - tgt.addOutput(convertTaskOutputComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Task convertTask(org.hl7.fhir.r4.model.Task src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Task tgt = new org.hl7.fhir.dstu3.model.Task(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasDefinition()) - tgt.setDefinition(convertType(src.getDefinition())); - for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) - tgt.addBasedOn(convertReference(t)); - if (src.hasGroupIdentifier()) - tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); - for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) - tgt.addPartOf(convertReference(t)); - if (src.hasStatus()) - tgt.setStatus(convertTaskStatus(src.getStatus())); - if (src.hasStatusReason()) - tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); - if (src.hasBusinessStatus()) - tgt.setBusinessStatus(convertCodeableConcept(src.getBusinessStatus())); - if (src.hasIntent()) - tgt.setIntent(convertTaskIntent(src.getIntent())); - if (src.hasPriority()) - tgt.setPriority(convertTaskPriority(src.getPriority())); - if (src.hasCode()) - tgt.setCode(convertCodeableConcept(src.getCode())); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasFocus()) - tgt.setFocus(convertReference(src.getFocus())); - if (src.hasFor()) - tgt.setFor(convertReference(src.getFor())); - if (src.hasContext()) - tgt.setContext(convertReference(src.getContext())); - if (src.hasExecutionPeriod()) - tgt.setExecutionPeriod(convertPeriod(src.getExecutionPeriod())); - if (src.hasAuthoredOn()) - tgt.setAuthoredOn(src.getAuthoredOn()); - if (src.hasLastModified()) - tgt.setLastModified(src.getLastModified()); - if (src.hasRequester()) - tgt.setRequester(convertTaskRequesterComponent(src.getRequester())); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPerformerType()) - tgt.addPerformerType(convertCodeableConcept(t)); - if (src.hasOwner()) - tgt.setOwner(convertReference(src.getOwner())); - if (src.hasReason()) - tgt.setReason(convertCodeableConcept(src.getReason())); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getRelevantHistory()) - tgt.addRelevantHistory(convertReference(t)); - if (src.hasRestriction()) - tgt.setRestriction(convertTaskRestrictionComponent(src.getRestriction())); - for (org.hl7.fhir.r4.model.Task.ParameterComponent t : src.getInput()) - tgt.addInput(convertParameterComponent(t)); - for (org.hl7.fhir.r4.model.Task.TaskOutputComponent t : src.getOutput()) - tgt.addOutput(convertTaskOutputComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.Task.TaskStatus convertTaskStatus(org.hl7.fhir.dstu3.model.Task.TaskStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.r4.model.Task.TaskStatus.DRAFT; - case REQUESTED: return org.hl7.fhir.r4.model.Task.TaskStatus.REQUESTED; - case RECEIVED: return org.hl7.fhir.r4.model.Task.TaskStatus.RECEIVED; - case ACCEPTED: return org.hl7.fhir.r4.model.Task.TaskStatus.ACCEPTED; - case REJECTED: return org.hl7.fhir.r4.model.Task.TaskStatus.REJECTED; - case READY: return org.hl7.fhir.r4.model.Task.TaskStatus.READY; - case CANCELLED: return org.hl7.fhir.r4.model.Task.TaskStatus.CANCELLED; - case INPROGRESS: return org.hl7.fhir.r4.model.Task.TaskStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.r4.model.Task.TaskStatus.ONHOLD; - case FAILED: return org.hl7.fhir.r4.model.Task.TaskStatus.FAILED; - case COMPLETED: return org.hl7.fhir.r4.model.Task.TaskStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.Task.TaskStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.Task.TaskStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Task.TaskStatus convertTaskStatus(org.hl7.fhir.r4.model.Task.TaskStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DRAFT: return org.hl7.fhir.dstu3.model.Task.TaskStatus.DRAFT; - case REQUESTED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.REQUESTED; - case RECEIVED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.RECEIVED; - case ACCEPTED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.ACCEPTED; - case REJECTED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.REJECTED; - case READY: return org.hl7.fhir.dstu3.model.Task.TaskStatus.READY; - case CANCELLED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.CANCELLED; - case INPROGRESS: return org.hl7.fhir.dstu3.model.Task.TaskStatus.INPROGRESS; - case ONHOLD: return org.hl7.fhir.dstu3.model.Task.TaskStatus.ONHOLD; - case FAILED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.FAILED; - case COMPLETED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.COMPLETED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Task.TaskStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.Task.TaskStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.Task.TaskIntent convertTaskIntent(org.hl7.fhir.dstu3.model.Task.TaskIntent src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSAL: return org.hl7.fhir.r4.model.Task.TaskIntent.PROPOSAL; - case PLAN: return org.hl7.fhir.r4.model.Task.TaskIntent.PLAN; - case ORDER: return org.hl7.fhir.r4.model.Task.TaskIntent.ORDER; - case ORIGINALORDER: return org.hl7.fhir.r4.model.Task.TaskIntent.ORIGINALORDER; - case REFLEXORDER: return org.hl7.fhir.r4.model.Task.TaskIntent.REFLEXORDER; - case FILLERORDER: return org.hl7.fhir.r4.model.Task.TaskIntent.FILLERORDER; - case INSTANCEORDER: return org.hl7.fhir.r4.model.Task.TaskIntent.INSTANCEORDER; - case OPTION: return org.hl7.fhir.r4.model.Task.TaskIntent.OPTION; - default: return org.hl7.fhir.r4.model.Task.TaskIntent.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Task.TaskIntent convertTaskIntent(org.hl7.fhir.r4.model.Task.TaskIntent src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PROPOSAL: return org.hl7.fhir.dstu3.model.Task.TaskIntent.PROPOSAL; - case PLAN: return org.hl7.fhir.dstu3.model.Task.TaskIntent.PLAN; - case ORDER: return org.hl7.fhir.dstu3.model.Task.TaskIntent.ORDER; - case ORIGINALORDER: return org.hl7.fhir.dstu3.model.Task.TaskIntent.ORIGINALORDER; - case REFLEXORDER: return org.hl7.fhir.dstu3.model.Task.TaskIntent.REFLEXORDER; - case FILLERORDER: return org.hl7.fhir.dstu3.model.Task.TaskIntent.FILLERORDER; - case INSTANCEORDER: return org.hl7.fhir.dstu3.model.Task.TaskIntent.INSTANCEORDER; - case OPTION: return org.hl7.fhir.dstu3.model.Task.TaskIntent.OPTION; - default: return org.hl7.fhir.dstu3.model.Task.TaskIntent.NULL; - } -} - - private static org.hl7.fhir.r4.model.Task.TaskPriority convertTaskPriority(org.hl7.fhir.dstu3.model.Task.TaskPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.r4.model.Task.TaskPriority.ROUTINE; - case URGENT: return org.hl7.fhir.r4.model.Task.TaskPriority.URGENT; - case ASAP: return org.hl7.fhir.r4.model.Task.TaskPriority.ASAP; - case STAT: return org.hl7.fhir.r4.model.Task.TaskPriority.STAT; - default: return org.hl7.fhir.r4.model.Task.TaskPriority.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.Task.TaskPriority convertTaskPriority(org.hl7.fhir.r4.model.Task.TaskPriority src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ROUTINE: return org.hl7.fhir.dstu3.model.Task.TaskPriority.ROUTINE; - case URGENT: return org.hl7.fhir.dstu3.model.Task.TaskPriority.URGENT; - case ASAP: return org.hl7.fhir.dstu3.model.Task.TaskPriority.ASAP; - case STAT: return org.hl7.fhir.dstu3.model.Task.TaskPriority.STAT; - default: return org.hl7.fhir.dstu3.model.Task.TaskPriority.NULL; - } -} - - public static org.hl7.fhir.r4.model.Task.TaskRequesterComponent convertTaskRequesterComponent(org.hl7.fhir.dstu3.model.Task.TaskRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Task.TaskRequesterComponent tgt = new org.hl7.fhir.r4.model.Task.TaskRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Task.TaskRequesterComponent convertTaskRequesterComponent(org.hl7.fhir.r4.model.Task.TaskRequesterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Task.TaskRequesterComponent tgt = new org.hl7.fhir.dstu3.model.Task.TaskRequesterComponent(); - copyElement(src, tgt); - if (src.hasAgent()) - tgt.setAgent(convertReference(src.getAgent())); - if (src.hasOnBehalfOf()) - tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Task.TaskRestrictionComponent convertTaskRestrictionComponent(org.hl7.fhir.dstu3.model.Task.TaskRestrictionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Task.TaskRestrictionComponent tgt = new org.hl7.fhir.r4.model.Task.TaskRestrictionComponent(); - copyElement(src, tgt); - if (src.hasRepetitions()) - tgt.setRepetitions(src.getRepetitions()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Task.TaskRestrictionComponent convertTaskRestrictionComponent(org.hl7.fhir.r4.model.Task.TaskRestrictionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Task.TaskRestrictionComponent tgt = new org.hl7.fhir.dstu3.model.Task.TaskRestrictionComponent(); - copyElement(src, tgt); - if (src.hasRepetitions()) - tgt.setRepetitions(src.getRepetitions()); - if (src.hasPeriod()) - tgt.setPeriod(convertPeriod(src.getPeriod())); - for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) - tgt.addRecipient(convertReference(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.Task.ParameterComponent convertParameterComponent(org.hl7.fhir.dstu3.model.Task.ParameterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Task.ParameterComponent tgt = new org.hl7.fhir.r4.model.Task.ParameterComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Task.ParameterComponent convertParameterComponent(org.hl7.fhir.r4.model.Task.ParameterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Task.ParameterComponent tgt = new org.hl7.fhir.dstu3.model.Task.ParameterComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.Task.TaskOutputComponent convertTaskOutputComponent(org.hl7.fhir.dstu3.model.Task.TaskOutputComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.Task.TaskOutputComponent tgt = new org.hl7.fhir.r4.model.Task.TaskOutputComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.Task.TaskOutputComponent convertTaskOutputComponent(org.hl7.fhir.r4.model.Task.TaskOutputComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.Task.TaskOutputComponent tgt = new org.hl7.fhir.dstu3.model.Task.TaskOutputComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCodeableConcept(src.getType())); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestReport convertTestReport(org.hl7.fhir.dstu3.model.TestReport src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestReport tgt = new org.hl7.fhir.r4.model.TestReport(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertTestReportStatus(src.getStatus())); - if (src.hasTestScript()) - tgt.setTestScript(convertReference(src.getTestScript())); - if (src.hasResult()) - tgt.setResult(convertTestReportResult(src.getResult())); - if (src.hasScore()) - tgt.setScore(src.getScore()); - if (src.hasTester()) - tgt.setTester(src.getTester()); - if (src.hasIssued()) - tgt.setIssued(src.getIssued()); - for (org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertTestReportParticipantComponent(t)); - if (src.hasSetup()) - tgt.setSetup(convertTestReportSetupComponent(src.getSetup())); - for (org.hl7.fhir.dstu3.model.TestReport.TestReportTestComponent t : src.getTest()) - tgt.addTest(convertTestReportTestComponent(t)); - if (src.hasTeardown()) - tgt.setTeardown(convertTestReportTeardownComponent(src.getTeardown())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestReport convertTestReport(org.hl7.fhir.r4.model.TestReport src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestReport tgt = new org.hl7.fhir.dstu3.model.TestReport(); - copyDomainResource(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasStatus()) - tgt.setStatus(convertTestReportStatus(src.getStatus())); - if (src.hasTestScript()) - tgt.setTestScript(convertReference(src.getTestScript())); - if (src.hasResult()) - tgt.setResult(convertTestReportResult(src.getResult())); - if (src.hasScore()) - tgt.setScore(src.getScore()); - if (src.hasTester()) - tgt.setTester(src.getTester()); - if (src.hasIssued()) - tgt.setIssued(src.getIssued()); - for (org.hl7.fhir.r4.model.TestReport.TestReportParticipantComponent t : src.getParticipant()) - tgt.addParticipant(convertTestReportParticipantComponent(t)); - if (src.hasSetup()) - tgt.setSetup(convertTestReportSetupComponent(src.getSetup())); - for (org.hl7.fhir.r4.model.TestReport.TestReportTestComponent t : src.getTest()) - tgt.addTest(convertTestReportTestComponent(t)); - if (src.hasTeardown()) - tgt.setTeardown(convertTestReportTeardownComponent(src.getTeardown())); - return tgt; - } - - private static org.hl7.fhir.r4.model.TestReport.TestReportStatus convertTestReportStatus(org.hl7.fhir.dstu3.model.TestReport.TestReportStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPLETED: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.COMPLETED; - case INPROGRESS: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.INPROGRESS; - case WAITING: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.WAITING; - case STOPPED: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.STOPPED; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.TestReport.TestReportStatus convertTestReportStatus(org.hl7.fhir.r4.model.TestReport.TestReportStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case COMPLETED: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.COMPLETED; - case INPROGRESS: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.INPROGRESS; - case WAITING: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.WAITING; - case STOPPED: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.STOPPED; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.NULL; - } -} - - private static org.hl7.fhir.r4.model.TestReport.TestReportResult convertTestReportResult(org.hl7.fhir.dstu3.model.TestReport.TestReportResult src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PASS: return org.hl7.fhir.r4.model.TestReport.TestReportResult.PASS; - case FAIL: return org.hl7.fhir.r4.model.TestReport.TestReportResult.FAIL; - case PENDING: return org.hl7.fhir.r4.model.TestReport.TestReportResult.PENDING; - default: return org.hl7.fhir.r4.model.TestReport.TestReportResult.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.TestReport.TestReportResult convertTestReportResult(org.hl7.fhir.r4.model.TestReport.TestReportResult src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PASS: return org.hl7.fhir.dstu3.model.TestReport.TestReportResult.PASS; - case FAIL: return org.hl7.fhir.dstu3.model.TestReport.TestReportResult.FAIL; - case PENDING: return org.hl7.fhir.dstu3.model.TestReport.TestReportResult.PENDING; - default: return org.hl7.fhir.dstu3.model.TestReport.TestReportResult.NULL; - } -} - - public static org.hl7.fhir.r4.model.TestReport.TestReportParticipantComponent convertTestReportParticipantComponent(org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestReport.TestReportParticipantComponent tgt = new org.hl7.fhir.r4.model.TestReport.TestReportParticipantComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertTestReportParticipantType(src.getType())); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantComponent convertTestReportParticipantComponent(org.hl7.fhir.r4.model.TestReport.TestReportParticipantComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertTestReportParticipantType(src.getType())); - if (src.hasUri()) - tgt.setUri(src.getUri()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - return tgt; - } - - private static org.hl7.fhir.r4.model.TestReport.TestReportParticipantType convertTestReportParticipantType(org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TESTENGINE: return org.hl7.fhir.r4.model.TestReport.TestReportParticipantType.TESTENGINE; - case CLIENT: return org.hl7.fhir.r4.model.TestReport.TestReportParticipantType.CLIENT; - case SERVER: return org.hl7.fhir.r4.model.TestReport.TestReportParticipantType.SERVER; - default: return org.hl7.fhir.r4.model.TestReport.TestReportParticipantType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType convertTestReportParticipantType(org.hl7.fhir.r4.model.TestReport.TestReportParticipantType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case TESTENGINE: return org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType.TESTENGINE; - case CLIENT: return org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType.CLIENT; - case SERVER: return org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType.SERVER; - default: return org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType.NULL; - } -} - - public static org.hl7.fhir.r4.model.TestReport.TestReportSetupComponent convertTestReportSetupComponent(org.hl7.fhir.dstu3.model.TestReport.TestReportSetupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestReport.TestReportSetupComponent tgt = new org.hl7.fhir.r4.model.TestReport.TestReportSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestReport.SetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestReport.TestReportSetupComponent convertTestReportSetupComponent(org.hl7.fhir.r4.model.TestReport.TestReportSetupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestReport.TestReportSetupComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TestReportSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestReport.SetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestReport.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu3.model.TestReport.SetupActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestReport.SetupActionComponent tgt = new org.hl7.fhir.r4.model.TestReport.SetupActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - if (src.hasAssert()) - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestReport.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.r4.model.TestReport.SetupActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestReport.SetupActionComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.SetupActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - if (src.hasAssert()) - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestReport.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu3.model.TestReport.SetupActionOperationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestReport.SetupActionOperationComponent tgt = new org.hl7.fhir.r4.model.TestReport.SetupActionOperationComponent(); - copyElement(src, tgt); - if (src.hasResult()) - tgt.setResult(convertTestReportActionResult(src.getResult())); - if (src.hasMessage()) - tgt.setMessage(src.getMessage()); - if (src.hasDetail()) - tgt.setDetail(src.getDetail()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestReport.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.r4.model.TestReport.SetupActionOperationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestReport.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.SetupActionOperationComponent(); - copyElement(src, tgt); - if (src.hasResult()) - tgt.setResult(convertTestReportActionResult(src.getResult())); - if (src.hasMessage()) - tgt.setMessage(src.getMessage()); - if (src.hasDetail()) - tgt.setDetail(src.getDetail()); - return tgt; - } - - private static org.hl7.fhir.r4.model.TestReport.TestReportActionResult convertTestReportActionResult(org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PASS: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.PASS; - case SKIP: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.SKIP; - case FAIL: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.FAIL; - case WARNING: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.WARNING; - case ERROR: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.ERROR; - default: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult convertTestReportActionResult(org.hl7.fhir.r4.model.TestReport.TestReportActionResult src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case PASS: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.PASS; - case SKIP: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.SKIP; - case FAIL: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.FAIL; - case WARNING: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.WARNING; - case ERROR: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.ERROR; - default: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.NULL; - } -} - - public static org.hl7.fhir.r4.model.TestReport.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu3.model.TestReport.SetupActionAssertComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestReport.SetupActionAssertComponent tgt = new org.hl7.fhir.r4.model.TestReport.SetupActionAssertComponent(); - copyElement(src, tgt); - if (src.hasResult()) - tgt.setResult(convertTestReportActionResult(src.getResult())); - if (src.hasMessage()) - tgt.setMessage(src.getMessage()); - if (src.hasDetail()) - tgt.setDetail(src.getDetail()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestReport.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.r4.model.TestReport.SetupActionAssertComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestReport.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.SetupActionAssertComponent(); - copyElement(src, tgt); - if (src.hasResult()) - tgt.setResult(convertTestReportActionResult(src.getResult())); - if (src.hasMessage()) - tgt.setMessage(src.getMessage()); - if (src.hasDetail()) - tgt.setDetail(src.getDetail()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestReport.TestReportTestComponent convertTestReportTestComponent(org.hl7.fhir.dstu3.model.TestReport.TestReportTestComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestReport.TestReportTestComponent tgt = new org.hl7.fhir.r4.model.TestReport.TestReportTestComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.TestReport.TestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestReport.TestReportTestComponent convertTestReportTestComponent(org.hl7.fhir.r4.model.TestReport.TestReportTestComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestReport.TestReportTestComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TestReportTestComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.TestReport.TestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestReport.TestActionComponent convertTestActionComponent(org.hl7.fhir.dstu3.model.TestReport.TestActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestReport.TestActionComponent tgt = new org.hl7.fhir.r4.model.TestReport.TestActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - if (src.hasAssert()) - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestReport.TestActionComponent convertTestActionComponent(org.hl7.fhir.r4.model.TestReport.TestActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestReport.TestActionComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TestActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - if (src.hasAssert()) - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestReport.TestReportTeardownComponent convertTestReportTeardownComponent(org.hl7.fhir.dstu3.model.TestReport.TestReportTeardownComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestReport.TestReportTeardownComponent tgt = new org.hl7.fhir.r4.model.TestReport.TestReportTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestReport.TeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestReport.TestReportTeardownComponent convertTestReportTeardownComponent(org.hl7.fhir.r4.model.TestReport.TestReportTeardownComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestReport.TestReportTeardownComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TestReportTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestReport.TeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestReport.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu3.model.TestReport.TeardownActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestReport.TeardownActionComponent tgt = new org.hl7.fhir.r4.model.TestReport.TeardownActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestReport.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.r4.model.TestReport.TeardownActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestReport.TeardownActionComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TeardownActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript convertTestScript(org.hl7.fhir.dstu3.model.TestScript src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript tgt = new org.hl7.fhir.r4.model.TestScript(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) - tgt.addOrigin(convertTestScriptOriginComponent(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) - tgt.addDestination(convertTestScriptDestinationComponent(t)); - if (src.hasMetadata()) - tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) - tgt.addFixture(convertTestScriptFixtureComponent(t)); - for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent t : src.getVariable()) - tgt.addVariable(convertTestScriptVariableComponent(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent t : src.getRule()) - tgt.addRule(convertTestScriptRuleComponent(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) - tgt.addRuleset(convertTestScriptRulesetComponent(t)); - if (src.hasSetup()) - tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent t : src.getTest()) - tgt.addTest(convertTestScriptTestComponent(t)); - if (src.hasTeardown()) - tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript convertTestScript(org.hl7.fhir.r4.model.TestScript src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript tgt = new org.hl7.fhir.dstu3.model.TestScript(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasIdentifier()) - tgt.setIdentifier(convertIdentifier(src.getIdentifier())); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - for (org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) - tgt.addOrigin(convertTestScriptOriginComponent(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) - tgt.addDestination(convertTestScriptDestinationComponent(t)); - if (src.hasMetadata()) - tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); - for (org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) - tgt.addFixture(convertTestScriptFixtureComponent(t)); - for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) - tgt.addProfile(convertReference(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent t : src.getVariable()) - tgt.addVariable(convertTestScriptVariableComponent(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent t : src.getRule()) - tgt.addRule(convertTestScriptRuleComponent(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) - tgt.addRuleset(convertTestScriptRulesetComponent(t)); - if (src.hasSetup()) - tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); - for (org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent t : src.getTest()) - tgt.addTest(convertTestScriptTestComponent(t)); - if (src.hasTeardown()) - tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent(); - copyElement(src, tgt); - if (src.hasIndex()) - tgt.setIndex(src.getIndex()); - if (src.hasProfile()) - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent(); - copyElement(src, tgt); - if (src.hasIndex()) - tgt.setIndex(src.getIndex()); - if (src.hasProfile()) - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent(); - copyElement(src, tgt); - if (src.hasIndex()) - tgt.setIndex(src.getIndex()); - if (src.hasProfile()) - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent(); - copyElement(src, tgt); - if (src.hasIndex()) - tgt.setIndex(src.getIndex()); - if (src.hasProfile()) - tgt.setProfile(convertCoding(src.getProfile())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) - tgt.addLink(convertTestScriptMetadataLinkComponent(t)); - for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) - tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) - tgt.addLink(convertTestScriptMetadataLinkComponent(t)); - for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) - tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent(); - copyElement(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent(); - copyElement(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent(); - copyElement(src, tgt); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasValidated()) - tgt.setValidated(src.getValidated()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.IntegerType t : src.getOrigin()) - tgt.addOrigin(t.getValue()); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - for (org.hl7.fhir.dstu3.model.UriType t : src.getLink()) - tgt.addLink(t.getValue()); - if (src.hasCapabilities()) - tgt.setCapabilities(convertReference(src.getCapabilities())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent(); - copyElement(src, tgt); - if (src.hasRequired()) - tgt.setRequired(src.getRequired()); - if (src.hasValidated()) - tgt.setValidated(src.getValidated()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.IntegerType t : src.getOrigin()) - tgt.addOrigin(t.getValue()); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - for (org.hl7.fhir.r4.model.UriType t : src.getLink()) - tgt.addLink(t.getValue()); - if (src.hasCapabilities()) - tgt.setCapabilities(convertReference(src.getCapabilities())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent(); - copyElement(src, tgt); - if (src.hasAutocreate()) - tgt.setAutocreate(src.getAutocreate()); - if (src.hasAutodelete()) - tgt.setAutodelete(src.getAutodelete()); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent(); - copyElement(src, tgt); - if (src.hasAutocreate()) - tgt.setAutocreate(src.getAutocreate()); - if (src.hasAutodelete()) - tgt.setAutodelete(src.getAutodelete()); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDefaultValue()) - tgt.setDefaultValue(src.getDefaultValue()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasHint()) - tgt.setHint(src.getHint()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDefaultValue()) - tgt.setDefaultValue(src.getDefaultValue()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasHint()) - tgt.setHint(src.getHint()); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent(); - copyElement(src, tgt); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent t : src.getParam()) - tgt.addParam(convertRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent(); - copyElement(src, tgt); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.r4.model.TestScript.RuleParamComponent t : src.getParam()) - tgt.addParam(convertRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.RuleParamComponent convertRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.RuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.RuleParamComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent convertRuleParamComponent(org.hl7.fhir.r4.model.TestScript.RuleParamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent(); - copyElement(src, tgt); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent t : src.getRule()) - tgt.addRule(convertRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent(); - copyElement(src, tgt); - if (src.hasResource()) - tgt.setResource(convertReference(src.getResource())); - for (org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent t : src.getRule()) - tgt.addRule(convertRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent convertRulesetRuleComponent(org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent(); - copyElement(src, tgt); - if (src.hasRuleId()) - tgt.setRuleId(src.getRuleId()); - for (org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent convertRulesetRuleComponent(org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent(); - copyElement(src, tgt); - if (src.hasRuleId()) - tgt.setRuleId(src.getRuleId()); - for (org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent convertRulesetRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent convertRulesetRuleParamComponent(org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.SetupActionComponent t : src.getAction()) - tgt.addAction(convertSetupActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - if (src.hasAssert()) - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.r4.model.TestScript.SetupActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - if (src.hasAssert()) - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - if (src.hasResource()) - tgt.setResource(src.getResource()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAccept()) - tgt.setAccept(convertContentType(src.getAccept())); - if (src.hasContentType()) - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - if (src.hasEncodeRequestUrl()) - tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); - if (src.hasOrigin()) - tgt.setOrigin(src.getOrigin()); - if (src.hasParams()) - tgt.setParams(src.getParams()); - for (org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) - tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); - if (src.hasRequestId()) - tgt.setRequestId(src.getRequestId()); - if (src.hasResponseId()) - tgt.setResponseId(src.getResponseId()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasTargetId()) - tgt.setTargetId(src.getTargetId()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent(); - copyElement(src, tgt); - if (src.hasType()) - tgt.setType(convertCoding(src.getType())); - if (src.hasResource()) - tgt.setResource(src.getResource()); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasAccept()) - tgt.setAccept(convertContentType(src.getAccept())); - if (src.hasContentType()) - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasDestination()) - tgt.setDestination(src.getDestination()); - if (src.hasEncodeRequestUrl()) - tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); - if (src.hasOrigin()) - tgt.setOrigin(src.getOrigin()); - if (src.hasParams()) - tgt.setParams(src.getParams()); - for (org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) - tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); - if (src.hasRequestId()) - tgt.setRequestId(src.getRequestId()); - if (src.hasResponseId()) - tgt.setResponseId(src.getResponseId()); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasTargetId()) - tgt.setTargetId(src.getTargetId()); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - return tgt; - } - - private static org.hl7.fhir.r4.model.TestScript.ContentType convertContentType(org.hl7.fhir.dstu3.model.TestScript.ContentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XML: return org.hl7.fhir.r4.model.TestScript.ContentType.XML; - case JSON: return org.hl7.fhir.r4.model.TestScript.ContentType.JSON; - case TTL: return org.hl7.fhir.r4.model.TestScript.ContentType.TTL; - case NONE: return org.hl7.fhir.r4.model.TestScript.ContentType.NONE; - default: return org.hl7.fhir.r4.model.TestScript.ContentType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.TestScript.ContentType convertContentType(org.hl7.fhir.r4.model.TestScript.ContentType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case XML: return org.hl7.fhir.dstu3.model.TestScript.ContentType.XML; - case JSON: return org.hl7.fhir.dstu3.model.TestScript.ContentType.JSON; - case TTL: return org.hl7.fhir.dstu3.model.TestScript.ContentType.TTL; - case NONE: return org.hl7.fhir.dstu3.model.TestScript.ContentType.NONE; - default: return org.hl7.fhir.dstu3.model.TestScript.ContentType.NULL; - } -} - - public static org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent(); - copyElement(src, tgt); - if (src.hasField()) - tgt.setField(src.getField()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent(); - copyElement(src, tgt); - if (src.hasField()) - tgt.setField(src.getField()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasDirection()) - tgt.setDirection(convertAssertionDirectionType(src.getDirection())); - if (src.hasCompareToSourceId()) - tgt.setCompareToSourceId(src.getCompareToSourceId()); - if (src.hasCompareToSourceExpression()) - tgt.setCompareToSourceExpression(src.getCompareToSourceExpression()); - if (src.hasCompareToSourcePath()) - tgt.setCompareToSourcePath(src.getCompareToSourcePath()); - if (src.hasContentType()) - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasMinimumId()) - tgt.setMinimumId(src.getMinimumId()); - if (src.hasNavigationLinks()) - tgt.setNavigationLinks(src.getNavigationLinks()); - if (src.hasOperator()) - tgt.setOperator(convertAssertionOperatorType(src.getOperator())); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasRequestMethod()) - tgt.setRequestMethod(convertTestScriptRequestMethodCode(src.getRequestMethod())); - if (src.hasRequestURL()) - tgt.setRequestURL(src.getRequestURL()); - if (src.hasResource()) - tgt.setResource(src.getResource()); - if (src.hasResponse()) - tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); - if (src.hasResponseCode()) - tgt.setResponseCode(src.getResponseCode()); - if (src.hasRule()) - tgt.setRule(convertActionAssertRuleComponent(src.getRule())); - if (src.hasRuleset()) - tgt.setRuleset(convertActionAssertRulesetComponent(src.getRuleset())); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasValidateProfileId()) - tgt.setValidateProfileId(src.getValidateProfileId()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasWarningOnly()) - tgt.setWarningOnly(src.getWarningOnly()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent(); - copyElement(src, tgt); - if (src.hasLabel()) - tgt.setLabel(src.getLabel()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - if (src.hasDirection()) - tgt.setDirection(convertAssertionDirectionType(src.getDirection())); - if (src.hasCompareToSourceId()) - tgt.setCompareToSourceId(src.getCompareToSourceId()); - if (src.hasCompareToSourceExpression()) - tgt.setCompareToSourceExpression(src.getCompareToSourceExpression()); - if (src.hasCompareToSourcePath()) - tgt.setCompareToSourcePath(src.getCompareToSourcePath()); - if (src.hasContentType()) - tgt.setContentType(convertContentType(src.getContentType())); - if (src.hasExpression()) - tgt.setExpression(src.getExpression()); - if (src.hasHeaderField()) - tgt.setHeaderField(src.getHeaderField()); - if (src.hasMinimumId()) - tgt.setMinimumId(src.getMinimumId()); - if (src.hasNavigationLinks()) - tgt.setNavigationLinks(src.getNavigationLinks()); - if (src.hasOperator()) - tgt.setOperator(convertAssertionOperatorType(src.getOperator())); - if (src.hasPath()) - tgt.setPath(src.getPath()); - if (src.hasRequestMethod()) - tgt.setRequestMethod(convertTestScriptRequestMethodCode(src.getRequestMethod())); - if (src.hasRequestURL()) - tgt.setRequestURL(src.getRequestURL()); - if (src.hasResource()) - tgt.setResource(src.getResource()); - if (src.hasResponse()) - tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); - if (src.hasResponseCode()) - tgt.setResponseCode(src.getResponseCode()); - if (src.hasRule()) - tgt.setRule(convertActionAssertRuleComponent(src.getRule())); - if (src.hasRuleset()) - tgt.setRuleset(convertActionAssertRulesetComponent(src.getRuleset())); - if (src.hasSourceId()) - tgt.setSourceId(src.getSourceId()); - if (src.hasValidateProfileId()) - tgt.setValidateProfileId(src.getValidateProfileId()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - if (src.hasWarningOnly()) - tgt.setWarningOnly(src.getWarningOnly()); - return tgt; - } - - private static org.hl7.fhir.r4.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESPONSE: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.RESPONSE; - case REQUEST: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.REQUEST; - default: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.r4.model.TestScript.AssertionDirectionType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RESPONSE: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.RESPONSE; - case REQUEST: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.REQUEST; - default: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.NULL; - } -} - - private static org.hl7.fhir.r4.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EQUALS; - case NOTEQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEQUALS; - case IN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.IN; - case NOTIN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTIN; - case GREATERTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.GREATERTHAN; - case LESSTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.LESSTHAN; - case EMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EMPTY; - case NOTEMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEMPTY; - case CONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.CONTAINS; - case NOTCONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTCONTAINS; - case EVAL: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EVAL; - default: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.r4.model.TestScript.AssertionOperatorType src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EQUALS; - case NOTEQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEQUALS; - case IN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.IN; - case NOTIN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTIN; - case GREATERTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.GREATERTHAN; - case LESSTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.LESSTHAN; - case EMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EMPTY; - case NOTEMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEMPTY; - case CONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.CONTAINS; - case NOTCONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTCONTAINS; - case EVAL: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EVAL; - default: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NULL; - } -} - - private static org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode convertTestScriptRequestMethodCode(org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DELETE: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.DELETE; - case GET: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.GET; - case OPTIONS: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.OPTIONS; - case PATCH: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.PATCH; - case POST: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.POST; - case PUT: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.PUT; - default: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode convertTestScriptRequestMethodCode(org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case DELETE: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.DELETE; - case GET: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.GET; - case OPTIONS: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.OPTIONS; - case PATCH: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.PATCH; - case POST: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.POST; - case PUT: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.PUT; - default: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.NULL; - } -} - - private static org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OKAY: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.OKAY; - case CREATED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CREATED; - case NOCONTENT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOCONTENT; - case NOTMODIFIED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTMODIFIED; - case BAD: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.BAD; - case FORBIDDEN: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.FORBIDDEN; - case NOTFOUND: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTFOUND; - case METHODNOTALLOWED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; - case CONFLICT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CONFLICT; - case GONE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.GONE; - case PRECONDITIONFAILED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; - case UNPROCESSABLE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; - default: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case OKAY: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.OKAY; - case CREATED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CREATED; - case NOCONTENT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOCONTENT; - case NOTMODIFIED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTMODIFIED; - case BAD: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.BAD; - case FORBIDDEN: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.FORBIDDEN; - case NOTFOUND: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTFOUND; - case METHODNOTALLOWED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; - case CONFLICT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CONFLICT; - case GONE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.GONE; - case PRECONDITIONFAILED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; - case UNPROCESSABLE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; - default: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NULL; - } -} - - public static org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent convertActionAssertRuleComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent(); - copyElement(src, tgt); - if (src.hasRuleId()) - tgt.setRuleId(src.getRuleId()); - for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent t : src.getParam()) - tgt.addParam(convertActionAssertRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent convertActionAssertRuleComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent(); - copyElement(src, tgt); - if (src.hasRuleId()) - tgt.setRuleId(src.getRuleId()); - for (org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent t : src.getParam()) - tgt.addParam(convertActionAssertRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent convertActionAssertRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent convertActionAssertRuleParamComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent convertActionAssertRulesetComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent(); - copyElement(src, tgt); - if (src.hasRulesetId()) - tgt.setRulesetId(src.getRulesetId()); - for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent t : src.getRule()) - tgt.addRule(convertActionAssertRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent convertActionAssertRulesetComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent(); - copyElement(src, tgt); - if (src.hasRulesetId()) - tgt.setRulesetId(src.getRulesetId()); - for (org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent t : src.getRule()) - tgt.addRule(convertActionAssertRulesetRuleComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent convertActionAssertRulesetRuleComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent(); - copyElement(src, tgt); - if (src.hasRuleId()) - tgt.setRuleId(src.getRuleId()); - for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertActionAssertRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent convertActionAssertRulesetRuleComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent(); - copyElement(src, tgt); - if (src.hasRuleId()) - tgt.setRuleId(src.getRuleId()); - for (org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent t : src.getParam()) - tgt.addParam(convertActionAssertRulesetRuleParamComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent convertActionAssertRulesetRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent convertActionAssertRulesetRuleParamComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.TestScript.TestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.TestScript.TestActionComponent t : src.getAction()) - tgt.addAction(convertTestActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.dstu3.model.TestScript.TestActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - if (src.hasAssert()) - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.r4.model.TestScript.TestActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - if (src.hasAssert()) - tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent(); - copyElement(src, tgt); - for (org.hl7.fhir.r4.model.TestScript.TeardownActionComponent t : src.getAction()) - tgt.addAction(convertTeardownActionComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TeardownActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.r4.model.TestScript.TeardownActionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent(); - copyElement(src, tgt); - if (src.hasOperation()) - tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet convertValueSet(org.hl7.fhir.dstu3.model.ValueSet src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ValueSet tgt = new org.hl7.fhir.r4.model.ValueSet(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasImmutable()) - tgt.setImmutable(src.getImmutable()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasExtensible()) - tgt.setExtensible(src.getExtensible()); - if (src.hasCompose()) - tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); - if (src.hasExpansion()) - tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet convertValueSet(org.hl7.fhir.r4.model.ValueSet src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ValueSet tgt = new org.hl7.fhir.dstu3.model.ValueSet(); - copyDomainResource(src, tgt); - if (src.hasUrl()) - tgt.setUrl(src.getUrl()); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasTitle()) - tgt.setTitle(src.getTitle()); - if (src.hasStatus()) - tgt.setStatus(convertPublicationStatus(src.getStatus())); - if (src.hasExperimental()) - tgt.setExperimental(src.getExperimental()); - if (src.hasDate()) - tgt.setDate(src.getDate()); - if (src.hasPublisher()) - tgt.setPublisher(src.getPublisher()); - for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) - tgt.addContact(convertContactDetail(t)); - if (src.hasDescription()) - tgt.setDescription(src.getDescription()); - for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) - tgt.addUseContext(convertUsageContext(t)); - for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) - tgt.addJurisdiction(convertCodeableConcept(t)); - if (src.hasImmutable()) - tgt.setImmutable(src.getImmutable()); - if (src.hasPurpose()) - tgt.setPurpose(src.getPurpose()); - if (src.hasCopyright()) - tgt.setCopyright(src.getCopyright()); - if (src.hasExtensible()) - tgt.setExtensible(src.getExtensible()); - if (src.hasCompose()) - tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); - if (src.hasExpansion()) - tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent(); - copyElement(src, tgt); - if (src.hasLockedDate()) - tgt.setLockedDate(src.getLockedDate()); - if (src.hasInactive()) - tgt.setInactive(src.getInactive()); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getInclude()) - tgt.addInclude(convertConceptSetComponent(t)); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getExclude()) - tgt.addExclude(convertConceptSetComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent(); - copyElement(src, tgt); - if (src.hasLockedDate()) - tgt.setLockedDate(src.getLockedDate()); - if (src.hasInactive()) - tgt.setInactive(src.getInactive()); - for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getInclude()) - tgt.addInclude(convertConceptSetComponent(t)); - for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getExclude()) - tgt.addExclude(convertConceptSetComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) - tgt.addConcept(convertConceptReferenceComponent(t)); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) - tgt.addFilter(convertConceptSetFilterComponent(t)); - for (org.hl7.fhir.dstu3.model.UriType t : src.getValueSet()) - tgt.addValueSet(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) - tgt.addConcept(convertConceptReferenceComponent(t)); - for (org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) - tgt.addFilter(convertConceptSetFilterComponent(t)); - for (org.hl7.fhir.r4.model.UriType t : src.getValueSet()) - tgt.addValueSet(t.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent(); - copyElement(src, tgt); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasUse()) - tgt.setUse(convertCoding(src.getUse())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent(); - copyElement(src, tgt); - if (src.hasLanguage()) - tgt.setLanguage(src.getLanguage()); - if (src.hasUse()) - tgt.setUse(convertCoding(src.getUse())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent(); - copyElement(src, tgt); - if (src.hasProperty()) - tgt.setProperty(src.getProperty()); - if (src.hasOp()) - tgt.setOp(convertFilterOperator(src.getOp())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent(); - copyElement(src, tgt); - if (src.hasProperty()) - tgt.setProperty(src.getProperty()); - if (src.hasOp()) - tgt.setOp(convertFilterOperator(src.getOp())); - if (src.hasValue()) - tgt.setValue(src.getValue()); - return tgt; - } - - private static org.hl7.fhir.r4.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.dstu3.model.ValueSet.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISA; - case DESCENDENTOF: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.DESCENDENTOF; - case ISNOTA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.REGEX; - case IN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NOTIN; - case GENERALIZES: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.GENERALIZES; - case EXISTS: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.EXISTS; - default: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.r4.model.ValueSet.FilterOperator src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case EQUAL: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.EQUAL; - case ISA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISA; - case DESCENDENTOF: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.DESCENDENTOF; - case ISNOTA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISNOTA; - case REGEX: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.REGEX; - case IN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.IN; - case NOTIN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NOTIN; - case GENERALIZES: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.GENERALIZES; - case EXISTS: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.EXISTS; - default: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NULL; - } -} - - public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(src.getIdentifier()); - if (src.hasTimestamp()) - tgt.setTimestamp(src.getTimestamp()); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) - tgt.addParameter(convertValueSetExpansionParameterComponent(t)); - for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent(); - copyElement(src, tgt); - if (src.hasIdentifier()) - tgt.setIdentifier(src.getIdentifier()); - if (src.hasTimestamp()) - tgt.setTimestamp(src.getTimestamp()); - if (src.hasTotal()) - tgt.setTotal(src.getTotal()); - if (src.hasOffset()) - tgt.setOffset(src.getOffset()); - for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) - tgt.addParameter(convertValueSetExpansionParameterComponent(t)); - for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent(); - copyElement(src, tgt); - if (src.hasName()) - tgt.setName(src.getName()); - if (src.hasValue()) - tgt.setValue(convertType(src.getValue())); - return tgt; - } - - public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasAbstract()) - tgt.setAbstract(src.getAbstract()); - if (src.hasInactive()) - tgt.setInactive(src.getInactive()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent(); - copyElement(src, tgt); - if (src.hasSystem()) - tgt.setSystem(src.getSystem()); - if (src.hasAbstract()) - tgt.setAbstract(src.getAbstract()); - if (src.hasInactive()) - tgt.setInactive(src.getInactive()); - if (src.hasVersion()) - tgt.setVersion(src.getVersion()); - if (src.hasCode()) - tgt.setCode(src.getCode()); - if (src.hasDisplay()) - tgt.setDisplay(src.getDisplay()); - for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) - tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); - for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) - tgt.addContains(convertValueSetExpansionContainsComponent(t)); - return tgt; - } - - public static org.hl7.fhir.r4.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.dstu3.model.VisionPrescription src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.VisionPrescription tgt = new org.hl7.fhir.r4.model.VisionPrescription(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertVisionStatus(src.getStatus())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasDateWritten()) - tgt.setDateWritten(src.getDateWritten()); - if (src.hasPrescriber()) - tgt.setPrescriber(convertReference(src.getPrescriber())); - if (src.hasReason()) - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) - tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.r4.model.VisionPrescription src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.VisionPrescription tgt = new org.hl7.fhir.dstu3.model.VisionPrescription(); - copyDomainResource(src, tgt); - for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) - tgt.addIdentifier(convertIdentifier(t)); - if (src.hasStatus()) - tgt.setStatus(convertVisionStatus(src.getStatus())); - if (src.hasPatient()) - tgt.setPatient(convertReference(src.getPatient())); - if (src.hasEncounter()) - tgt.setEncounter(convertReference(src.getEncounter())); - if (src.hasDateWritten()) - tgt.setDateWritten(src.getDateWritten()); - if (src.hasPrescriber()) - tgt.setPrescriber(convertReference(src.getPrescriber())); - if (src.hasReason()) - tgt.setReason(convertType(src.getReason())); - for (org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) - tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.VisionPrescription.VisionStatus convertVisionStatus(org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.r4.model.VisionPrescription.VisionStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.r4.model.VisionPrescription.VisionStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.r4.model.VisionPrescription.VisionStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.r4.model.VisionPrescription.VisionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.r4.model.VisionPrescription.VisionStatus.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus convertVisionStatus(org.hl7.fhir.r4.model.VisionPrescription.VisionStatus src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case ACTIVE: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus.ACTIVE; - case CANCELLED: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus.CANCELLED; - case DRAFT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus.DRAFT; - case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus.ENTEREDINERROR; - default: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus.NULL; - } -} - - public static org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent(); - copyElement(src, tgt); - if (src.hasProduct()) - tgt.setProduct(convertCodeableConcept(src.getProduct())); - if (src.hasEye()) - tgt.setEye(convertVisionEyes(src.getEye())); - if (src.hasSphere()) - tgt.setSphere(src.getSphere()); - if (src.hasCylinder()) - tgt.setCylinder(src.getCylinder()); - if (src.hasAxis()) - tgt.setAxis(src.getAxis()); - if (src.hasPrism()) - tgt.setPrism(src.getPrism()); - if (src.hasBase()) - tgt.setBase(convertVisionBase(src.getBase())); - if (src.hasAdd()) - tgt.setAdd(src.getAdd()); - if (src.hasPower()) - tgt.setPower(src.getPower()); - if (src.hasBackCurve()) - tgt.setBackCurve(src.getBackCurve()); - if (src.hasDiameter()) - tgt.setDiameter(src.getDiameter()); - if (src.hasDuration()) - tgt.setDuration(convertSimpleQuantity(src.getDuration())); - if (src.hasColor()) - tgt.setColor(src.getColor()); - if (src.hasBrand()) - tgt.setBrand(src.getBrand()); - for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - public static org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { - if (src == null) - return null; - org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent(); - copyElement(src, tgt); - if (src.hasProduct()) - tgt.setProduct(convertCodeableConcept(src.getProduct())); - if (src.hasEye()) - tgt.setEye(convertVisionEyes(src.getEye())); - if (src.hasSphere()) - tgt.setSphere(src.getSphere()); - if (src.hasCylinder()) - tgt.setCylinder(src.getCylinder()); - if (src.hasAxis()) - tgt.setAxis(src.getAxis()); - if (src.hasPrism()) - tgt.setPrism(src.getPrism()); - if (src.hasBase()) - tgt.setBase(convertVisionBase(src.getBase())); - if (src.hasAdd()) - tgt.setAdd(src.getAdd()); - if (src.hasPower()) - tgt.setPower(src.getPower()); - if (src.hasBackCurve()) - tgt.setBackCurve(src.getBackCurve()); - if (src.hasDiameter()) - tgt.setDiameter(src.getDiameter()); - if (src.hasDuration()) - tgt.setDuration(convertSimpleQuantity(src.getDuration())); - if (src.hasColor()) - tgt.setColor(src.getColor()); - if (src.hasBrand()) - tgt.setBrand(src.getBrand()); - for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) - tgt.addNote(convertAnnotation(t)); - return tgt; - } - - private static org.hl7.fhir.r4.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RIGHT: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.RIGHT; - case LEFT: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.LEFT; - default: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.r4.model.VisionPrescription.VisionEyes src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case RIGHT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.RIGHT; - case LEFT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.LEFT; - default: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.NULL; - } -} - - private static org.hl7.fhir.r4.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UP: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.UP; - case DOWN: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.DOWN; - case IN: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.IN; - case OUT: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.OUT; - default: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.NULL; - } -} - - private static org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.r4.model.VisionPrescription.VisionBase src) throws FHIRException { - if (src == null) - return null; - switch (src) { - case UP: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.UP; - case DOWN: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.DOWN; - case IN: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.IN; - case OUT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.OUT; - default: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.NULL; - } -} - - public static org.hl7.fhir.r4.model.Resource convertResource(org.hl7.fhir.dstu3.model.Resource src) throws FHIRException { - if (src == null) - return null; - if (src instanceof org.hl7.fhir.dstu3.model.Parameters) - return convertParameters((org.hl7.fhir.dstu3.model.Parameters) src); - if (src instanceof org.hl7.fhir.dstu3.model.Account) - return convertAccount((org.hl7.fhir.dstu3.model.Account) src); - if (src instanceof org.hl7.fhir.dstu3.model.ActivityDefinition) - return convertActivityDefinition((org.hl7.fhir.dstu3.model.ActivityDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.AllergyIntolerance) - return convertAllergyIntolerance((org.hl7.fhir.dstu3.model.AllergyIntolerance) src); - if (src instanceof org.hl7.fhir.dstu3.model.Appointment) - return convertAppointment((org.hl7.fhir.dstu3.model.Appointment) src); - if (src instanceof org.hl7.fhir.dstu3.model.AppointmentResponse) - return convertAppointmentResponse((org.hl7.fhir.dstu3.model.AppointmentResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.AuditEvent) - return convertAuditEvent((org.hl7.fhir.dstu3.model.AuditEvent) src); - if (src instanceof org.hl7.fhir.dstu3.model.Basic) - return convertBasic((org.hl7.fhir.dstu3.model.Basic) src); - if (src instanceof org.hl7.fhir.dstu3.model.Binary) - return convertBinary((org.hl7.fhir.dstu3.model.Binary) src); - if (src instanceof org.hl7.fhir.dstu3.model.BodySite) - return convertBodySite((org.hl7.fhir.dstu3.model.BodySite) src); - if (src instanceof org.hl7.fhir.dstu3.model.Bundle) - return convertBundle((org.hl7.fhir.dstu3.model.Bundle) src); - if (src instanceof org.hl7.fhir.dstu3.model.CapabilityStatement) - return convertCapabilityStatement((org.hl7.fhir.dstu3.model.CapabilityStatement) src); - if (src instanceof org.hl7.fhir.dstu3.model.CarePlan) - return convertCarePlan((org.hl7.fhir.dstu3.model.CarePlan) src); - if (src instanceof org.hl7.fhir.dstu3.model.CareTeam) - return convertCareTeam((org.hl7.fhir.dstu3.model.CareTeam) src); - if (src instanceof org.hl7.fhir.dstu3.model.ChargeItem) - return convertChargeItem((org.hl7.fhir.dstu3.model.ChargeItem) src); - if (src instanceof org.hl7.fhir.dstu3.model.Claim) - return convertClaim((org.hl7.fhir.dstu3.model.Claim) src); - if (src instanceof org.hl7.fhir.dstu3.model.ClaimResponse) - return convertClaimResponse((org.hl7.fhir.dstu3.model.ClaimResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.ClinicalImpression) - return convertClinicalImpression((org.hl7.fhir.dstu3.model.ClinicalImpression) src); - if (src instanceof org.hl7.fhir.dstu3.model.CodeSystem) - return convertCodeSystem((org.hl7.fhir.dstu3.model.CodeSystem) src); - if (src instanceof org.hl7.fhir.dstu3.model.Communication) - return convertCommunication((org.hl7.fhir.dstu3.model.Communication) src); - if (src instanceof org.hl7.fhir.dstu3.model.CommunicationRequest) - return convertCommunicationRequest((org.hl7.fhir.dstu3.model.CommunicationRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.CompartmentDefinition) - return convertCompartmentDefinition((org.hl7.fhir.dstu3.model.CompartmentDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.Composition) - return convertComposition((org.hl7.fhir.dstu3.model.Composition) src); - if (src instanceof org.hl7.fhir.dstu3.model.ConceptMap) - return convertConceptMap((org.hl7.fhir.dstu3.model.ConceptMap) src); - if (src instanceof org.hl7.fhir.dstu3.model.Condition) - return convertCondition((org.hl7.fhir.dstu3.model.Condition) src); - if (src instanceof org.hl7.fhir.dstu3.model.Consent) - return convertConsent((org.hl7.fhir.dstu3.model.Consent) src); - if (src instanceof org.hl7.fhir.dstu3.model.Contract) - return convertContract((org.hl7.fhir.dstu3.model.Contract) src); - if (src instanceof org.hl7.fhir.dstu3.model.Coverage) - return convertCoverage((org.hl7.fhir.dstu3.model.Coverage) src); - if (src instanceof org.hl7.fhir.dstu3.model.DataElement) - return convertDataElement((org.hl7.fhir.dstu3.model.DataElement) src); - if (src instanceof org.hl7.fhir.dstu3.model.DetectedIssue) - return convertDetectedIssue((org.hl7.fhir.dstu3.model.DetectedIssue) src); - if (src instanceof org.hl7.fhir.dstu3.model.Device) - return convertDevice((org.hl7.fhir.dstu3.model.Device) src); - if (src instanceof org.hl7.fhir.dstu3.model.DeviceComponent) - return convertDeviceComponent((org.hl7.fhir.dstu3.model.DeviceComponent) src); - if (src instanceof org.hl7.fhir.dstu3.model.DeviceMetric) - return convertDeviceMetric((org.hl7.fhir.dstu3.model.DeviceMetric) src); - if (src instanceof org.hl7.fhir.dstu3.model.DeviceRequest) - return convertDeviceRequest((org.hl7.fhir.dstu3.model.DeviceRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.DeviceUseStatement) - return convertDeviceUseStatement((org.hl7.fhir.dstu3.model.DeviceUseStatement) src); - if (src instanceof org.hl7.fhir.dstu3.model.DiagnosticReport) - return convertDiagnosticReport((org.hl7.fhir.dstu3.model.DiagnosticReport) src); - if (src instanceof org.hl7.fhir.dstu3.model.DocumentManifest) - return convertDocumentManifest((org.hl7.fhir.dstu3.model.DocumentManifest) src); - if (src instanceof org.hl7.fhir.dstu3.model.DocumentReference) - return convertDocumentReference((org.hl7.fhir.dstu3.model.DocumentReference) src); - if (src instanceof org.hl7.fhir.dstu3.model.EligibilityRequest) - return convertEligibilityRequest((org.hl7.fhir.dstu3.model.EligibilityRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.EligibilityResponse) - return convertEligibilityResponse((org.hl7.fhir.dstu3.model.EligibilityResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.Encounter) - return convertEncounter((org.hl7.fhir.dstu3.model.Encounter) src); - if (src instanceof org.hl7.fhir.dstu3.model.Endpoint) - return convertEndpoint((org.hl7.fhir.dstu3.model.Endpoint) src); - if (src instanceof org.hl7.fhir.dstu3.model.EnrollmentRequest) - return convertEnrollmentRequest((org.hl7.fhir.dstu3.model.EnrollmentRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.EnrollmentResponse) - return convertEnrollmentResponse((org.hl7.fhir.dstu3.model.EnrollmentResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.EpisodeOfCare) - return convertEpisodeOfCare((org.hl7.fhir.dstu3.model.EpisodeOfCare) src); - if (src instanceof org.hl7.fhir.dstu3.model.ExpansionProfile) - return convertExpansionProfile((org.hl7.fhir.dstu3.model.ExpansionProfile) src); - if (src instanceof org.hl7.fhir.dstu3.model.ExplanationOfBenefit) - return convertExplanationOfBenefit((org.hl7.fhir.dstu3.model.ExplanationOfBenefit) src); - if (src instanceof org.hl7.fhir.dstu3.model.FamilyMemberHistory) - return convertFamilyMemberHistory((org.hl7.fhir.dstu3.model.FamilyMemberHistory) src); - if (src instanceof org.hl7.fhir.dstu3.model.Flag) - return convertFlag((org.hl7.fhir.dstu3.model.Flag) src); - if (src instanceof org.hl7.fhir.dstu3.model.Goal) - return convertGoal((org.hl7.fhir.dstu3.model.Goal) src); - if (src instanceof org.hl7.fhir.dstu3.model.GraphDefinition) - return convertGraphDefinition((org.hl7.fhir.dstu3.model.GraphDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.Group) - return convertGroup((org.hl7.fhir.dstu3.model.Group) src); - if (src instanceof org.hl7.fhir.dstu3.model.GuidanceResponse) - return convertGuidanceResponse((org.hl7.fhir.dstu3.model.GuidanceResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.HealthcareService) - return convertHealthcareService((org.hl7.fhir.dstu3.model.HealthcareService) src); - if (src instanceof org.hl7.fhir.dstu3.model.ImagingManifest) - return convertImagingManifest((org.hl7.fhir.dstu3.model.ImagingManifest) src); - if (src instanceof org.hl7.fhir.dstu3.model.ImagingStudy) - return convertImagingStudy((org.hl7.fhir.dstu3.model.ImagingStudy) src); - if (src instanceof org.hl7.fhir.dstu3.model.Immunization) - return convertImmunization((org.hl7.fhir.dstu3.model.Immunization) src); - if (src instanceof org.hl7.fhir.dstu3.model.ImmunizationRecommendation) - return convertImmunizationRecommendation((org.hl7.fhir.dstu3.model.ImmunizationRecommendation) src); - if (src instanceof org.hl7.fhir.dstu3.model.ImplementationGuide) - return convertImplementationGuide((org.hl7.fhir.dstu3.model.ImplementationGuide) src); - if (src instanceof org.hl7.fhir.dstu3.model.Library) - return convertLibrary((org.hl7.fhir.dstu3.model.Library) src); - if (src instanceof org.hl7.fhir.dstu3.model.Linkage) - return convertLinkage((org.hl7.fhir.dstu3.model.Linkage) src); - if (src instanceof org.hl7.fhir.dstu3.model.ListResource) - return convertList((org.hl7.fhir.dstu3.model.ListResource) src); - if (src instanceof org.hl7.fhir.dstu3.model.Location) - return convertLocation((org.hl7.fhir.dstu3.model.Location) src); - if (src instanceof org.hl7.fhir.dstu3.model.Measure) - return convertMeasure((org.hl7.fhir.dstu3.model.Measure) src); - if (src instanceof org.hl7.fhir.dstu3.model.MeasureReport) - return convertMeasureReport((org.hl7.fhir.dstu3.model.MeasureReport) src); - if (src instanceof org.hl7.fhir.dstu3.model.Media) - return convertMedia((org.hl7.fhir.dstu3.model.Media) src); - if (src instanceof org.hl7.fhir.dstu3.model.Medication) - return convertMedication((org.hl7.fhir.dstu3.model.Medication) src); - if (src instanceof org.hl7.fhir.dstu3.model.MedicationAdministration) - return convertMedicationAdministration((org.hl7.fhir.dstu3.model.MedicationAdministration) src); - if (src instanceof org.hl7.fhir.dstu3.model.MedicationDispense) - return convertMedicationDispense((org.hl7.fhir.dstu3.model.MedicationDispense) src); - if (src instanceof org.hl7.fhir.dstu3.model.MedicationRequest) - return convertMedicationRequest((org.hl7.fhir.dstu3.model.MedicationRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.MedicationStatement) - return convertMedicationStatement((org.hl7.fhir.dstu3.model.MedicationStatement) src); - if (src instanceof org.hl7.fhir.dstu3.model.MessageDefinition) - return convertMessageDefinition((org.hl7.fhir.dstu3.model.MessageDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.MessageHeader) - return convertMessageHeader((org.hl7.fhir.dstu3.model.MessageHeader) src); - if (src instanceof org.hl7.fhir.dstu3.model.NamingSystem) - return convertNamingSystem((org.hl7.fhir.dstu3.model.NamingSystem) src); - if (src instanceof org.hl7.fhir.dstu3.model.NutritionOrder) - return convertNutritionOrder((org.hl7.fhir.dstu3.model.NutritionOrder) src); - if (src instanceof org.hl7.fhir.dstu3.model.Observation) - return convertObservation((org.hl7.fhir.dstu3.model.Observation) src); - if (src instanceof org.hl7.fhir.dstu3.model.OperationDefinition) - return convertOperationDefinition((org.hl7.fhir.dstu3.model.OperationDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.OperationOutcome) - return convertOperationOutcome((org.hl7.fhir.dstu3.model.OperationOutcome) src); - if (src instanceof org.hl7.fhir.dstu3.model.Organization) - return convertOrganization((org.hl7.fhir.dstu3.model.Organization) src); - if (src instanceof org.hl7.fhir.dstu3.model.Patient) - return convertPatient((org.hl7.fhir.dstu3.model.Patient) src); - if (src instanceof org.hl7.fhir.dstu3.model.PaymentNotice) - return convertPaymentNotice((org.hl7.fhir.dstu3.model.PaymentNotice) src); - if (src instanceof org.hl7.fhir.dstu3.model.PaymentReconciliation) - return convertPaymentReconciliation((org.hl7.fhir.dstu3.model.PaymentReconciliation) src); - if (src instanceof org.hl7.fhir.dstu3.model.Person) - return convertPerson((org.hl7.fhir.dstu3.model.Person) src); - if (src instanceof org.hl7.fhir.dstu3.model.PlanDefinition) - return convertPlanDefinition((org.hl7.fhir.dstu3.model.PlanDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.Practitioner) - return convertPractitioner((org.hl7.fhir.dstu3.model.Practitioner) src); - if (src instanceof org.hl7.fhir.dstu3.model.PractitionerRole) - return convertPractitionerRole((org.hl7.fhir.dstu3.model.PractitionerRole) src); - if (src instanceof org.hl7.fhir.dstu3.model.Procedure) - return convertProcedure((org.hl7.fhir.dstu3.model.Procedure) src); - if (src instanceof org.hl7.fhir.dstu3.model.ProcedureRequest) - return convertProcedureRequest((org.hl7.fhir.dstu3.model.ProcedureRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.ProcessRequest) - return convertProcessRequest((org.hl7.fhir.dstu3.model.ProcessRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.ProcessResponse) - return convertProcessResponse((org.hl7.fhir.dstu3.model.ProcessResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.Provenance) - return convertProvenance((org.hl7.fhir.dstu3.model.Provenance) src); - if (src instanceof org.hl7.fhir.dstu3.model.Questionnaire) - return convertQuestionnaire((org.hl7.fhir.dstu3.model.Questionnaire) src); - if (src instanceof org.hl7.fhir.dstu3.model.QuestionnaireResponse) - return convertQuestionnaireResponse((org.hl7.fhir.dstu3.model.QuestionnaireResponse) src); - if (src instanceof org.hl7.fhir.dstu3.model.ReferralRequest) - return convertReferralRequest((org.hl7.fhir.dstu3.model.ReferralRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.RelatedPerson) - return convertRelatedPerson((org.hl7.fhir.dstu3.model.RelatedPerson) src); - if (src instanceof org.hl7.fhir.dstu3.model.RequestGroup) - return convertRequestGroup((org.hl7.fhir.dstu3.model.RequestGroup) src); - if (src instanceof org.hl7.fhir.dstu3.model.ResearchStudy) - return convertResearchStudy((org.hl7.fhir.dstu3.model.ResearchStudy) src); - if (src instanceof org.hl7.fhir.dstu3.model.ResearchSubject) - return convertResearchSubject((org.hl7.fhir.dstu3.model.ResearchSubject) src); - if (src instanceof org.hl7.fhir.dstu3.model.RiskAssessment) - return convertRiskAssessment((org.hl7.fhir.dstu3.model.RiskAssessment) src); - if (src instanceof org.hl7.fhir.dstu3.model.Schedule) - return convertSchedule((org.hl7.fhir.dstu3.model.Schedule) src); - if (src instanceof org.hl7.fhir.dstu3.model.SearchParameter) - return convertSearchParameter((org.hl7.fhir.dstu3.model.SearchParameter) src); - if (src instanceof org.hl7.fhir.dstu3.model.Sequence) - return convertSequence((org.hl7.fhir.dstu3.model.Sequence) src); - if (src instanceof org.hl7.fhir.dstu3.model.ServiceDefinition) - return convertServiceDefinition((org.hl7.fhir.dstu3.model.ServiceDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.Slot) - return convertSlot((org.hl7.fhir.dstu3.model.Slot) src); - if (src instanceof org.hl7.fhir.dstu3.model.Specimen) - return convertSpecimen((org.hl7.fhir.dstu3.model.Specimen) src); - if (src instanceof org.hl7.fhir.dstu3.model.StructureDefinition) - return convertStructureDefinition((org.hl7.fhir.dstu3.model.StructureDefinition) src); - if (src instanceof org.hl7.fhir.dstu3.model.StructureMap) - return convertStructureMap((org.hl7.fhir.dstu3.model.StructureMap) src); - if (src instanceof org.hl7.fhir.dstu3.model.Subscription) - return convertSubscription((org.hl7.fhir.dstu3.model.Subscription) src); - if (src instanceof org.hl7.fhir.dstu3.model.Substance) - return convertSubstance((org.hl7.fhir.dstu3.model.Substance) src); - if (src instanceof org.hl7.fhir.dstu3.model.SupplyDelivery) - return convertSupplyDelivery((org.hl7.fhir.dstu3.model.SupplyDelivery) src); - if (src instanceof org.hl7.fhir.dstu3.model.SupplyRequest) - return convertSupplyRequest((org.hl7.fhir.dstu3.model.SupplyRequest) src); - if (src instanceof org.hl7.fhir.dstu3.model.Task) - return convertTask((org.hl7.fhir.dstu3.model.Task) src); - if (src instanceof org.hl7.fhir.dstu3.model.TestReport) - return convertTestReport((org.hl7.fhir.dstu3.model.TestReport) src); - if (src instanceof org.hl7.fhir.dstu3.model.TestScript) - return convertTestScript((org.hl7.fhir.dstu3.model.TestScript) src); - if (src instanceof org.hl7.fhir.dstu3.model.ValueSet) - return convertValueSet((org.hl7.fhir.dstu3.model.ValueSet) src); - if (src instanceof org.hl7.fhir.dstu3.model.VisionPrescription) - return convertVisionPrescription((org.hl7.fhir.dstu3.model.VisionPrescription) src); - throw new Error("Unknown resource "+src.fhirType()); - } - - public static org.hl7.fhir.dstu3.model.Resource convertResource(org.hl7.fhir.r4.model.Resource src) throws FHIRException { - if (src == null) - return null; - if (src instanceof org.hl7.fhir.r4.model.Parameters) - return convertParameters((org.hl7.fhir.r4.model.Parameters) src); - if (src instanceof org.hl7.fhir.r4.model.Account) - return convertAccount((org.hl7.fhir.r4.model.Account) src); - if (src instanceof org.hl7.fhir.r4.model.ActivityDefinition) - return convertActivityDefinition((org.hl7.fhir.r4.model.ActivityDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.AllergyIntolerance) - return convertAllergyIntolerance((org.hl7.fhir.r4.model.AllergyIntolerance) src); - if (src instanceof org.hl7.fhir.r4.model.Appointment) - return convertAppointment((org.hl7.fhir.r4.model.Appointment) src); - if (src instanceof org.hl7.fhir.r4.model.AppointmentResponse) - return convertAppointmentResponse((org.hl7.fhir.r4.model.AppointmentResponse) src); - if (src instanceof org.hl7.fhir.r4.model.AuditEvent) - return convertAuditEvent((org.hl7.fhir.r4.model.AuditEvent) src); - if (src instanceof org.hl7.fhir.r4.model.Basic) - return convertBasic((org.hl7.fhir.r4.model.Basic) src); - if (src instanceof org.hl7.fhir.r4.model.Binary) - return convertBinary((org.hl7.fhir.r4.model.Binary) src); - if (src instanceof org.hl7.fhir.r4.model.BodyStructure) - return convertBodySite((org.hl7.fhir.r4.model.BodyStructure) src); - if (src instanceof org.hl7.fhir.r4.model.Bundle) - return convertBundle((org.hl7.fhir.r4.model.Bundle) src); - if (src instanceof org.hl7.fhir.r4.model.CapabilityStatement) - return convertCapabilityStatement((org.hl7.fhir.r4.model.CapabilityStatement) src); - if (src instanceof org.hl7.fhir.r4.model.CarePlan) - return convertCarePlan((org.hl7.fhir.r4.model.CarePlan) src); - if (src instanceof org.hl7.fhir.r4.model.CareTeam) - return convertCareTeam((org.hl7.fhir.r4.model.CareTeam) src); - if (src instanceof org.hl7.fhir.r4.model.ChargeItem) - return convertChargeItem((org.hl7.fhir.r4.model.ChargeItem) src); - if (src instanceof org.hl7.fhir.r4.model.Claim) - return convertClaim((org.hl7.fhir.r4.model.Claim) src); - if (src instanceof org.hl7.fhir.r4.model.ClaimResponse) - return convertClaimResponse((org.hl7.fhir.r4.model.ClaimResponse) src); - if (src instanceof org.hl7.fhir.r4.model.ClinicalImpression) - return convertClinicalImpression((org.hl7.fhir.r4.model.ClinicalImpression) src); - if (src instanceof org.hl7.fhir.r4.model.CodeSystem) - return convertCodeSystem((org.hl7.fhir.r4.model.CodeSystem) src); - if (src instanceof org.hl7.fhir.r4.model.Communication) - return convertCommunication((org.hl7.fhir.r4.model.Communication) src); - if (src instanceof org.hl7.fhir.r4.model.CommunicationRequest) - return convertCommunicationRequest((org.hl7.fhir.r4.model.CommunicationRequest) src); - if (src instanceof org.hl7.fhir.r4.model.CompartmentDefinition) - return convertCompartmentDefinition((org.hl7.fhir.r4.model.CompartmentDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.Composition) - return convertComposition((org.hl7.fhir.r4.model.Composition) src); - if (src instanceof org.hl7.fhir.r4.model.ConceptMap) - return convertConceptMap((org.hl7.fhir.r4.model.ConceptMap) src); - if (src instanceof org.hl7.fhir.r4.model.Condition) - return convertCondition((org.hl7.fhir.r4.model.Condition) src); - if (src instanceof org.hl7.fhir.r4.model.Consent) - return convertConsent((org.hl7.fhir.r4.model.Consent) src); - if (src instanceof org.hl7.fhir.r4.model.Contract) - return convertContract((org.hl7.fhir.r4.model.Contract) src); - if (src instanceof org.hl7.fhir.r4.model.Coverage) - return convertCoverage((org.hl7.fhir.r4.model.Coverage) src); - if (src instanceof org.hl7.fhir.r4.model.DetectedIssue) - return convertDetectedIssue((org.hl7.fhir.r4.model.DetectedIssue) src); - if (src instanceof org.hl7.fhir.r4.model.Device) - return convertDevice((org.hl7.fhir.r4.model.Device) src); - if (src instanceof org.hl7.fhir.r4.model.DeviceComponent) - return convertDeviceComponent((org.hl7.fhir.r4.model.DeviceComponent) src); - if (src instanceof org.hl7.fhir.r4.model.DeviceMetric) - return convertDeviceMetric((org.hl7.fhir.r4.model.DeviceMetric) src); - if (src instanceof org.hl7.fhir.r4.model.DeviceRequest) - return convertDeviceRequest((org.hl7.fhir.r4.model.DeviceRequest) src); - if (src instanceof org.hl7.fhir.r4.model.DeviceUseStatement) - return convertDeviceUseStatement((org.hl7.fhir.r4.model.DeviceUseStatement) src); - if (src instanceof org.hl7.fhir.r4.model.DiagnosticReport) - return convertDiagnosticReport((org.hl7.fhir.r4.model.DiagnosticReport) src); - if (src instanceof org.hl7.fhir.r4.model.DocumentManifest) - return convertDocumentManifest((org.hl7.fhir.r4.model.DocumentManifest) src); - if (src instanceof org.hl7.fhir.r4.model.DocumentReference) - return convertDocumentReference((org.hl7.fhir.r4.model.DocumentReference) src); - if (src instanceof org.hl7.fhir.r4.model.EligibilityRequest) - return convertEligibilityRequest((org.hl7.fhir.r4.model.EligibilityRequest) src); - if (src instanceof org.hl7.fhir.r4.model.EligibilityResponse) - return convertEligibilityResponse((org.hl7.fhir.r4.model.EligibilityResponse) src); - if (src instanceof org.hl7.fhir.r4.model.Encounter) - return convertEncounter((org.hl7.fhir.r4.model.Encounter) src); - if (src instanceof org.hl7.fhir.r4.model.Endpoint) - return convertEndpoint((org.hl7.fhir.r4.model.Endpoint) src); - if (src instanceof org.hl7.fhir.r4.model.EnrollmentRequest) - return convertEnrollmentRequest((org.hl7.fhir.r4.model.EnrollmentRequest) src); - if (src instanceof org.hl7.fhir.r4.model.EnrollmentResponse) - return convertEnrollmentResponse((org.hl7.fhir.r4.model.EnrollmentResponse) src); - if (src instanceof org.hl7.fhir.r4.model.EpisodeOfCare) - return convertEpisodeOfCare((org.hl7.fhir.r4.model.EpisodeOfCare) src); - if (src instanceof org.hl7.fhir.r4.model.ExpansionProfile) - return convertExpansionProfile((org.hl7.fhir.r4.model.ExpansionProfile) src); - if (src instanceof org.hl7.fhir.r4.model.ExplanationOfBenefit) - return convertExplanationOfBenefit((org.hl7.fhir.r4.model.ExplanationOfBenefit) src); - if (src instanceof org.hl7.fhir.r4.model.FamilyMemberHistory) - return convertFamilyMemberHistory((org.hl7.fhir.r4.model.FamilyMemberHistory) src); - if (src instanceof org.hl7.fhir.r4.model.Flag) - return convertFlag((org.hl7.fhir.r4.model.Flag) src); - if (src instanceof org.hl7.fhir.r4.model.Goal) - return convertGoal((org.hl7.fhir.r4.model.Goal) src); - if (src instanceof org.hl7.fhir.r4.model.GraphDefinition) - return convertGraphDefinition((org.hl7.fhir.r4.model.GraphDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.Group) - return convertGroup((org.hl7.fhir.r4.model.Group) src); - if (src instanceof org.hl7.fhir.r4.model.GuidanceResponse) - return convertGuidanceResponse((org.hl7.fhir.r4.model.GuidanceResponse) src); - if (src instanceof org.hl7.fhir.r4.model.HealthcareService) - return convertHealthcareService((org.hl7.fhir.r4.model.HealthcareService) src); - if (src instanceof org.hl7.fhir.r4.model.ImagingManifest) - return convertImagingManifest((org.hl7.fhir.r4.model.ImagingManifest) src); - if (src instanceof org.hl7.fhir.r4.model.ImagingStudy) - return convertImagingStudy((org.hl7.fhir.r4.model.ImagingStudy) src); - if (src instanceof org.hl7.fhir.r4.model.Immunization) - return convertImmunization((org.hl7.fhir.r4.model.Immunization) src); - if (src instanceof org.hl7.fhir.r4.model.ImmunizationRecommendation) - return convertImmunizationRecommendation((org.hl7.fhir.r4.model.ImmunizationRecommendation) src); - if (src instanceof org.hl7.fhir.r4.model.ImplementationGuide) - return convertImplementationGuide((org.hl7.fhir.r4.model.ImplementationGuide) src); - if (src instanceof org.hl7.fhir.r4.model.Library) - return convertLibrary((org.hl7.fhir.r4.model.Library) src); - if (src instanceof org.hl7.fhir.r4.model.Linkage) - return convertLinkage((org.hl7.fhir.r4.model.Linkage) src); - if (src instanceof org.hl7.fhir.r4.model.ListResource) - return convertList((org.hl7.fhir.r4.model.ListResource) src); - if (src instanceof org.hl7.fhir.r4.model.Location) - return convertLocation((org.hl7.fhir.r4.model.Location) src); - if (src instanceof org.hl7.fhir.r4.model.Measure) - return convertMeasure((org.hl7.fhir.r4.model.Measure) src); - if (src instanceof org.hl7.fhir.r4.model.MeasureReport) - return convertMeasureReport((org.hl7.fhir.r4.model.MeasureReport) src); - if (src instanceof org.hl7.fhir.r4.model.Media) - return convertMedia((org.hl7.fhir.r4.model.Media) src); - if (src instanceof org.hl7.fhir.r4.model.Medication) - return convertMedication((org.hl7.fhir.r4.model.Medication) src); - if (src instanceof org.hl7.fhir.r4.model.MedicationAdministration) - return convertMedicationAdministration((org.hl7.fhir.r4.model.MedicationAdministration) src); - if (src instanceof org.hl7.fhir.r4.model.MedicationDispense) - return convertMedicationDispense((org.hl7.fhir.r4.model.MedicationDispense) src); - if (src instanceof org.hl7.fhir.r4.model.MedicationRequest) - return convertMedicationRequest((org.hl7.fhir.r4.model.MedicationRequest) src); - if (src instanceof org.hl7.fhir.r4.model.MedicationStatement) - return convertMedicationStatement((org.hl7.fhir.r4.model.MedicationStatement) src); - if (src instanceof org.hl7.fhir.r4.model.MessageDefinition) - return convertMessageDefinition((org.hl7.fhir.r4.model.MessageDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.MessageHeader) - return convertMessageHeader((org.hl7.fhir.r4.model.MessageHeader) src); - if (src instanceof org.hl7.fhir.r4.model.NamingSystem) - return convertNamingSystem((org.hl7.fhir.r4.model.NamingSystem) src); - if (src instanceof org.hl7.fhir.r4.model.NutritionOrder) - return convertNutritionOrder((org.hl7.fhir.r4.model.NutritionOrder) src); - if (src instanceof org.hl7.fhir.r4.model.Observation) - return convertObservation((org.hl7.fhir.r4.model.Observation) src); - if (src instanceof org.hl7.fhir.r4.model.OperationDefinition) - return convertOperationDefinition((org.hl7.fhir.r4.model.OperationDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.OperationOutcome) - return convertOperationOutcome((org.hl7.fhir.r4.model.OperationOutcome) src); - if (src instanceof org.hl7.fhir.r4.model.Organization) - return convertOrganization((org.hl7.fhir.r4.model.Organization) src); - if (src instanceof org.hl7.fhir.r4.model.Patient) - return convertPatient((org.hl7.fhir.r4.model.Patient) src); - if (src instanceof org.hl7.fhir.r4.model.PaymentNotice) - return convertPaymentNotice((org.hl7.fhir.r4.model.PaymentNotice) src); - if (src instanceof org.hl7.fhir.r4.model.PaymentReconciliation) - return convertPaymentReconciliation((org.hl7.fhir.r4.model.PaymentReconciliation) src); - if (src instanceof org.hl7.fhir.r4.model.Person) - return convertPerson((org.hl7.fhir.r4.model.Person) src); - if (src instanceof org.hl7.fhir.r4.model.PlanDefinition) - return convertPlanDefinition((org.hl7.fhir.r4.model.PlanDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.Practitioner) - return convertPractitioner((org.hl7.fhir.r4.model.Practitioner) src); - if (src instanceof org.hl7.fhir.r4.model.PractitionerRole) - return convertPractitionerRole((org.hl7.fhir.r4.model.PractitionerRole) src); - if (src instanceof org.hl7.fhir.r4.model.Procedure) - return convertProcedure((org.hl7.fhir.r4.model.Procedure) src); - if (src instanceof org.hl7.fhir.r4.model.ProcedureRequest) - return convertProcedureRequest((org.hl7.fhir.r4.model.ProcedureRequest) src); - if (src instanceof org.hl7.fhir.r4.model.ProcessRequest) - return convertProcessRequest((org.hl7.fhir.r4.model.ProcessRequest) src); - if (src instanceof org.hl7.fhir.r4.model.ProcessResponse) - return convertProcessResponse((org.hl7.fhir.r4.model.ProcessResponse) src); - if (src instanceof org.hl7.fhir.r4.model.Provenance) - return convertProvenance((org.hl7.fhir.r4.model.Provenance) src); - if (src instanceof org.hl7.fhir.r4.model.Questionnaire) - return convertQuestionnaire((org.hl7.fhir.r4.model.Questionnaire) src); - if (src instanceof org.hl7.fhir.r4.model.QuestionnaireResponse) - return convertQuestionnaireResponse((org.hl7.fhir.r4.model.QuestionnaireResponse) src); - if (src instanceof org.hl7.fhir.r4.model.RelatedPerson) - return convertRelatedPerson((org.hl7.fhir.r4.model.RelatedPerson) src); - if (src instanceof org.hl7.fhir.r4.model.RequestGroup) - return convertRequestGroup((org.hl7.fhir.r4.model.RequestGroup) src); - if (src instanceof org.hl7.fhir.r4.model.ResearchStudy) - return convertResearchStudy((org.hl7.fhir.r4.model.ResearchStudy) src); - if (src instanceof org.hl7.fhir.r4.model.ResearchSubject) - return convertResearchSubject((org.hl7.fhir.r4.model.ResearchSubject) src); - if (src instanceof org.hl7.fhir.r4.model.RiskAssessment) - return convertRiskAssessment((org.hl7.fhir.r4.model.RiskAssessment) src); - if (src instanceof org.hl7.fhir.r4.model.Schedule) - return convertSchedule((org.hl7.fhir.r4.model.Schedule) src); - if (src instanceof org.hl7.fhir.r4.model.SearchParameter) - return convertSearchParameter((org.hl7.fhir.r4.model.SearchParameter) src); - if (src instanceof org.hl7.fhir.r4.model.Sequence) - return convertSequence((org.hl7.fhir.r4.model.Sequence) src); - if (src instanceof org.hl7.fhir.r4.model.ServiceDefinition) - return convertServiceDefinition((org.hl7.fhir.r4.model.ServiceDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.Slot) - return convertSlot((org.hl7.fhir.r4.model.Slot) src); - if (src instanceof org.hl7.fhir.r4.model.Specimen) - return convertSpecimen((org.hl7.fhir.r4.model.Specimen) src); - if (src instanceof org.hl7.fhir.r4.model.StructureDefinition) - return convertStructureDefinition((org.hl7.fhir.r4.model.StructureDefinition) src); - if (src instanceof org.hl7.fhir.r4.model.StructureMap) - return convertStructureMap((org.hl7.fhir.r4.model.StructureMap) src); - if (src instanceof org.hl7.fhir.r4.model.Subscription) - return convertSubscription((org.hl7.fhir.r4.model.Subscription) src); - if (src instanceof org.hl7.fhir.r4.model.Substance) - return convertSubstance((org.hl7.fhir.r4.model.Substance) src); - if (src instanceof org.hl7.fhir.r4.model.SupplyDelivery) - return convertSupplyDelivery((org.hl7.fhir.r4.model.SupplyDelivery) src); - if (src instanceof org.hl7.fhir.r4.model.SupplyRequest) - return convertSupplyRequest((org.hl7.fhir.r4.model.SupplyRequest) src); - if (src instanceof org.hl7.fhir.r4.model.Task) - return convertTask((org.hl7.fhir.r4.model.Task) src); - if (src instanceof org.hl7.fhir.r4.model.TestReport) - return convertTestReport((org.hl7.fhir.r4.model.TestReport) src); - if (src instanceof org.hl7.fhir.r4.model.TestScript) - return convertTestScript((org.hl7.fhir.r4.model.TestScript) src); - if (src instanceof org.hl7.fhir.r4.model.ValueSet) - return convertValueSet((org.hl7.fhir.r4.model.ValueSet) src); - if (src instanceof org.hl7.fhir.r4.model.VisionPrescription) - return convertVisionPrescription((org.hl7.fhir.r4.model.VisionPrescription) src); - throw new Error("Unknown resource "+src.fhirType()); - } - - -} +package org.hl7.fhir.convertors; + +/*- + * #%L + * HAPI FHIR - Converter + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + + +import org.hl7.fhir.exceptions.FHIRException; +import org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind; +import org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule; + + +/* + Copyright (c) 2011+, HL7, Inc. + All rights reserved. + + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of HL7 nor the names of its contributors may be used to + endorse or promote products derived from this software without specific + prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND + ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED + WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, + INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR + PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, + WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + +*/ + +// Generated on Mon, Apr 24, 2017 09:30+1000 for FHIR v3.1.0 + + +public class VersionConvertor_30_40 { + + private static void copyElement(org.hl7.fhir.dstu3.model.Element src, org.hl7.fhir.r4.model.Element tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + for (org.hl7.fhir.dstu3.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + private static void copyElement(org.hl7.fhir.r4.model.Element src, org.hl7.fhir.dstu3.model.Element tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + for (org.hl7.fhir.r4.model.Extension e : src.getExtension()) { + tgt.addExtension(convertExtension(e)); + } + } + + private static void copyBackboneElement(org.hl7.fhir.dstu3.model.BackboneElement src, org.hl7.fhir.r4.model.BackboneElement tgt) throws FHIRException { + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Extension e : src.getModifierExtension()) { + tgt.addModifierExtension(convertExtension(e)); + } + } + + private static void copyBackboneElement(org.hl7.fhir.r4.model.BackboneElement src, org.hl7.fhir.dstu3.model.BackboneElement tgt) throws FHIRException { + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Extension e : src.getModifierExtension()) { + tgt.addModifierExtension(convertExtension(e)); + } + } + + public static org.hl7.fhir.r4.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.dstu3.model.Base64BinaryType src) throws FHIRException { + org.hl7.fhir.r4.model.Base64BinaryType tgt = new org.hl7.fhir.r4.model.Base64BinaryType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Base64BinaryType convertBase64Binary(org.hl7.fhir.r4.model.Base64BinaryType src) throws FHIRException { + org.hl7.fhir.dstu3.model.Base64BinaryType tgt = new org.hl7.fhir.dstu3.model.Base64BinaryType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.BooleanType convertBoolean(org.hl7.fhir.dstu3.model.BooleanType src) throws FHIRException { + org.hl7.fhir.r4.model.BooleanType tgt = new org.hl7.fhir.r4.model.BooleanType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.BooleanType convertBoolean(org.hl7.fhir.r4.model.BooleanType src) throws FHIRException { + org.hl7.fhir.dstu3.model.BooleanType tgt = new org.hl7.fhir.dstu3.model.BooleanType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeType convertCode(org.hl7.fhir.dstu3.model.CodeType src) throws FHIRException { + org.hl7.fhir.r4.model.CodeType tgt = new org.hl7.fhir.r4.model.CodeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeType convertCode(org.hl7.fhir.r4.model.CodeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.CodeType tgt = new org.hl7.fhir.dstu3.model.CodeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.DateType convertDate(org.hl7.fhir.dstu3.model.DateType src) throws FHIRException { + org.hl7.fhir.r4.model.DateType tgt = new org.hl7.fhir.r4.model.DateType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DateType convertDate(org.hl7.fhir.r4.model.DateType src) throws FHIRException { + org.hl7.fhir.dstu3.model.DateType tgt = new org.hl7.fhir.dstu3.model.DateType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.DateTimeType convertDateTime(org.hl7.fhir.dstu3.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.r4.model.DateTimeType tgt = new org.hl7.fhir.r4.model.DateTimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DateTimeType convertDateTime(org.hl7.fhir.r4.model.DateTimeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.DateTimeType tgt = new org.hl7.fhir.dstu3.model.DateTimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.DecimalType convertDecimal(org.hl7.fhir.dstu3.model.DecimalType src) throws FHIRException { + org.hl7.fhir.r4.model.DecimalType tgt = new org.hl7.fhir.r4.model.DecimalType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DecimalType convertDecimal(org.hl7.fhir.r4.model.DecimalType src) throws FHIRException { + org.hl7.fhir.dstu3.model.DecimalType tgt = new org.hl7.fhir.dstu3.model.DecimalType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.IdType convertId(org.hl7.fhir.dstu3.model.IdType src) throws FHIRException { + org.hl7.fhir.r4.model.IdType tgt = new org.hl7.fhir.r4.model.IdType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.IdType convertId(org.hl7.fhir.r4.model.IdType src) throws FHIRException { + org.hl7.fhir.dstu3.model.IdType tgt = new org.hl7.fhir.dstu3.model.IdType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.InstantType convertInstant(org.hl7.fhir.dstu3.model.InstantType src) throws FHIRException { + org.hl7.fhir.r4.model.InstantType tgt = new org.hl7.fhir.r4.model.InstantType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.InstantType convertInstant(org.hl7.fhir.r4.model.InstantType src) throws FHIRException { + org.hl7.fhir.dstu3.model.InstantType tgt = new org.hl7.fhir.dstu3.model.InstantType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.IntegerType convertInteger(org.hl7.fhir.dstu3.model.IntegerType src) throws FHIRException { + org.hl7.fhir.r4.model.IntegerType tgt = new org.hl7.fhir.r4.model.IntegerType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.IntegerType convertInteger(org.hl7.fhir.r4.model.IntegerType src) throws FHIRException { + org.hl7.fhir.dstu3.model.IntegerType tgt = new org.hl7.fhir.dstu3.model.IntegerType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.MarkdownType convertMarkdown(org.hl7.fhir.dstu3.model.MarkdownType src) throws FHIRException { + org.hl7.fhir.r4.model.MarkdownType tgt = new org.hl7.fhir.r4.model.MarkdownType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MarkdownType convertMarkdown(org.hl7.fhir.r4.model.MarkdownType src) throws FHIRException { + org.hl7.fhir.dstu3.model.MarkdownType tgt = new org.hl7.fhir.dstu3.model.MarkdownType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.OidType convertOid(org.hl7.fhir.dstu3.model.OidType src) throws FHIRException { + org.hl7.fhir.r4.model.OidType tgt = new org.hl7.fhir.r4.model.OidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OidType convertOid(org.hl7.fhir.r4.model.OidType src) throws FHIRException { + org.hl7.fhir.dstu3.model.OidType tgt = new org.hl7.fhir.dstu3.model.OidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.PositiveIntType convertPositiveInt(org.hl7.fhir.dstu3.model.PositiveIntType src) throws FHIRException { + org.hl7.fhir.r4.model.PositiveIntType tgt = new org.hl7.fhir.r4.model.PositiveIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PositiveIntType convertPositiveInt(org.hl7.fhir.r4.model.PositiveIntType src) throws FHIRException { + org.hl7.fhir.dstu3.model.PositiveIntType tgt = new org.hl7.fhir.dstu3.model.PositiveIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.StringType convertString(org.hl7.fhir.dstu3.model.StringType src) throws FHIRException { + org.hl7.fhir.r4.model.StringType tgt = new org.hl7.fhir.r4.model.StringType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StringType convertString(org.hl7.fhir.r4.model.StringType src) throws FHIRException { + org.hl7.fhir.dstu3.model.StringType tgt = new org.hl7.fhir.dstu3.model.StringType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.TimeType convertTime(org.hl7.fhir.dstu3.model.TimeType src) throws FHIRException { + org.hl7.fhir.r4.model.TimeType tgt = new org.hl7.fhir.r4.model.TimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TimeType convertTime(org.hl7.fhir.r4.model.TimeType src) throws FHIRException { + org.hl7.fhir.dstu3.model.TimeType tgt = new org.hl7.fhir.dstu3.model.TimeType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.dstu3.model.UnsignedIntType src) throws FHIRException { + org.hl7.fhir.r4.model.UnsignedIntType tgt = new org.hl7.fhir.r4.model.UnsignedIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.UnsignedIntType convertUnsignedInt(org.hl7.fhir.r4.model.UnsignedIntType src) throws FHIRException { + org.hl7.fhir.dstu3.model.UnsignedIntType tgt = new org.hl7.fhir.dstu3.model.UnsignedIntType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.UriType convertUri(org.hl7.fhir.dstu3.model.UriType src) throws FHIRException { + org.hl7.fhir.r4.model.UriType tgt = new org.hl7.fhir.r4.model.UriType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.UriType convertUri(org.hl7.fhir.r4.model.UriType src) throws FHIRException { + org.hl7.fhir.dstu3.model.UriType tgt = new org.hl7.fhir.dstu3.model.UriType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.UuidType convertUuid(org.hl7.fhir.dstu3.model.UuidType src) throws FHIRException { + org.hl7.fhir.r4.model.UuidType tgt = new org.hl7.fhir.r4.model.UuidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.UuidType convertUuid(org.hl7.fhir.r4.model.UuidType src) throws FHIRException { + org.hl7.fhir.dstu3.model.UuidType tgt = new org.hl7.fhir.dstu3.model.UuidType(src.getValue()); + copyElement(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.Extension convertExtension(org.hl7.fhir.dstu3.model.Extension src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Extension tgt = new org.hl7.fhir.r4.model.Extension(); + copyElement(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Extension convertExtension(org.hl7.fhir.r4.model.Extension src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Extension tgt = new org.hl7.fhir.dstu3.model.Extension(); + copyElement(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Narrative convertNarrative(org.hl7.fhir.dstu3.model.Narrative src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Narrative tgt = new org.hl7.fhir.r4.model.Narrative(); + copyElement(src, tgt); + if (src.hasStatus()) + tgt.setStatus(convertNarrativeStatus(src.getStatus())); + if (src.hasDiv()) + tgt.setDiv(src.getDiv()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Narrative convertNarrative(org.hl7.fhir.r4.model.Narrative src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Narrative tgt = new org.hl7.fhir.dstu3.model.Narrative(); + copyElement(src, tgt); + if (src.hasStatus()) + tgt.setStatus(convertNarrativeStatus(src.getStatus())); + if (src.hasDiv()) + tgt.setDiv(src.getDiv()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GENERATED: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.GENERATED; + case EXTENSIONS: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EXTENSIONS; + case ADDITIONAL: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.ADDITIONAL; + case EMPTY: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.EMPTY; + default: return org.hl7.fhir.r4.model.Narrative.NarrativeStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus convertNarrativeStatus(org.hl7.fhir.r4.model.Narrative.NarrativeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GENERATED: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.GENERATED; + case EXTENSIONS: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EXTENSIONS; + case ADDITIONAL: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.ADDITIONAL; + case EMPTY: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.EMPTY; + default: return org.hl7.fhir.dstu3.model.Narrative.NarrativeStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Age convertAge(org.hl7.fhir.dstu3.model.Age src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Age tgt = new org.hl7.fhir.r4.model.Age(); + copyQuantity(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Age convertAge(org.hl7.fhir.r4.model.Age src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Age tgt = new org.hl7.fhir.dstu3.model.Age(); + copyQuantity(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.Annotation convertAnnotation(org.hl7.fhir.dstu3.model.Annotation src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Annotation tgt = new org.hl7.fhir.r4.model.Annotation(); + copyElement(src, tgt); + if (src.hasAuthor()) + tgt.setAuthor(convertType(src.getAuthor())); + if (src.hasTime()) + tgt.setTime(src.getTime()); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Annotation convertAnnotation(org.hl7.fhir.r4.model.Annotation src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Annotation tgt = new org.hl7.fhir.dstu3.model.Annotation(); + copyElement(src, tgt); + if (src.hasAuthor()) + tgt.setAuthor(convertType(src.getAuthor())); + if (src.hasTime()) + tgt.setTime(src.getTime()); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Attachment convertAttachment(org.hl7.fhir.dstu3.model.Attachment src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Attachment tgt = new org.hl7.fhir.r4.model.Attachment(); + copyElement(src, tgt); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasData()) + tgt.setData(src.getData()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasSize()) + tgt.setSize(src.getSize()); + if (src.hasHash()) + tgt.setHash(src.getHash()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasCreation()) + tgt.setCreation(src.getCreation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Attachment convertAttachment(org.hl7.fhir.r4.model.Attachment src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Attachment tgt = new org.hl7.fhir.dstu3.model.Attachment(); + copyElement(src, tgt); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasData()) + tgt.setData(src.getData()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasSize()) + tgt.setSize(src.getSize()); + if (src.hasHash()) + tgt.setHash(src.getHash()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasCreation()) + tgt.setCreation(src.getCreation()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.dstu3.model.CodeableConcept src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CodeableConcept tgt = new org.hl7.fhir.r4.model.CodeableConcept(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCoding()) + tgt.addCoding(convertCoding(t)); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeableConcept convertCodeableConcept(org.hl7.fhir.r4.model.CodeableConcept src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CodeableConcept tgt = new org.hl7.fhir.dstu3.model.CodeableConcept(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Coding t : src.getCoding()) + tgt.addCoding(convertCoding(t)); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Coding convertCoding(org.hl7.fhir.dstu3.model.Coding src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Coding tgt = new org.hl7.fhir.r4.model.Coding(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasUserSelected()) + tgt.setUserSelected(src.getUserSelected()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Coding convertCoding(org.hl7.fhir.r4.model.Coding src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Coding tgt = new org.hl7.fhir.dstu3.model.Coding(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasUserSelected()) + tgt.setUserSelected(src.getUserSelected()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Count convertCount(org.hl7.fhir.dstu3.model.Count src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Count tgt = new org.hl7.fhir.r4.model.Count(); + copyQuantity(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Count convertCount(org.hl7.fhir.r4.model.Count src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Count tgt = new org.hl7.fhir.dstu3.model.Count(); + copyQuantity(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.Distance convertDistance(org.hl7.fhir.dstu3.model.Distance src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Distance tgt = new org.hl7.fhir.r4.model.Distance(); + copyQuantity(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Distance convertDistance(org.hl7.fhir.r4.model.Distance src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Distance tgt = new org.hl7.fhir.dstu3.model.Distance(); + copyQuantity(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.Duration convertDuration(org.hl7.fhir.dstu3.model.Duration src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Duration tgt = new org.hl7.fhir.r4.model.Duration(); + copyQuantity(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Duration convertDuration(org.hl7.fhir.r4.model.Duration src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Duration tgt = new org.hl7.fhir.dstu3.model.Duration(); + copyQuantity(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.Identifier convertIdentifier(org.hl7.fhir.dstu3.model.Identifier src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Identifier tgt = new org.hl7.fhir.r4.model.Identifier(); + copyElement(src, tgt); + if (src.hasUse()) + tgt.setUse(convertIdentifierUse(src.getUse())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasAssigner()) + tgt.setAssigner(convertReference(src.getAssigner())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Identifier convertIdentifier(org.hl7.fhir.r4.model.Identifier src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Identifier tgt = new org.hl7.fhir.dstu3.model.Identifier(); + copyElement(src, tgt); + if (src.hasUse()) + tgt.setUse(convertIdentifierUse(src.getUse())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasAssigner()) + tgt.setAssigner(convertReference(src.getAssigner())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.dstu3.model.Identifier.IdentifierUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.USUAL; + case OFFICIAL: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.OFFICIAL; + case TEMP: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.TEMP; + case SECONDARY: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.SECONDARY; + default: return org.hl7.fhir.r4.model.Identifier.IdentifierUse.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Identifier.IdentifierUse convertIdentifierUse(org.hl7.fhir.r4.model.Identifier.IdentifierUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.USUAL; + case OFFICIAL: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.OFFICIAL; + case TEMP: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.TEMP; + case SECONDARY: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.SECONDARY; + default: return org.hl7.fhir.dstu3.model.Identifier.IdentifierUse.NULL; + } +} + + public static org.hl7.fhir.r4.model.Money convertMoney(org.hl7.fhir.dstu3.model.Money src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Money tgt = new org.hl7.fhir.r4.model.Money(); + copyQuantity(src, tgt); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Money convertMoney(org.hl7.fhir.r4.model.Money src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Money tgt = new org.hl7.fhir.dstu3.model.Money(); + copyQuantity(src, tgt); + return tgt; + } + + public static org.hl7.fhir.r4.model.Period convertPeriod(org.hl7.fhir.dstu3.model.Period src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Period tgt = new org.hl7.fhir.r4.model.Period(); + copyElement(src, tgt); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Period convertPeriod(org.hl7.fhir.r4.model.Period src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Period tgt = new org.hl7.fhir.dstu3.model.Period(); + copyElement(src, tgt); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + return tgt; + } + + public static void copyQuantity(org.hl7.fhir.dstu3.model.Quantity src, org.hl7.fhir.r4.model.Quantity tgt) throws FHIRException { + if (src == null || tgt == null) + return; + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasComparator()) + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + } + + public static void copyQuantity(org.hl7.fhir.r4.model.Quantity src, org.hl7.fhir.dstu3.model.Quantity tgt) throws FHIRException { + if (src == null || tgt == null) + return; + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasComparator()) + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); +} + + public static org.hl7.fhir.r4.model.Quantity convertQuantity(org.hl7.fhir.dstu3.model.Quantity src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Quantity tgt = new org.hl7.fhir.r4.model.Quantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasComparator()) + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Quantity convertQuantity(org.hl7.fhir.r4.model.Quantity src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Quantity tgt = new org.hl7.fhir.dstu3.model.Quantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasComparator()) + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.dstu3.model.Quantity.QuantityComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LESS_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_THAN; + case LESS_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.LESS_OR_EQUAL; + case GREATER_OR_EQUAL: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; + case GREATER_THAN: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.GREATER_THAN; + default: return org.hl7.fhir.r4.model.Quantity.QuantityComparator.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Quantity.QuantityComparator convertQuantityComparator(org.hl7.fhir.r4.model.Quantity.QuantityComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LESS_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_THAN; + case LESS_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.LESS_OR_EQUAL; + case GREATER_OR_EQUAL: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_OR_EQUAL; + case GREATER_THAN: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.GREATER_THAN; + default: return org.hl7.fhir.dstu3.model.Quantity.QuantityComparator.NULL; + } +} + + public static org.hl7.fhir.r4.model.Range convertRange(org.hl7.fhir.dstu3.model.Range src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Range tgt = new org.hl7.fhir.r4.model.Range(); + copyElement(src, tgt); + if (src.hasLow()) + tgt.setLow(convertSimpleQuantity(src.getLow())); + if (src.hasHigh()) + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Range convertRange(org.hl7.fhir.r4.model.Range src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Range tgt = new org.hl7.fhir.dstu3.model.Range(); + copyElement(src, tgt); + if (src.hasLow()) + tgt.setLow(convertSimpleQuantity(src.getLow())); + if (src.hasHigh()) + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Ratio convertRatio(org.hl7.fhir.dstu3.model.Ratio src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Ratio tgt = new org.hl7.fhir.r4.model.Ratio(); + copyElement(src, tgt); + if (src.hasNumerator()) + tgt.setNumerator(convertQuantity(src.getNumerator())); + if (src.hasDenominator()) + tgt.setDenominator(convertQuantity(src.getDenominator())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Ratio convertRatio(org.hl7.fhir.r4.model.Ratio src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Ratio tgt = new org.hl7.fhir.dstu3.model.Ratio(); + copyElement(src, tgt); + if (src.hasNumerator()) + tgt.setNumerator(convertQuantity(src.getNumerator())); + if (src.hasDenominator()) + tgt.setDenominator(convertQuantity(src.getDenominator())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Reference convertReference(org.hl7.fhir.dstu3.model.Reference src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Reference tgt = new org.hl7.fhir.r4.model.Reference(); + copyElement(src, tgt); + if (src.hasReference()) + tgt.setReference(src.getReference()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Reference convertReference(org.hl7.fhir.r4.model.Reference src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Reference tgt = new org.hl7.fhir.dstu3.model.Reference(); + copyElement(src, tgt); + if (src.hasReference()) + tgt.setReference(src.getReference()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public static org.hl7.fhir.r4.model.SampledData convertSampledData(org.hl7.fhir.dstu3.model.SampledData src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.SampledData tgt = new org.hl7.fhir.r4.model.SampledData(); + copyElement(src, tgt); + if (src.hasOrigin()) + tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); + if (src.hasPeriod()) + tgt.setPeriod(src.getPeriod()); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasLowerLimit()) + tgt.setLowerLimit(src.getLowerLimit()); + if (src.hasUpperLimit()) + tgt.setUpperLimit(src.getUpperLimit()); + if (src.hasDimensions()) + tgt.setDimensions(src.getDimensions()); + if (src.hasData()) + tgt.setData(src.getData()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SampledData convertSampledData(org.hl7.fhir.r4.model.SampledData src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.SampledData tgt = new org.hl7.fhir.dstu3.model.SampledData(); + copyElement(src, tgt); + if (src.hasOrigin()) + tgt.setOrigin(convertSimpleQuantity(src.getOrigin())); + if (src.hasPeriod()) + tgt.setPeriod(src.getPeriod()); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasLowerLimit()) + tgt.setLowerLimit(src.getLowerLimit()); + if (src.hasUpperLimit()) + tgt.setUpperLimit(src.getUpperLimit()); + if (src.hasDimensions()) + tgt.setDimensions(src.getDimensions()); + if (src.hasData()) + tgt.setData(src.getData()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Signature convertSignature(org.hl7.fhir.dstu3.model.Signature src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Signature tgt = new org.hl7.fhir.r4.model.Signature(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + if (src.hasWhen()) + tgt.setWhen(src.getWhen()); + if (src.hasWho()) + tgt.setWho(convertType(src.getWho())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertType(src.getOnBehalfOf())); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Signature convertSignature(org.hl7.fhir.r4.model.Signature src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Signature tgt = new org.hl7.fhir.dstu3.model.Signature(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + if (src.hasWhen()) + tgt.setWhen(src.getWhen()); + if (src.hasWho()) + tgt.setWho(convertType(src.getWho())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertType(src.getOnBehalfOf())); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Address convertAddress(org.hl7.fhir.dstu3.model.Address src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Address tgt = new org.hl7.fhir.r4.model.Address(); + copyElement(src, tgt); + if (src.hasUse()) + tgt.setUse(convertAddressUse(src.getUse())); + if (src.hasType()) + tgt.setType(convertAddressType(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getLine()) + tgt.addLine(t.getValue()); + if (src.hasCity()) + tgt.setCity(src.getCity()); + if (src.hasDistrict()) + tgt.setDistrict(src.getDistrict()); + if (src.hasState()) + tgt.setState(src.getState()); + if (src.hasPostalCode()) + tgt.setPostalCode(src.getPostalCode()); + if (src.hasCountry()) + tgt.setCountry(src.getCountry()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Address convertAddress(org.hl7.fhir.r4.model.Address src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Address tgt = new org.hl7.fhir.dstu3.model.Address(); + copyElement(src, tgt); + if (src.hasUse()) + tgt.setUse(convertAddressUse(src.getUse())); + if (src.hasType()) + tgt.setType(convertAddressType(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + for (org.hl7.fhir.r4.model.StringType t : src.getLine()) + tgt.addLine(t.getValue()); + if (src.hasCity()) + tgt.setCity(src.getCity()); + if (src.hasDistrict()) + tgt.setDistrict(src.getDistrict()); + if (src.hasState()) + tgt.setState(src.getState()); + if (src.hasPostalCode()) + tgt.setPostalCode(src.getPostalCode()); + if (src.hasCountry()) + tgt.setCountry(src.getCountry()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Address.AddressUse convertAddressUse(org.hl7.fhir.dstu3.model.Address.AddressUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.r4.model.Address.AddressUse.HOME; + case WORK: return org.hl7.fhir.r4.model.Address.AddressUse.WORK; + case TEMP: return org.hl7.fhir.r4.model.Address.AddressUse.TEMP; + case OLD: return org.hl7.fhir.r4.model.Address.AddressUse.OLD; + default: return org.hl7.fhir.r4.model.Address.AddressUse.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Address.AddressUse convertAddressUse(org.hl7.fhir.r4.model.Address.AddressUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.dstu3.model.Address.AddressUse.HOME; + case WORK: return org.hl7.fhir.dstu3.model.Address.AddressUse.WORK; + case TEMP: return org.hl7.fhir.dstu3.model.Address.AddressUse.TEMP; + case OLD: return org.hl7.fhir.dstu3.model.Address.AddressUse.OLD; + default: return org.hl7.fhir.dstu3.model.Address.AddressUse.NULL; + } +} + + private static org.hl7.fhir.r4.model.Address.AddressType convertAddressType(org.hl7.fhir.dstu3.model.Address.AddressType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case POSTAL: return org.hl7.fhir.r4.model.Address.AddressType.POSTAL; + case PHYSICAL: return org.hl7.fhir.r4.model.Address.AddressType.PHYSICAL; + case BOTH: return org.hl7.fhir.r4.model.Address.AddressType.BOTH; + default: return org.hl7.fhir.r4.model.Address.AddressType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Address.AddressType convertAddressType(org.hl7.fhir.r4.model.Address.AddressType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case POSTAL: return org.hl7.fhir.dstu3.model.Address.AddressType.POSTAL; + case PHYSICAL: return org.hl7.fhir.dstu3.model.Address.AddressType.PHYSICAL; + case BOTH: return org.hl7.fhir.dstu3.model.Address.AddressType.BOTH; + default: return org.hl7.fhir.dstu3.model.Address.AddressType.NULL; + } +} + + public static org.hl7.fhir.r4.model.ContactDetail convertContactDetail(org.hl7.fhir.dstu3.model.ContactDetail src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ContactDetail tgt = new org.hl7.fhir.r4.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ContactDetail convertContactDetail(org.hl7.fhir.r4.model.ContactDetail src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ContactDetail tgt = new org.hl7.fhir.dstu3.model.ContactDetail(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ContactPoint convertContactPoint(org.hl7.fhir.dstu3.model.ContactPoint src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ContactPoint tgt = new org.hl7.fhir.r4.model.ContactPoint(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(convertContactPointSystem(src.getSystem())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasUse()) + tgt.setUse(convertContactPointUse(src.getUse())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ContactPoint convertContactPoint(org.hl7.fhir.r4.model.ContactPoint src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ContactPoint tgt = new org.hl7.fhir.dstu3.model.ContactPoint(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(convertContactPointSystem(src.getSystem())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasUse()) + tgt.setUse(convertContactPointUse(src.getUse())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHONE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PHONE; + case FAX: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.FAX; + case EMAIL: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.EMAIL; + case PAGER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.PAGER; + case URL: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.URL; + case SMS: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.SMS; + case OTHER: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.OTHER; + default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem convertContactPointSystem(org.hl7.fhir.r4.model.ContactPoint.ContactPointSystem src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHONE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PHONE; + case FAX: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.FAX; + case EMAIL: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.EMAIL; + case PAGER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.PAGER; + case URL: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.URL; + case SMS: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.SMS; + case OTHER: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.OTHER; + default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointSystem.NULL; + } +} + + private static org.hl7.fhir.r4.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.HOME; + case WORK: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.WORK; + case TEMP: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.TEMP; + case OLD: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.OLD; + case MOBILE: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.MOBILE; + default: return org.hl7.fhir.r4.model.ContactPoint.ContactPointUse.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse convertContactPointUse(org.hl7.fhir.r4.model.ContactPoint.ContactPointUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HOME: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.HOME; + case WORK: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.WORK; + case TEMP: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.TEMP; + case OLD: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.OLD; + case MOBILE: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.MOBILE; + default: return org.hl7.fhir.dstu3.model.ContactPoint.ContactPointUse.NULL; + } +} + + public static org.hl7.fhir.r4.model.Contributor convertContributor(org.hl7.fhir.dstu3.model.Contributor src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contributor tgt = new org.hl7.fhir.r4.model.Contributor(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertContributorType(src.getType())); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contributor convertContributor(org.hl7.fhir.r4.model.Contributor src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contributor tgt = new org.hl7.fhir.dstu3.model.Contributor(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertContributorType(src.getType())); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Contributor.ContributorType convertContributorType(org.hl7.fhir.dstu3.model.Contributor.ContributorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case AUTHOR: return org.hl7.fhir.r4.model.Contributor.ContributorType.AUTHOR; + case EDITOR: return org.hl7.fhir.r4.model.Contributor.ContributorType.EDITOR; + case REVIEWER: return org.hl7.fhir.r4.model.Contributor.ContributorType.REVIEWER; + case ENDORSER: return org.hl7.fhir.r4.model.Contributor.ContributorType.ENDORSER; + default: return org.hl7.fhir.r4.model.Contributor.ContributorType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Contributor.ContributorType convertContributorType(org.hl7.fhir.r4.model.Contributor.ContributorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case AUTHOR: return org.hl7.fhir.dstu3.model.Contributor.ContributorType.AUTHOR; + case EDITOR: return org.hl7.fhir.dstu3.model.Contributor.ContributorType.EDITOR; + case REVIEWER: return org.hl7.fhir.dstu3.model.Contributor.ContributorType.REVIEWER; + case ENDORSER: return org.hl7.fhir.dstu3.model.Contributor.ContributorType.ENDORSER; + default: return org.hl7.fhir.dstu3.model.Contributor.ContributorType.NULL; + } +} + + public static org.hl7.fhir.r4.model.DataRequirement convertDataRequirement(org.hl7.fhir.dstu3.model.DataRequirement src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DataRequirement tgt = new org.hl7.fhir.r4.model.DataRequirement(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + for (org.hl7.fhir.dstu3.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getMustSupport()) + tgt.addMustSupport(t.getValue()); + for (org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent t : src.getCodeFilter()) + tgt.addCodeFilter(convertDataRequirementCodeFilterComponent(t)); + for (org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent t : src.getDateFilter()) + tgt.addDateFilter(convertDataRequirementDateFilterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DataRequirement convertDataRequirement(org.hl7.fhir.r4.model.DataRequirement src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DataRequirement tgt = new org.hl7.fhir.dstu3.model.DataRequirement(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + for (org.hl7.fhir.r4.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getMustSupport()) + tgt.addMustSupport(t.getValue()); + for (org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent t : src.getCodeFilter()) + tgt.addCodeFilter(convertDataRequirementCodeFilterComponent(t)); + for (org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent t : src.getDateFilter()) + tgt.addDateFilter(convertDataRequirementDateFilterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent convertDataRequirementCodeFilterComponent(org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent tgt = new org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent(); + copyElement(src, tgt); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasValueSet()) + tgt.setValueSet(convertType(src.getValueSet())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getValueCode()) + tgt.addValueCode(t.getValue()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getValueCoding()) + tgt.addValueCoding(convertCoding(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getValueCodeableConcept()) + tgt.addValueCodeableConcept(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent convertDataRequirementCodeFilterComponent(org.hl7.fhir.r4.model.DataRequirement.DataRequirementCodeFilterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent tgt = new org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementCodeFilterComponent(); + copyElement(src, tgt); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasValueSet()) + tgt.setValueSet(convertType(src.getValueSet())); + for (org.hl7.fhir.r4.model.CodeType t : src.getValueCode()) + tgt.addValueCode(t.getValue()); + for (org.hl7.fhir.r4.model.Coding t : src.getValueCoding()) + tgt.addValueCoding(convertCoding(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getValueCodeableConcept()) + tgt.addValueCodeableConcept(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent convertDataRequirementDateFilterComponent(org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent tgt = new org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent(); + copyElement(src, tgt); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent convertDataRequirementDateFilterComponent(org.hl7.fhir.r4.model.DataRequirement.DataRequirementDateFilterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent tgt = new org.hl7.fhir.dstu3.model.DataRequirement.DataRequirementDateFilterComponent(); + copyElement(src, tgt); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Dosage convertDosage(org.hl7.fhir.dstu3.model.Dosage src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Dosage tgt = new org.hl7.fhir.r4.model.Dosage(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasText()) + tgt.setText(src.getText()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAdditionalInstruction()) + tgt.addAdditionalInstruction(convertCodeableConcept(t)); + if (src.hasPatientInstruction()) + tgt.setPatientInstruction(src.getPatientInstruction()); + if (src.hasTiming()) + tgt.setTiming(convertTiming(src.getTiming())); + if (src.hasAsNeeded()) + tgt.setAsNeeded(convertType(src.getAsNeeded())); + if (src.hasSite()) + tgt.setSite(convertCodeableConcept(src.getSite())); + if (src.hasRoute()) + tgt.setRoute(convertCodeableConcept(src.getRoute())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasDose()) + tgt.setDose(convertType(src.getDose())); + if (src.hasMaxDosePerPeriod()) + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + if (src.hasMaxDosePerAdministration()) + tgt.setMaxDosePerAdministration(convertSimpleQuantity(src.getMaxDosePerAdministration())); + if (src.hasMaxDosePerLifetime()) + tgt.setMaxDosePerLifetime(convertSimpleQuantity(src.getMaxDosePerLifetime())); + if (src.hasRate()) + tgt.setRate(convertType(src.getRate())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Dosage convertDosage(org.hl7.fhir.r4.model.Dosage src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Dosage tgt = new org.hl7.fhir.dstu3.model.Dosage(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasText()) + tgt.setText(src.getText()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAdditionalInstruction()) + tgt.addAdditionalInstruction(convertCodeableConcept(t)); + if (src.hasPatientInstruction()) + tgt.setPatientInstruction(src.getPatientInstruction()); + if (src.hasTiming()) + tgt.setTiming(convertTiming(src.getTiming())); + if (src.hasAsNeeded()) + tgt.setAsNeeded(convertType(src.getAsNeeded())); + if (src.hasSite()) + tgt.setSite(convertCodeableConcept(src.getSite())); + if (src.hasRoute()) + tgt.setRoute(convertCodeableConcept(src.getRoute())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasDose()) + tgt.setDose(convertType(src.getDose())); + if (src.hasMaxDosePerPeriod()) + tgt.setMaxDosePerPeriod(convertRatio(src.getMaxDosePerPeriod())); + if (src.hasMaxDosePerAdministration()) + tgt.setMaxDosePerAdministration(convertSimpleQuantity(src.getMaxDosePerAdministration())); + if (src.hasMaxDosePerLifetime()) + tgt.setMaxDosePerLifetime(convertSimpleQuantity(src.getMaxDosePerLifetime())); + if (src.hasRate()) + tgt.setRate(convertType(src.getRate())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ElementDefinition convertElementDefinition(org.hl7.fhir.dstu3.model.ElementDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ElementDefinition tgt = new org.hl7.fhir.r4.model.ElementDefinition(); + copyElement(src, tgt); + if (src.hasPath()) + tgt.setPath(src.getPath()); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getRepresentation()) + tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); + if (src.hasSliceName()) + tgt.setSliceName(src.getSliceName()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + if (src.hasSlicing()) + tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); + if (src.hasShort()) + tgt.setShort(src.getShort()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasBase()) + tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); + if (src.hasContentReference()) + tgt.setContentReference(src.getContentReference()); + for (org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent t : src.getType()) + tgt.addType(convertTypeRefComponent(t)); + if (src.hasDefaultValue()) + tgt.setDefaultValue(convertType(src.getDefaultValue())); + if (src.hasMeaningWhenMissing()) + tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); + if (src.hasOrderMeaning()) + tgt.setOrderMeaning(src.getOrderMeaning()); + if (src.hasFixed()) + tgt.setFixed(convertType(src.getFixed())); + if (src.hasPattern()) + tgt.setPattern(convertType(src.getPattern())); + for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionExampleComponent t : src.getExample()) + tgt.addExample(convertElementDefinitionExampleComponent(t)); + if (src.hasMinValue()) + tgt.setMinValue(convertType(src.getMinValue())); + if (src.hasMaxValue()) + tgt.setMaxValue(convertType(src.getMaxValue())); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + for (org.hl7.fhir.dstu3.model.IdType t : src.getCondition()) + tgt.addCondition(t.getValue()); + for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) + tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); + if (src.hasMustSupport()) + tgt.setMustSupport(src.getMustSupport()); + if (src.hasIsModifier()) + tgt.setIsModifier(src.getIsModifier()); + if (src.hasIsSummary()) + tgt.setIsSummary(src.getIsSummary()); + if (src.hasBinding()) + tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); + for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertElementDefinitionMappingComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition convertElementDefinition(org.hl7.fhir.r4.model.ElementDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition tgt = new org.hl7.fhir.dstu3.model.ElementDefinition(); + copyElement(src, tgt); + if (src.hasPath()) + tgt.setPath(src.getPath()); + for (org.hl7.fhir.r4.model.Enumeration t : src.getRepresentation()) + tgt.addRepresentation(convertPropertyRepresentation(t.getValue())); + if (src.hasSliceName()) + tgt.setSliceName(src.getSliceName()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + for (org.hl7.fhir.r4.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + if (src.hasSlicing()) + tgt.setSlicing(convertElementDefinitionSlicingComponent(src.getSlicing())); + if (src.hasShort()) + tgt.setShort(src.getShort()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + for (org.hl7.fhir.r4.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasBase()) + tgt.setBase(convertElementDefinitionBaseComponent(src.getBase())); + if (src.hasContentReference()) + tgt.setContentReference(src.getContentReference()); + for (org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent t : src.getType()) + tgt.addType(convertTypeRefComponent(t)); + if (src.hasDefaultValue()) + tgt.setDefaultValue(convertType(src.getDefaultValue())); + if (src.hasMeaningWhenMissing()) + tgt.setMeaningWhenMissing(src.getMeaningWhenMissing()); + if (src.hasOrderMeaning()) + tgt.setOrderMeaning(src.getOrderMeaning()); + if (src.hasFixed()) + tgt.setFixed(convertType(src.getFixed())); + if (src.hasPattern()) + tgt.setPattern(convertType(src.getPattern())); + for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionExampleComponent t : src.getExample()) + tgt.addExample(convertElementDefinitionExampleComponent(t)); + if (src.hasMinValue()) + tgt.setMinValue(convertType(src.getMinValue())); + if (src.hasMaxValue()) + tgt.setMaxValue(convertType(src.getMaxValue())); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + for (org.hl7.fhir.r4.model.IdType t : src.getCondition()) + tgt.addCondition(t.getValue()); + for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent t : src.getConstraint()) + tgt.addConstraint(convertElementDefinitionConstraintComponent(t)); + if (src.hasMustSupport()) + tgt.setMustSupport(src.getMustSupport()); + if (src.hasIsModifier()) + tgt.setIsModifier(src.getIsModifier()); + if (src.hasIsSummary()) + tgt.setIsSummary(src.getIsSummary()); + if (src.hasBinding()) + tgt.setBinding(convertElementDefinitionBindingComponent(src.getBinding())); + for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertElementDefinitionMappingComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XMLATTR: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XMLATTR; + case XMLTEXT: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XMLTEXT; + case TYPEATTR: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.TYPEATTR; + case CDATEXT: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.CDATEXT; + case XHTML: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.XHTML; + default: return org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation convertPropertyRepresentation(org.hl7.fhir.r4.model.ElementDefinition.PropertyRepresentation src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XMLATTR: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XMLATTR; + case XMLTEXT: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XMLTEXT; + case TYPEATTR: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.TYPEATTR; + case CDATEXT: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.CDATEXT; + case XHTML: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.XHTML; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.PropertyRepresentation.NULL; + } +} + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) + tgt.addDiscriminator(convertElementDefinitionSlicingDiscriminatorComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasOrdered()) + tgt.setOrdered(src.getOrdered()); + if (src.hasRules()) + tgt.setRules(convertSlicingRules(src.getRules())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent convertElementDefinitionSlicingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent t : src.getDiscriminator()) + tgt.addDiscriminator(convertElementDefinitionSlicingDiscriminatorComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasOrdered()) + tgt.setOrdered(src.getOrdered()); + if (src.hasRules()) + tgt.setRules(convertSlicingRules(src.getRules())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLOSED: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.CLOSED; + case OPEN: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPEN; + case OPENATEND: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.OPENATEND; + default: return org.hl7.fhir.r4.model.ElementDefinition.SlicingRules.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules convertSlicingRules(org.hl7.fhir.r4.model.ElementDefinition.SlicingRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLOSED: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.CLOSED; + case OPEN: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPEN; + case OPENATEND: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.OPENATEND; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.SlicingRules.NULL; + } +} + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent convertElementDefinitionSlicingDiscriminatorComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertDiscriminatorType(src.getType())); + if (src.hasPath()) + tgt.setPath(src.getPath()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent convertElementDefinitionSlicingDiscriminatorComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionSlicingDiscriminatorComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertDiscriminatorType(src.getType())); + if (src.hasPath()) + tgt.setPath(src.getPath()); + return tgt; + } + + private static org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType convertDiscriminatorType(org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case VALUE: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.VALUE; + case EXISTS: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.EXISTS; + case PATTERN: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.PATTERN; + case TYPE: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.TYPE; + case PROFILE: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.PROFILE; + default: return org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType convertDiscriminatorType(org.hl7.fhir.r4.model.ElementDefinition.DiscriminatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case VALUE: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.VALUE; + case EXISTS: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.EXISTS; + case PATTERN: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.PATTERN; + case TYPE: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.TYPE; + case PROFILE: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.PROFILE; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.DiscriminatorType.NULL; + } +} + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent(); + copyElement(src, tgt); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent convertElementDefinitionBaseComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBaseComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBaseComponent(); + copyElement(src, tgt); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasProfile()) + tgt.setProfile(src.getProfile()); + if (src.hasTargetProfile()) + tgt.setTargetProfile(src.getTargetProfile()); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getAggregation()) + tgt.addAggregation(convertAggregationMode(t.getValue())); + if (src.hasVersioning()) + tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent convertTypeRefComponent(org.hl7.fhir.r4.model.ElementDefinition.TypeRefComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.TypeRefComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasProfile()) + tgt.setProfile(src.getProfile()); + if (src.hasTargetProfile()) + tgt.setTargetProfile(src.getTargetProfile()); + for (org.hl7.fhir.r4.model.Enumeration t : src.getAggregation()) + tgt.addAggregation(convertAggregationMode(t.getValue())); + if (src.hasVersioning()) + tgt.setVersioning(convertReferenceVersionRules(src.getVersioning())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONTAINED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.CONTAINED; + case REFERENCED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.REFERENCED; + case BUNDLED: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.BUNDLED; + default: return org.hl7.fhir.r4.model.ElementDefinition.AggregationMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode convertAggregationMode(org.hl7.fhir.r4.model.ElementDefinition.AggregationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONTAINED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.CONTAINED; + case REFERENCED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.REFERENCED; + case BUNDLED: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.BUNDLED; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.AggregationMode.NULL; + } +} + + private static org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EITHER: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.EITHER; + case INDEPENDENT: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; + case SPECIFIC: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; + default: return org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules convertReferenceVersionRules(org.hl7.fhir.r4.model.ElementDefinition.ReferenceVersionRules src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EITHER: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.EITHER; + case INDEPENDENT: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.INDEPENDENT; + case SPECIFIC: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.SPECIFIC; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.ReferenceVersionRules.NULL; + } +} + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionExampleComponent convertElementDefinitionExampleComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionExampleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionExampleComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionExampleComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionExampleComponent convertElementDefinitionExampleComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionExampleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionExampleComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionExampleComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent(); + copyElement(src, tgt); + if (src.hasKey()) + tgt.setKey(src.getKey()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + if (src.hasSeverity()) + tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); + if (src.hasHuman()) + tgt.setHuman(src.getHuman()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasXpath()) + tgt.setXpath(src.getXpath()); + if (src.hasSource()) + tgt.setSource(src.getSource()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent convertElementDefinitionConstraintComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionConstraintComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionConstraintComponent(); + copyElement(src, tgt); + if (src.hasKey()) + tgt.setKey(src.getKey()); + if (src.hasRequirements()) + tgt.setRequirements(src.getRequirements()); + if (src.hasSeverity()) + tgt.setSeverity(convertConstraintSeverity(src.getSeverity())); + if (src.hasHuman()) + tgt.setHuman(src.getHuman()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasXpath()) + tgt.setXpath(src.getXpath()); + if (src.hasSource()) + tgt.setSource(src.getSource()); + return tgt; + } + + private static org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ERROR: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.ERROR; + case WARNING: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.WARNING; + default: return org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity convertConstraintSeverity(org.hl7.fhir.r4.model.ElementDefinition.ConstraintSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ERROR: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.ERROR; + case WARNING: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.WARNING; + default: return org.hl7.fhir.dstu3.model.ElementDefinition.ConstraintSeverity.NULL; + } +} + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent(); + copyElement(src, tgt); + if (src.hasStrength()) + tgt.setStrength(convertBindingStrength(src.getStrength())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasValueSet()) + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent convertElementDefinitionBindingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionBindingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionBindingComponent(); + copyElement(src, tgt); + if (src.hasStrength()) + tgt.setStrength(convertBindingStrength(src.getStrength())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasValueSet()) + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.dstu3.model.Enumerations.BindingStrength src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.REQUIRED; + case EXTENSIBLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXTENSIBLE; + case PREFERRED: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.PREFERRED; + case EXAMPLE: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.EXAMPLE; + default: return org.hl7.fhir.r4.model.Enumerations.BindingStrength.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Enumerations.BindingStrength convertBindingStrength(org.hl7.fhir.r4.model.Enumerations.BindingStrength src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.REQUIRED; + case EXTENSIBLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXTENSIBLE; + case PREFERRED: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.PREFERRED; + case EXAMPLE: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.EXAMPLE; + default: return org.hl7.fhir.dstu3.model.Enumerations.BindingStrength.NULL; + } +} + + public static org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent(); + copyElement(src, tgt); + if (src.hasIdentity()) + tgt.setIdentity(src.getIdentity()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasMap()) + tgt.setMap(src.getMap()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent convertElementDefinitionMappingComponent(org.hl7.fhir.r4.model.ElementDefinition.ElementDefinitionMappingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.ElementDefinition.ElementDefinitionMappingComponent(); + copyElement(src, tgt); + if (src.hasIdentity()) + tgt.setIdentity(src.getIdentity()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasMap()) + tgt.setMap(src.getMap()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.r4.model.HumanName convertHumanName(org.hl7.fhir.dstu3.model.HumanName src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.HumanName tgt = new org.hl7.fhir.r4.model.HumanName(); + copyElement(src, tgt); + if (src.hasUse()) + tgt.setUse(convertNameUse(src.getUse())); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasFamily()) + tgt.setFamily(src.getFamily()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getGiven()) + tgt.addGiven(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getPrefix()) + tgt.addPrefix(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getSuffix()) + tgt.addSuffix(t.getValue()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.HumanName convertHumanName(org.hl7.fhir.r4.model.HumanName src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.HumanName tgt = new org.hl7.fhir.dstu3.model.HumanName(); + copyElement(src, tgt); + if (src.hasUse()) + tgt.setUse(convertNameUse(src.getUse())); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasFamily()) + tgt.setFamily(src.getFamily()); + for (org.hl7.fhir.r4.model.StringType t : src.getGiven()) + tgt.addGiven(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getPrefix()) + tgt.addPrefix(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getSuffix()) + tgt.addSuffix(t.getValue()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.r4.model.HumanName.NameUse convertNameUse(org.hl7.fhir.dstu3.model.HumanName.NameUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.r4.model.HumanName.NameUse.USUAL; + case OFFICIAL: return org.hl7.fhir.r4.model.HumanName.NameUse.OFFICIAL; + case TEMP: return org.hl7.fhir.r4.model.HumanName.NameUse.TEMP; + case NICKNAME: return org.hl7.fhir.r4.model.HumanName.NameUse.NICKNAME; + case ANONYMOUS: return org.hl7.fhir.r4.model.HumanName.NameUse.ANONYMOUS; + case OLD: return org.hl7.fhir.r4.model.HumanName.NameUse.OLD; + case MAIDEN: return org.hl7.fhir.r4.model.HumanName.NameUse.MAIDEN; + default: return org.hl7.fhir.r4.model.HumanName.NameUse.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.HumanName.NameUse convertNameUse(org.hl7.fhir.r4.model.HumanName.NameUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case USUAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.USUAL; + case OFFICIAL: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OFFICIAL; + case TEMP: return org.hl7.fhir.dstu3.model.HumanName.NameUse.TEMP; + case NICKNAME: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NICKNAME; + case ANONYMOUS: return org.hl7.fhir.dstu3.model.HumanName.NameUse.ANONYMOUS; + case OLD: return org.hl7.fhir.dstu3.model.HumanName.NameUse.OLD; + case MAIDEN: return org.hl7.fhir.dstu3.model.HumanName.NameUse.MAIDEN; + default: return org.hl7.fhir.dstu3.model.HumanName.NameUse.NULL; + } +} + + public static org.hl7.fhir.r4.model.Meta convertMeta(org.hl7.fhir.dstu3.model.Meta src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Meta tgt = new org.hl7.fhir.r4.model.Meta(); + copyElement(src, tgt); + if (src.hasVersionId()) + tgt.setVersionId(src.getVersionId()); + if (src.hasLastUpdated()) + tgt.setLastUpdated(src.getLastUpdated()); + for (org.hl7.fhir.dstu3.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurity()) + tgt.addSecurity(convertCoding(t)); + for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Meta convertMeta(org.hl7.fhir.r4.model.Meta src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Meta tgt = new org.hl7.fhir.dstu3.model.Meta(); + copyElement(src, tgt); + if (src.hasVersionId()) + tgt.setVersionId(src.getVersionId()); + if (src.hasLastUpdated()) + tgt.setLastUpdated(src.getLastUpdated()); + for (org.hl7.fhir.r4.model.UriType t : src.getProfile()) + tgt.addProfile(t.getValue()); + for (org.hl7.fhir.r4.model.Coding t : src.getSecurity()) + tgt.addSecurity(convertCoding(t)); + for (org.hl7.fhir.r4.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ParameterDefinition convertParameterDefinition(org.hl7.fhir.dstu3.model.ParameterDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ParameterDefinition tgt = new org.hl7.fhir.r4.model.ParameterDefinition(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasUse()) + tgt.setUse(convertParameterUse(src.getUse())); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ParameterDefinition convertParameterDefinition(org.hl7.fhir.r4.model.ParameterDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ParameterDefinition tgt = new org.hl7.fhir.dstu3.model.ParameterDefinition(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasUse()) + tgt.setUse(convertParameterUse(src.getUse())); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ParameterDefinition.ParameterUse convertParameterUse(org.hl7.fhir.dstu3.model.ParameterDefinition.ParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.r4.model.ParameterDefinition.ParameterUse.IN; + case OUT: return org.hl7.fhir.r4.model.ParameterDefinition.ParameterUse.OUT; + default: return org.hl7.fhir.r4.model.ParameterDefinition.ParameterUse.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ParameterDefinition.ParameterUse convertParameterUse(org.hl7.fhir.r4.model.ParameterDefinition.ParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.dstu3.model.ParameterDefinition.ParameterUse.IN; + case OUT: return org.hl7.fhir.dstu3.model.ParameterDefinition.ParameterUse.OUT; + default: return org.hl7.fhir.dstu3.model.ParameterDefinition.ParameterUse.NULL; + } +} + + public static org.hl7.fhir.r4.model.RelatedArtifact convertRelatedArtifact(org.hl7.fhir.dstu3.model.RelatedArtifact src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.RelatedArtifact tgt = new org.hl7.fhir.r4.model.RelatedArtifact(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertRelatedArtifactType(src.getType())); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasCitation()) + tgt.setCitation(src.getCitation()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasDocument()) + tgt.setDocument(convertAttachment(src.getDocument())); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.RelatedArtifact convertRelatedArtifact(org.hl7.fhir.r4.model.RelatedArtifact src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.RelatedArtifact tgt = new org.hl7.fhir.dstu3.model.RelatedArtifact(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertRelatedArtifactType(src.getType())); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasCitation()) + tgt.setCitation(src.getCitation()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasDocument()) + tgt.setDocument(convertAttachment(src.getDocument())); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + private static org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType convertRelatedArtifactType(org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENTATION: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.DOCUMENTATION; + case JUSTIFICATION: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.JUSTIFICATION; + case CITATION: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.CITATION; + case PREDECESSOR: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.PREDECESSOR; + case SUCCESSOR: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.SUCCESSOR; + case DERIVEDFROM: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.DERIVEDFROM; + case DEPENDSON: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.DEPENDSON; + case COMPOSEDOF: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.COMPOSEDOF; + default: return org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType convertRelatedArtifactType(org.hl7.fhir.r4.model.RelatedArtifact.RelatedArtifactType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENTATION: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.DOCUMENTATION; + case JUSTIFICATION: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.JUSTIFICATION; + case CITATION: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.CITATION; + case PREDECESSOR: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.PREDECESSOR; + case SUCCESSOR: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.SUCCESSOR; + case DERIVEDFROM: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.DERIVEDFROM; + case DEPENDSON: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.DEPENDSON; + case COMPOSEDOF: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.COMPOSEDOF; + default: return org.hl7.fhir.dstu3.model.RelatedArtifact.RelatedArtifactType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Timing convertTiming(org.hl7.fhir.dstu3.model.Timing src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Timing tgt = new org.hl7.fhir.r4.model.Timing(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.DateTimeType t : src.getEvent()) + tgt.addEvent(t.getValue()); + if (src.hasRepeat()) + tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Timing convertTiming(org.hl7.fhir.r4.model.Timing src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Timing tgt = new org.hl7.fhir.dstu3.model.Timing(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.DateTimeType t : src.getEvent()) + tgt.addEvent(t.getValue()); + if (src.hasRepeat()) + tgt.setRepeat(convertTimingRepeatComponent(src.getRepeat())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.r4.model.Timing.TimingRepeatComponent(); + copyElement(src, tgt); + if (src.hasBounds()) + tgt.setBounds(convertType(src.getBounds())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + if (src.hasCountMax()) + tgt.setCountMax(src.getCountMax()); + if (src.hasDuration()) + tgt.setDuration(src.getDuration()); + if (src.hasDurationMax()) + tgt.setDurationMax(src.getDurationMax()); + if (src.hasDurationUnit()) + tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); + if (src.hasFrequency()) + tgt.setFrequency(src.getFrequency()); + if (src.hasFrequencyMax()) + tgt.setFrequencyMax(src.getFrequencyMax()); + if (src.hasPeriod()) + tgt.setPeriod(src.getPeriod()); + if (src.hasPeriodMax()) + tgt.setPeriodMax(src.getPeriodMax()); + if (src.hasPeriodUnit()) + tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getDayOfWeek()) + tgt.addDayOfWeek(convertDayOfWeek(t.getValue())); + for (org.hl7.fhir.dstu3.model.TimeType t : src.getTimeOfDay()) + tgt.addTimeOfDay(t.getValue()); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getWhen()) + tgt.addWhen(convertEventTiming(t.getValue())); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent convertTimingRepeatComponent(org.hl7.fhir.r4.model.Timing.TimingRepeatComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent tgt = new org.hl7.fhir.dstu3.model.Timing.TimingRepeatComponent(); + copyElement(src, tgt); + if (src.hasBounds()) + tgt.setBounds(convertType(src.getBounds())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + if (src.hasCountMax()) + tgt.setCountMax(src.getCountMax()); + if (src.hasDuration()) + tgt.setDuration(src.getDuration()); + if (src.hasDurationMax()) + tgt.setDurationMax(src.getDurationMax()); + if (src.hasDurationUnit()) + tgt.setDurationUnit(convertUnitsOfTime(src.getDurationUnit())); + if (src.hasFrequency()) + tgt.setFrequency(src.getFrequency()); + if (src.hasFrequencyMax()) + tgt.setFrequencyMax(src.getFrequencyMax()); + if (src.hasPeriod()) + tgt.setPeriod(src.getPeriod()); + if (src.hasPeriodMax()) + tgt.setPeriodMax(src.getPeriodMax()); + if (src.hasPeriodUnit()) + tgt.setPeriodUnit(convertUnitsOfTime(src.getPeriodUnit())); + for (org.hl7.fhir.r4.model.Enumeration t : src.getDayOfWeek()) + tgt.addDayOfWeek(convertDayOfWeek(t.getValue())); + for (org.hl7.fhir.r4.model.TimeType t : src.getTimeOfDay()) + tgt.addTimeOfDay(t.getValue()); + for (org.hl7.fhir.r4.model.Enumeration t : src.getWhen()) + tgt.addWhen(convertEventTiming(t.getValue())); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.dstu3.model.Timing.UnitsOfTime src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case S: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.S; + case MIN: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MIN; + case H: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.H; + case D: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.D; + case WK: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.WK; + case MO: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.MO; + case A: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.A; + default: return org.hl7.fhir.r4.model.Timing.UnitsOfTime.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Timing.UnitsOfTime convertUnitsOfTime(org.hl7.fhir.r4.model.Timing.UnitsOfTime src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case S: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.S; + case MIN: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MIN; + case H: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.H; + case D: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.D; + case WK: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.WK; + case MO: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.MO; + case A: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.A; + default: return org.hl7.fhir.dstu3.model.Timing.UnitsOfTime.NULL; + } +} + + private static org.hl7.fhir.r4.model.Timing.DayOfWeek convertDayOfWeek(org.hl7.fhir.dstu3.model.Timing.DayOfWeek src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MON: return org.hl7.fhir.r4.model.Timing.DayOfWeek.MON; + case TUE: return org.hl7.fhir.r4.model.Timing.DayOfWeek.TUE; + case WED: return org.hl7.fhir.r4.model.Timing.DayOfWeek.WED; + case THU: return org.hl7.fhir.r4.model.Timing.DayOfWeek.THU; + case FRI: return org.hl7.fhir.r4.model.Timing.DayOfWeek.FRI; + case SAT: return org.hl7.fhir.r4.model.Timing.DayOfWeek.SAT; + case SUN: return org.hl7.fhir.r4.model.Timing.DayOfWeek.SUN; + default: return org.hl7.fhir.r4.model.Timing.DayOfWeek.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Timing.DayOfWeek convertDayOfWeek(org.hl7.fhir.r4.model.Timing.DayOfWeek src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MON: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.MON; + case TUE: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.TUE; + case WED: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.WED; + case THU: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.THU; + case FRI: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.FRI; + case SAT: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.SAT; + case SUN: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.SUN; + default: return org.hl7.fhir.dstu3.model.Timing.DayOfWeek.NULL; + } +} + + private static org.hl7.fhir.r4.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.dstu3.model.Timing.EventTiming src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MORN: return org.hl7.fhir.r4.model.Timing.EventTiming.MORN; + case AFT: return org.hl7.fhir.r4.model.Timing.EventTiming.AFT; + case EVE: return org.hl7.fhir.r4.model.Timing.EventTiming.EVE; + case NIGHT: return org.hl7.fhir.r4.model.Timing.EventTiming.NIGHT; + case PHS: return org.hl7.fhir.r4.model.Timing.EventTiming.PHS; + case HS: return org.hl7.fhir.r4.model.Timing.EventTiming.HS; + case WAKE: return org.hl7.fhir.r4.model.Timing.EventTiming.WAKE; + case C: return org.hl7.fhir.r4.model.Timing.EventTiming.C; + case CM: return org.hl7.fhir.r4.model.Timing.EventTiming.CM; + case CD: return org.hl7.fhir.r4.model.Timing.EventTiming.CD; + case CV: return org.hl7.fhir.r4.model.Timing.EventTiming.CV; + case AC: return org.hl7.fhir.r4.model.Timing.EventTiming.AC; + case ACM: return org.hl7.fhir.r4.model.Timing.EventTiming.ACM; + case ACD: return org.hl7.fhir.r4.model.Timing.EventTiming.ACD; + case ACV: return org.hl7.fhir.r4.model.Timing.EventTiming.ACV; + case PC: return org.hl7.fhir.r4.model.Timing.EventTiming.PC; + case PCM: return org.hl7.fhir.r4.model.Timing.EventTiming.PCM; + case PCD: return org.hl7.fhir.r4.model.Timing.EventTiming.PCD; + case PCV: return org.hl7.fhir.r4.model.Timing.EventTiming.PCV; + default: return org.hl7.fhir.r4.model.Timing.EventTiming.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Timing.EventTiming convertEventTiming(org.hl7.fhir.r4.model.Timing.EventTiming src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MORN: return org.hl7.fhir.dstu3.model.Timing.EventTiming.MORN; + case AFT: return org.hl7.fhir.dstu3.model.Timing.EventTiming.AFT; + case EVE: return org.hl7.fhir.dstu3.model.Timing.EventTiming.EVE; + case NIGHT: return org.hl7.fhir.dstu3.model.Timing.EventTiming.NIGHT; + case PHS: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PHS; + case HS: return org.hl7.fhir.dstu3.model.Timing.EventTiming.HS; + case WAKE: return org.hl7.fhir.dstu3.model.Timing.EventTiming.WAKE; + case C: return org.hl7.fhir.dstu3.model.Timing.EventTiming.C; + case CM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CM; + case CD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CD; + case CV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.CV; + case AC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.AC; + case ACM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACM; + case ACD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACD; + case ACV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.ACV; + case PC: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PC; + case PCM: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCM; + case PCD: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCD; + case PCV: return org.hl7.fhir.dstu3.model.Timing.EventTiming.PCV; + default: return org.hl7.fhir.dstu3.model.Timing.EventTiming.NULL; + } +} + + public static org.hl7.fhir.r4.model.TriggerDefinition convertTriggerDefinition(org.hl7.fhir.dstu3.model.TriggerDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TriggerDefinition tgt = new org.hl7.fhir.r4.model.TriggerDefinition(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertTriggerType(src.getType())); + if (src.hasEventName()) + tgt.setEventName(src.getEventName()); + if (src.hasEventTiming()) + tgt.setEventTiming(convertType(src.getEventTiming())); + if (src.hasEventData()) + tgt.setEventData(convertDataRequirement(src.getEventData())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TriggerDefinition convertTriggerDefinition(org.hl7.fhir.r4.model.TriggerDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TriggerDefinition tgt = new org.hl7.fhir.dstu3.model.TriggerDefinition(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertTriggerType(src.getType())); + if (src.hasEventName()) + tgt.setEventName(src.getEventName()); + if (src.hasEventTiming()) + tgt.setEventTiming(convertType(src.getEventTiming())); + if (src.hasEventData()) + tgt.setEventData(convertDataRequirement(src.getEventData())); + return tgt; + } + + private static org.hl7.fhir.r4.model.TriggerDefinition.TriggerType convertTriggerType(org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NAMEDEVENT: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.NAMEDEVENT; + case PERIODIC: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.PERIODIC; + case DATAADDED: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.DATAADDED; + case DATAMODIFIED: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.DATAMODIFIED; + case DATAREMOVED: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.DATAREMOVED; + case DATAACCESSED: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.DATAACCESSED; + case DATAACCESSENDED: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.DATAACCESSENDED; + default: return org.hl7.fhir.r4.model.TriggerDefinition.TriggerType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType convertTriggerType(org.hl7.fhir.r4.model.TriggerDefinition.TriggerType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NAMEDEVENT: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.NAMEDEVENT; + case PERIODIC: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.PERIODIC; + case DATAADDED: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAADDED; + case DATAMODIFIED: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAMODIFIED; + case DATAREMOVED: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAREMOVED; + case DATAACCESSED: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAACCESSED; + case DATAACCESSENDED: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.DATAACCESSENDED; + default: return org.hl7.fhir.dstu3.model.TriggerDefinition.TriggerType.NULL; + } +} + + public static org.hl7.fhir.r4.model.UsageContext convertUsageContext(org.hl7.fhir.dstu3.model.UsageContext src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.UsageContext tgt = new org.hl7.fhir.r4.model.UsageContext(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCoding(src.getCode())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.UsageContext convertUsageContext(org.hl7.fhir.r4.model.UsageContext src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.UsageContext tgt = new org.hl7.fhir.dstu3.model.UsageContext(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCoding(src.getCode())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.dstu3.model.SimpleQuantity src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.SimpleQuantity tgt = new org.hl7.fhir.r4.model.SimpleQuantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasComparator()) + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SimpleQuantity convertSimpleQuantity(org.hl7.fhir.r4.model.SimpleQuantity src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.SimpleQuantity tgt = new org.hl7.fhir.dstu3.model.SimpleQuantity(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasComparator()) + tgt.setComparator(convertQuantityComparator(src.getComparator())); + if (src.hasUnit()) + tgt.setUnit(src.getUnit()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Type convertType(org.hl7.fhir.dstu3.model.Type src) throws FHIRException { + if (src == null) + return null; + if (src instanceof org.hl7.fhir.dstu3.model.Base64BinaryType) + return convertBase64Binary((org.hl7.fhir.dstu3.model.Base64BinaryType) src); + if (src instanceof org.hl7.fhir.dstu3.model.BooleanType) + return convertBoolean((org.hl7.fhir.dstu3.model.BooleanType) src); + if (src instanceof org.hl7.fhir.dstu3.model.CodeType) + return convertCode((org.hl7.fhir.dstu3.model.CodeType) src); + if (src instanceof org.hl7.fhir.dstu3.model.DateType) + return convertDate((org.hl7.fhir.dstu3.model.DateType) src); + if (src instanceof org.hl7.fhir.dstu3.model.DateTimeType) + return convertDateTime((org.hl7.fhir.dstu3.model.DateTimeType) src); + if (src instanceof org.hl7.fhir.dstu3.model.DecimalType) + return convertDecimal((org.hl7.fhir.dstu3.model.DecimalType) src); + if (src instanceof org.hl7.fhir.dstu3.model.IdType) + return convertId((org.hl7.fhir.dstu3.model.IdType) src); + if (src instanceof org.hl7.fhir.dstu3.model.InstantType) + return convertInstant((org.hl7.fhir.dstu3.model.InstantType) src); + if (src instanceof org.hl7.fhir.dstu3.model.IntegerType) + return convertInteger((org.hl7.fhir.dstu3.model.IntegerType) src); + if (src instanceof org.hl7.fhir.dstu3.model.MarkdownType) + return convertMarkdown((org.hl7.fhir.dstu3.model.MarkdownType) src); + if (src instanceof org.hl7.fhir.dstu3.model.OidType) + return convertOid((org.hl7.fhir.dstu3.model.OidType) src); + if (src instanceof org.hl7.fhir.dstu3.model.PositiveIntType) + return convertPositiveInt((org.hl7.fhir.dstu3.model.PositiveIntType) src); + if (src instanceof org.hl7.fhir.dstu3.model.StringType) + return convertString((org.hl7.fhir.dstu3.model.StringType) src); + if (src instanceof org.hl7.fhir.dstu3.model.TimeType) + return convertTime((org.hl7.fhir.dstu3.model.TimeType) src); + if (src instanceof org.hl7.fhir.dstu3.model.UnsignedIntType) + return convertUnsignedInt((org.hl7.fhir.dstu3.model.UnsignedIntType) src); + if (src instanceof org.hl7.fhir.dstu3.model.UriType) + return convertUri((org.hl7.fhir.dstu3.model.UriType) src); + if (src instanceof org.hl7.fhir.dstu3.model.UuidType) + return convertUuid((org.hl7.fhir.dstu3.model.UuidType) src); + if (src instanceof org.hl7.fhir.dstu3.model.Extension) + return convertExtension((org.hl7.fhir.dstu3.model.Extension) src); + if (src instanceof org.hl7.fhir.dstu3.model.Narrative) + return convertNarrative((org.hl7.fhir.dstu3.model.Narrative) src); + if (src instanceof org.hl7.fhir.dstu3.model.Age) + return convertAge((org.hl7.fhir.dstu3.model.Age) src); + if (src instanceof org.hl7.fhir.dstu3.model.Annotation) + return convertAnnotation((org.hl7.fhir.dstu3.model.Annotation) src); + if (src instanceof org.hl7.fhir.dstu3.model.Attachment) + return convertAttachment((org.hl7.fhir.dstu3.model.Attachment) src); + if (src instanceof org.hl7.fhir.dstu3.model.CodeableConcept) + return convertCodeableConcept((org.hl7.fhir.dstu3.model.CodeableConcept) src); + if (src instanceof org.hl7.fhir.dstu3.model.Coding) + return convertCoding((org.hl7.fhir.dstu3.model.Coding) src); + if (src instanceof org.hl7.fhir.dstu3.model.Count) + return convertCount((org.hl7.fhir.dstu3.model.Count) src); + if (src instanceof org.hl7.fhir.dstu3.model.Distance) + return convertDistance((org.hl7.fhir.dstu3.model.Distance) src); + if (src instanceof org.hl7.fhir.dstu3.model.Duration) + return convertDuration((org.hl7.fhir.dstu3.model.Duration) src); + if (src instanceof org.hl7.fhir.dstu3.model.Identifier) + return convertIdentifier((org.hl7.fhir.dstu3.model.Identifier) src); + if (src instanceof org.hl7.fhir.dstu3.model.Money) + return convertMoney((org.hl7.fhir.dstu3.model.Money) src); + if (src instanceof org.hl7.fhir.dstu3.model.Period) + return convertPeriod((org.hl7.fhir.dstu3.model.Period) src); + if (src instanceof org.hl7.fhir.dstu3.model.Quantity) + return convertQuantity((org.hl7.fhir.dstu3.model.Quantity) src); + if (src instanceof org.hl7.fhir.dstu3.model.Range) + return convertRange((org.hl7.fhir.dstu3.model.Range) src); + if (src instanceof org.hl7.fhir.dstu3.model.Ratio) + return convertRatio((org.hl7.fhir.dstu3.model.Ratio) src); + if (src instanceof org.hl7.fhir.dstu3.model.Reference) + return convertReference((org.hl7.fhir.dstu3.model.Reference) src); + if (src instanceof org.hl7.fhir.dstu3.model.SampledData) + return convertSampledData((org.hl7.fhir.dstu3.model.SampledData) src); + if (src instanceof org.hl7.fhir.dstu3.model.Signature) + return convertSignature((org.hl7.fhir.dstu3.model.Signature) src); + if (src instanceof org.hl7.fhir.dstu3.model.Address) + return convertAddress((org.hl7.fhir.dstu3.model.Address) src); + if (src instanceof org.hl7.fhir.dstu3.model.ContactDetail) + return convertContactDetail((org.hl7.fhir.dstu3.model.ContactDetail) src); + if (src instanceof org.hl7.fhir.dstu3.model.ContactPoint) + return convertContactPoint((org.hl7.fhir.dstu3.model.ContactPoint) src); + if (src instanceof org.hl7.fhir.dstu3.model.Contributor) + return convertContributor((org.hl7.fhir.dstu3.model.Contributor) src); + if (src instanceof org.hl7.fhir.dstu3.model.DataRequirement) + return convertDataRequirement((org.hl7.fhir.dstu3.model.DataRequirement) src); + if (src instanceof org.hl7.fhir.dstu3.model.Dosage) + return convertDosage((org.hl7.fhir.dstu3.model.Dosage) src); + if (src instanceof org.hl7.fhir.dstu3.model.ElementDefinition) + return convertElementDefinition((org.hl7.fhir.dstu3.model.ElementDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.HumanName) + return convertHumanName((org.hl7.fhir.dstu3.model.HumanName) src); + if (src instanceof org.hl7.fhir.dstu3.model.Meta) + return convertMeta((org.hl7.fhir.dstu3.model.Meta) src); + if (src instanceof org.hl7.fhir.dstu3.model.ParameterDefinition) + return convertParameterDefinition((org.hl7.fhir.dstu3.model.ParameterDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.RelatedArtifact) + return convertRelatedArtifact((org.hl7.fhir.dstu3.model.RelatedArtifact) src); + if (src instanceof org.hl7.fhir.dstu3.model.Timing) + return convertTiming((org.hl7.fhir.dstu3.model.Timing) src); + if (src instanceof org.hl7.fhir.dstu3.model.TriggerDefinition) + return convertTriggerDefinition((org.hl7.fhir.dstu3.model.TriggerDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.UsageContext) + return convertUsageContext((org.hl7.fhir.dstu3.model.UsageContext) src); + if (src instanceof org.hl7.fhir.dstu3.model.SimpleQuantity) + return convertSimpleQuantity((org.hl7.fhir.dstu3.model.SimpleQuantity) src); + throw new Error("Unknown type "+src.fhirType()); + } + + public static org.hl7.fhir.dstu3.model.Type convertType(org.hl7.fhir.r4.model.Type src) throws FHIRException { + if (src == null) + return null; + if (src instanceof org.hl7.fhir.r4.model.Base64BinaryType) + return convertBase64Binary((org.hl7.fhir.r4.model.Base64BinaryType) src); + if (src instanceof org.hl7.fhir.r4.model.BooleanType) + return convertBoolean((org.hl7.fhir.r4.model.BooleanType) src); + if (src instanceof org.hl7.fhir.r4.model.CodeType) + return convertCode((org.hl7.fhir.r4.model.CodeType) src); + if (src instanceof org.hl7.fhir.r4.model.DateType) + return convertDate((org.hl7.fhir.r4.model.DateType) src); + if (src instanceof org.hl7.fhir.r4.model.DateTimeType) + return convertDateTime((org.hl7.fhir.r4.model.DateTimeType) src); + if (src instanceof org.hl7.fhir.r4.model.DecimalType) + return convertDecimal((org.hl7.fhir.r4.model.DecimalType) src); + if (src instanceof org.hl7.fhir.r4.model.IdType) + return convertId((org.hl7.fhir.r4.model.IdType) src); + if (src instanceof org.hl7.fhir.r4.model.InstantType) + return convertInstant((org.hl7.fhir.r4.model.InstantType) src); + if (src instanceof org.hl7.fhir.r4.model.IntegerType) + return convertInteger((org.hl7.fhir.r4.model.IntegerType) src); + if (src instanceof org.hl7.fhir.r4.model.MarkdownType) + return convertMarkdown((org.hl7.fhir.r4.model.MarkdownType) src); + if (src instanceof org.hl7.fhir.r4.model.OidType) + return convertOid((org.hl7.fhir.r4.model.OidType) src); + if (src instanceof org.hl7.fhir.r4.model.PositiveIntType) + return convertPositiveInt((org.hl7.fhir.r4.model.PositiveIntType) src); + if (src instanceof org.hl7.fhir.r4.model.StringType) + return convertString((org.hl7.fhir.r4.model.StringType) src); + if (src instanceof org.hl7.fhir.r4.model.TimeType) + return convertTime((org.hl7.fhir.r4.model.TimeType) src); + if (src instanceof org.hl7.fhir.r4.model.UnsignedIntType) + return convertUnsignedInt((org.hl7.fhir.r4.model.UnsignedIntType) src); + if (src instanceof org.hl7.fhir.r4.model.UriType) + return convertUri((org.hl7.fhir.r4.model.UriType) src); + if (src instanceof org.hl7.fhir.r4.model.UuidType) + return convertUuid((org.hl7.fhir.r4.model.UuidType) src); + if (src instanceof org.hl7.fhir.r4.model.Extension) + return convertExtension((org.hl7.fhir.r4.model.Extension) src); + if (src instanceof org.hl7.fhir.r4.model.Narrative) + return convertNarrative((org.hl7.fhir.r4.model.Narrative) src); + if (src instanceof org.hl7.fhir.r4.model.Age) + return convertAge((org.hl7.fhir.r4.model.Age) src); + if (src instanceof org.hl7.fhir.r4.model.Annotation) + return convertAnnotation((org.hl7.fhir.r4.model.Annotation) src); + if (src instanceof org.hl7.fhir.r4.model.Attachment) + return convertAttachment((org.hl7.fhir.r4.model.Attachment) src); + if (src instanceof org.hl7.fhir.r4.model.CodeableConcept) + return convertCodeableConcept((org.hl7.fhir.r4.model.CodeableConcept) src); + if (src instanceof org.hl7.fhir.r4.model.Coding) + return convertCoding((org.hl7.fhir.r4.model.Coding) src); + if (src instanceof org.hl7.fhir.r4.model.Count) + return convertCount((org.hl7.fhir.r4.model.Count) src); + if (src instanceof org.hl7.fhir.r4.model.Distance) + return convertDistance((org.hl7.fhir.r4.model.Distance) src); + if (src instanceof org.hl7.fhir.r4.model.Duration) + return convertDuration((org.hl7.fhir.r4.model.Duration) src); + if (src instanceof org.hl7.fhir.r4.model.Identifier) + return convertIdentifier((org.hl7.fhir.r4.model.Identifier) src); + if (src instanceof org.hl7.fhir.r4.model.Money) + return convertMoney((org.hl7.fhir.r4.model.Money) src); + if (src instanceof org.hl7.fhir.r4.model.Period) + return convertPeriod((org.hl7.fhir.r4.model.Period) src); + if (src instanceof org.hl7.fhir.r4.model.Quantity) + return convertQuantity((org.hl7.fhir.r4.model.Quantity) src); + if (src instanceof org.hl7.fhir.r4.model.Range) + return convertRange((org.hl7.fhir.r4.model.Range) src); + if (src instanceof org.hl7.fhir.r4.model.Ratio) + return convertRatio((org.hl7.fhir.r4.model.Ratio) src); + if (src instanceof org.hl7.fhir.r4.model.Reference) + return convertReference((org.hl7.fhir.r4.model.Reference) src); + if (src instanceof org.hl7.fhir.r4.model.SampledData) + return convertSampledData((org.hl7.fhir.r4.model.SampledData) src); + if (src instanceof org.hl7.fhir.r4.model.Signature) + return convertSignature((org.hl7.fhir.r4.model.Signature) src); + if (src instanceof org.hl7.fhir.r4.model.Address) + return convertAddress((org.hl7.fhir.r4.model.Address) src); + if (src instanceof org.hl7.fhir.r4.model.ContactDetail) + return convertContactDetail((org.hl7.fhir.r4.model.ContactDetail) src); + if (src instanceof org.hl7.fhir.r4.model.ContactPoint) + return convertContactPoint((org.hl7.fhir.r4.model.ContactPoint) src); + if (src instanceof org.hl7.fhir.r4.model.Contributor) + return convertContributor((org.hl7.fhir.r4.model.Contributor) src); + if (src instanceof org.hl7.fhir.r4.model.DataRequirement) + return convertDataRequirement((org.hl7.fhir.r4.model.DataRequirement) src); + if (src instanceof org.hl7.fhir.r4.model.Dosage) + return convertDosage((org.hl7.fhir.r4.model.Dosage) src); + if (src instanceof org.hl7.fhir.r4.model.ElementDefinition) + return convertElementDefinition((org.hl7.fhir.r4.model.ElementDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.HumanName) + return convertHumanName((org.hl7.fhir.r4.model.HumanName) src); + if (src instanceof org.hl7.fhir.r4.model.Meta) + return convertMeta((org.hl7.fhir.r4.model.Meta) src); + if (src instanceof org.hl7.fhir.r4.model.ParameterDefinition) + return convertParameterDefinition((org.hl7.fhir.r4.model.ParameterDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.RelatedArtifact) + return convertRelatedArtifact((org.hl7.fhir.r4.model.RelatedArtifact) src); + if (src instanceof org.hl7.fhir.r4.model.Timing) + return convertTiming((org.hl7.fhir.r4.model.Timing) src); + if (src instanceof org.hl7.fhir.r4.model.TriggerDefinition) + return convertTriggerDefinition((org.hl7.fhir.r4.model.TriggerDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.UsageContext) + return convertUsageContext((org.hl7.fhir.r4.model.UsageContext) src); + if (src instanceof org.hl7.fhir.r4.model.SimpleQuantity) + return convertSimpleQuantity((org.hl7.fhir.r4.model.SimpleQuantity) src); + throw new Error("Unknown type "+src.fhirType()); + } + + private static void copyDomainResource(org.hl7.fhir.dstu3.model.DomainResource src, org.hl7.fhir.r4.model.DomainResource tgt) throws FHIRException { + copyResource(src, tgt); + if (src.hasText()) + tgt.setText(convertNarrative(src.getText())); + for (org.hl7.fhir.dstu3.model.Resource t : src.getContained()) + tgt.addContained(convertResource(t)); + for (org.hl7.fhir.dstu3.model.Extension t : src.getExtension()) + tgt.addExtension(convertExtension(t)); + for (org.hl7.fhir.dstu3.model.Extension t : src.getModifierExtension()) + tgt.addModifierExtension(convertExtension(t)); + } + private static void copyDomainResource(org.hl7.fhir.r4.model.DomainResource src, org.hl7.fhir.dstu3.model.DomainResource tgt) throws FHIRException { + copyResource(src, tgt); + if (src.hasText()) + tgt.setText(convertNarrative(src.getText())); + for (org.hl7.fhir.r4.model.Resource t : src.getContained()) + tgt.addContained(convertResource(t)); + for (org.hl7.fhir.r4.model.Extension t : src.getExtension()) + tgt.addExtension(convertExtension(t)); + for (org.hl7.fhir.r4.model.Extension t : src.getModifierExtension()) + tgt.addModifierExtension(convertExtension(t)); + } + public static org.hl7.fhir.r4.model.Parameters convertParameters(org.hl7.fhir.dstu3.model.Parameters src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Parameters tgt = new org.hl7.fhir.r4.model.Parameters(); + copyResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getParameter()) + tgt.addParameter(convertParametersParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Parameters convertParameters(org.hl7.fhir.r4.model.Parameters src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Parameters tgt = new org.hl7.fhir.dstu3.model.Parameters(); + copyResource(src, tgt); + for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getParameter()) + tgt.addParameter(convertParametersParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasResource()) + tgt.setResource(convertResource(src.getResource())); + for (org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent t : src.getPart()) + tgt.addPart(convertParametersParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent convertParametersParameterComponent(org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent tgt = new org.hl7.fhir.dstu3.model.Parameters.ParametersParameterComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasResource()) + tgt.setResource(convertResource(src.getResource())); + for (org.hl7.fhir.r4.model.Parameters.ParametersParameterComponent t : src.getPart()) + tgt.addPart(convertParametersParameterComponent(t)); + return tgt; + } + + private static void copyResource(org.hl7.fhir.dstu3.model.Resource src, org.hl7.fhir.r4.model.Resource tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + if (src.hasMeta()) + tgt.setMeta(convertMeta(src.getMeta())); + if (src.hasImplicitRules()) + tgt.setImplicitRules(src.getImplicitRules()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + } + private static void copyResource(org.hl7.fhir.r4.model.Resource src, org.hl7.fhir.dstu3.model.Resource tgt) throws FHIRException { + if (src.hasId()) + tgt.setId(src.getId()); + if (src.hasMeta()) + tgt.setMeta(convertMeta(src.getMeta())); + if (src.hasImplicitRules()) + tgt.setImplicitRules(src.getImplicitRules()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + } + public static org.hl7.fhir.r4.model.Account convertAccount(org.hl7.fhir.dstu3.model.Account src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Account tgt = new org.hl7.fhir.r4.model.Account(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertAccountStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasActive()) + tgt.setActive(convertPeriod(src.getActive())); + if (src.hasBalance()) + tgt.setBalance(convertMoney(src.getBalance())); + for (org.hl7.fhir.dstu3.model.Account.CoverageComponent t : src.getCoverage()) + tgt.addCoverage(convertCoverageComponent(t)); + if (src.hasOwner()) + tgt.setOwner(convertReference(src.getOwner())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.Account.GuarantorComponent t : src.getGuarantor()) + tgt.addGuarantor(convertGuarantorComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Account convertAccount(org.hl7.fhir.r4.model.Account src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Account tgt = new org.hl7.fhir.dstu3.model.Account(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertAccountStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasActive()) + tgt.setActive(convertPeriod(src.getActive())); + if (src.hasBalance()) + tgt.setBalance(convertMoney(src.getBalance())); + for (org.hl7.fhir.r4.model.Account.CoverageComponent t : src.getCoverage()) + tgt.addCoverage(convertCoverageComponent(t)); + if (src.hasOwner()) + tgt.setOwner(convertReference(src.getOwner())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.Account.GuarantorComponent t : src.getGuarantor()) + tgt.addGuarantor(convertGuarantorComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.dstu3.model.Account.AccountStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Account.AccountStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.r4.model.Account.AccountStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Account.AccountStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Account.AccountStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Account.AccountStatus convertAccountStatus(org.hl7.fhir.r4.model.Account.AccountStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Account.AccountStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.dstu3.model.Account.AccountStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Account.AccountStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Account.AccountStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Account.CoverageComponent convertCoverageComponent(org.hl7.fhir.dstu3.model.Account.CoverageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Account.CoverageComponent tgt = new org.hl7.fhir.r4.model.Account.CoverageComponent(); + copyElement(src, tgt); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + if (src.hasPriority()) + tgt.setPriority(src.getPriority()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Account.CoverageComponent convertCoverageComponent(org.hl7.fhir.r4.model.Account.CoverageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Account.CoverageComponent tgt = new org.hl7.fhir.dstu3.model.Account.CoverageComponent(); + copyElement(src, tgt); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + if (src.hasPriority()) + tgt.setPriority(src.getPriority()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Account.GuarantorComponent convertGuarantorComponent(org.hl7.fhir.dstu3.model.Account.GuarantorComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Account.GuarantorComponent tgt = new org.hl7.fhir.r4.model.Account.GuarantorComponent(); + copyElement(src, tgt); + if (src.hasParty()) + tgt.setParty(convertReference(src.getParty())); + if (src.hasOnHold()) + tgt.setOnHold(src.getOnHold()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Account.GuarantorComponent convertGuarantorComponent(org.hl7.fhir.r4.model.Account.GuarantorComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Account.GuarantorComponent tgt = new org.hl7.fhir.dstu3.model.Account.GuarantorComponent(); + copyElement(src, tgt); + if (src.hasParty()) + tgt.setParty(convertReference(src.getParty())); + if (src.hasOnHold()) + tgt.setOnHold(src.getOnHold()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ActivityDefinition convertActivityDefinition(org.hl7.fhir.dstu3.model.ActivityDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ActivityDefinition tgt = new org.hl7.fhir.r4.model.ActivityDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTopic()) + tgt.addTopic(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Contributor t : src.getContributor()) + tgt.addContributor(convertContributor(t)); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getLibrary()) + tgt.addLibrary(convertReference(t)); + if (src.hasKind()) + tgt.setKind(convertActivityDefinitionKind(src.getKind())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertActivityDefinitionParticipantComponent(t)); + if (src.hasProduct()) + tgt.setProduct(convertType(src.getProduct())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosage()) + tgt.addDosage(convertDosage(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + if (src.hasTransform()) + tgt.setTransform(convertReference(src.getTransform())); + for (org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent t : src.getDynamicValue()) + tgt.addDynamicValue(convertActivityDefinitionDynamicValueComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ActivityDefinition convertActivityDefinition(org.hl7.fhir.r4.model.ActivityDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ActivityDefinition tgt = new org.hl7.fhir.dstu3.model.ActivityDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTopic()) + tgt.addTopic(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Contributor t : src.getContributor()) + tgt.addContributor(convertContributor(t)); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getLibrary()) + tgt.addLibrary(convertReference(t)); + if (src.hasKind()) + tgt.setKind(convertActivityDefinitionKind(src.getKind())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertActivityDefinitionParticipantComponent(t)); + if (src.hasProduct()) + tgt.setProduct(convertType(src.getProduct())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + for (org.hl7.fhir.r4.model.Dosage t : src.getDosage()) + tgt.addDosage(convertDosage(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + if (src.hasTransform()) + tgt.setTransform(convertReference(src.getTransform())); + for (org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent t : src.getDynamicValue()) + tgt.addDynamicValue(convertActivityDefinitionDynamicValueComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Enumerations.PublicationStatus convertPublicationStatus(org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.RETIRED; + case UNKNOWN: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.Enumerations.PublicationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus convertPublicationStatus(org.hl7.fhir.r4.model.Enumerations.PublicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.ACTIVE; + case RETIRED: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.RETIRED; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Enumerations.PublicationStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind convertActivityDefinitionKind(org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACCOUNT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ACCOUNT; + case ACTIVITYDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ACTIVITYDEFINITION; + case ADVERSEEVENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ADVERSEEVENT; + case ALLERGYINTOLERANCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ALLERGYINTOLERANCE; + case APPOINTMENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.APPOINTMENT; + case APPOINTMENTRESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.APPOINTMENTRESPONSE; + case AUDITEVENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.AUDITEVENT; + case BASIC: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.BASIC; + case BINARY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.BINARY; + case BODYSITE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.BODYSTRUCTURE; + case BUNDLE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.BUNDLE; + case CAPABILITYSTATEMENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CAPABILITYSTATEMENT; + case CAREPLAN: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CAREPLAN; + case CARETEAM: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CARETEAM; + case CHARGEITEM: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CHARGEITEM; + case CLAIM: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CLAIM; + case CLAIMRESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CLAIMRESPONSE; + case CLINICALIMPRESSION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CLINICALIMPRESSION; + case CODESYSTEM: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CODESYSTEM; + case COMMUNICATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.COMMUNICATION; + case COMMUNICATIONREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.COMMUNICATIONREQUEST; + case COMPARTMENTDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.COMPARTMENTDEFINITION; + case COMPOSITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.COMPOSITION; + case CONCEPTMAP: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CONCEPTMAP; + case CONDITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CONDITION; + case CONSENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CONSENT; + case CONTRACT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.CONTRACT; + case COVERAGE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.COVERAGE; + case DETECTEDISSUE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DETECTEDISSUE; + case DEVICE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DEVICE; + case DEVICECOMPONENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DEVICECOMPONENT; + case DEVICEMETRIC: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DEVICEMETRIC; + case DEVICEREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DEVICEREQUEST; + case DEVICEUSESTATEMENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DEVICEUSESTATEMENT; + case DIAGNOSTICREPORT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DIAGNOSTICREPORT; + case DOCUMENTMANIFEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DOCUMENTMANIFEST; + case DOCUMENTREFERENCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DOCUMENTREFERENCE; + case DOMAINRESOURCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.DOMAINRESOURCE; + case ELIGIBILITYREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ELIGIBILITYREQUEST; + case ELIGIBILITYRESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ELIGIBILITYRESPONSE; + case ENCOUNTER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ENCOUNTER; + case ENDPOINT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ENDPOINT; + case ENROLLMENTREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ENROLLMENTREQUEST; + case ENROLLMENTRESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ENROLLMENTRESPONSE; + case EPISODEOFCARE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.EPISODEOFCARE; + case EXPANSIONPROFILE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.EXPANSIONPROFILE; + case EXPLANATIONOFBENEFIT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.EXPLANATIONOFBENEFIT; + case FAMILYMEMBERHISTORY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.FAMILYMEMBERHISTORY; + case FLAG: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.FLAG; + case GOAL: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.GOAL; + case GRAPHDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.GRAPHDEFINITION; + case GROUP: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.GROUP; + case GUIDANCERESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.GUIDANCERESPONSE; + case HEALTHCARESERVICE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.HEALTHCARESERVICE; + case IMAGINGMANIFEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.IMAGINGMANIFEST; + case IMAGINGSTUDY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.IMAGINGSTUDY; + case IMMUNIZATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.IMMUNIZATION; + case IMMUNIZATIONRECOMMENDATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.IMMUNIZATIONRECOMMENDATION; + case IMPLEMENTATIONGUIDE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.IMPLEMENTATIONGUIDE; + case LIBRARY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.LIBRARY; + case LINKAGE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.LINKAGE; + case LIST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.LIST; + case LOCATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.LOCATION; + case MEASURE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEASURE; + case MEASUREREPORT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEASUREREPORT; + case MEDIA: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDIA; + case MEDICATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDICATION; + case MEDICATIONADMINISTRATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONADMINISTRATION; + case MEDICATIONDISPENSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONDISPENSE; + case MEDICATIONREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONREQUEST; + case MEDICATIONSTATEMENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONSTATEMENT; + case MESSAGEDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MESSAGEDEFINITION; + case MESSAGEHEADER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.MESSAGEHEADER; + case NAMINGSYSTEM: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.NAMINGSYSTEM; + case NUTRITIONORDER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.NUTRITIONORDER; + case OBSERVATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.OBSERVATION; + case OPERATIONDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.OPERATIONDEFINITION; + case OPERATIONOUTCOME: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.OPERATIONOUTCOME; + case ORGANIZATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.ORGANIZATION; + case PARAMETERS: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PARAMETERS; + case PATIENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PATIENT; + case PAYMENTNOTICE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PAYMENTNOTICE; + case PAYMENTRECONCILIATION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PAYMENTRECONCILIATION; + case PERSON: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PERSON; + case PLANDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PLANDEFINITION; + case PRACTITIONER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PRACTITIONER; + case PRACTITIONERROLE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PRACTITIONERROLE; + case PROCEDURE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROCEDURE; + case PROCEDUREREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROCEDUREREQUEST; + case PROCESSREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROCESSREQUEST; + case PROCESSRESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROCESSRESPONSE; + case PROVENANCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROVENANCE; + case QUESTIONNAIRE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.QUESTIONNAIRE; + case QUESTIONNAIRERESPONSE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.QUESTIONNAIRERESPONSE; + case REFERRALREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.PROCEDUREREQUEST; + case RELATEDPERSON: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.RELATEDPERSON; + case REQUESTGROUP: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.REQUESTGROUP; + case RESEARCHSTUDY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.RESEARCHSTUDY; + case RESEARCHSUBJECT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.RESEARCHSUBJECT; + case RESOURCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.RESOURCE; + case RISKASSESSMENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.RISKASSESSMENT; + case SCHEDULE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SCHEDULE; + case SEARCHPARAMETER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SEARCHPARAMETER; + case SEQUENCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SEQUENCE; + case SERVICEDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SERVICEDEFINITION; + case SLOT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SLOT; + case SPECIMEN: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SPECIMEN; + case STRUCTUREDEFINITION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.STRUCTUREDEFINITION; + case STRUCTUREMAP: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.STRUCTUREMAP; + case SUBSCRIPTION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SUBSCRIPTION; + case SUBSTANCE: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SUBSTANCE; + case SUPPLYDELIVERY: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SUPPLYDELIVERY; + case SUPPLYREQUEST: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.SUPPLYREQUEST; + case TASK: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.TASK; + case TESTREPORT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.TESTREPORT; + case TESTSCRIPT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.TESTSCRIPT; + case VALUESET: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.VALUESET; + case VISIONPRESCRIPTION: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.VISIONPRESCRIPTION; + default: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind convertActivityDefinitionKind(org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACCOUNT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ACCOUNT; + case ACTIVITYDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ACTIVITYDEFINITION; + case ADVERSEEVENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ADVERSEEVENT; + case ALLERGYINTOLERANCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ALLERGYINTOLERANCE; + case APPOINTMENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.APPOINTMENT; + case APPOINTMENTRESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.APPOINTMENTRESPONSE; + case AUDITEVENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.AUDITEVENT; + case BASIC: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.BASIC; + case BINARY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.BINARY; + case BODYSTRUCTURE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.BODYSITE; + case BUNDLE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.BUNDLE; + case CAPABILITYSTATEMENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CAPABILITYSTATEMENT; + case CAREPLAN: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CAREPLAN; + case CARETEAM: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CARETEAM; + case CHARGEITEM: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CHARGEITEM; + case CLAIM: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CLAIM; + case CLAIMRESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CLAIMRESPONSE; + case CLINICALIMPRESSION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CLINICALIMPRESSION; + case CODESYSTEM: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CODESYSTEM; + case COMMUNICATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.COMMUNICATION; + case COMMUNICATIONREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.COMMUNICATIONREQUEST; + case COMPARTMENTDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.COMPARTMENTDEFINITION; + case COMPOSITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.COMPOSITION; + case CONCEPTMAP: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CONCEPTMAP; + case CONDITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CONDITION; + case CONSENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CONSENT; + case CONTRACT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.CONTRACT; + case COVERAGE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.COVERAGE; + case DETECTEDISSUE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DETECTEDISSUE; + case DEVICE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DEVICE; + case DEVICECOMPONENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DEVICECOMPONENT; + case DEVICEMETRIC: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DEVICEMETRIC; + case DEVICEREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DEVICEREQUEST; + case DEVICEUSESTATEMENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DEVICEUSESTATEMENT; + case DIAGNOSTICREPORT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DIAGNOSTICREPORT; + case DOCUMENTMANIFEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DOCUMENTMANIFEST; + case DOCUMENTREFERENCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DOCUMENTREFERENCE; + case DOMAINRESOURCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.DOMAINRESOURCE; + case ELIGIBILITYREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ELIGIBILITYREQUEST; + case ELIGIBILITYRESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ELIGIBILITYRESPONSE; + case ENCOUNTER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ENCOUNTER; + case ENDPOINT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ENDPOINT; + case ENROLLMENTREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ENROLLMENTREQUEST; + case ENROLLMENTRESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ENROLLMENTRESPONSE; + case EPISODEOFCARE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.EPISODEOFCARE; + case EXPANSIONPROFILE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.EXPANSIONPROFILE; + case EXPLANATIONOFBENEFIT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.EXPLANATIONOFBENEFIT; + case FAMILYMEMBERHISTORY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.FAMILYMEMBERHISTORY; + case FLAG: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.FLAG; + case GOAL: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.GOAL; + case GRAPHDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.GRAPHDEFINITION; + case GROUP: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.GROUP; + case GUIDANCERESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.GUIDANCERESPONSE; + case HEALTHCARESERVICE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.HEALTHCARESERVICE; + case IMAGINGMANIFEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.IMAGINGMANIFEST; + case IMAGINGSTUDY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.IMAGINGSTUDY; + case IMMUNIZATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.IMMUNIZATION; + case IMMUNIZATIONRECOMMENDATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.IMMUNIZATIONRECOMMENDATION; + case IMPLEMENTATIONGUIDE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.IMPLEMENTATIONGUIDE; + case LIBRARY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.LIBRARY; + case LINKAGE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.LINKAGE; + case LIST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.LIST; + case LOCATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.LOCATION; + case MEASURE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEASURE; + case MEASUREREPORT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEASUREREPORT; + case MEDIA: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDIA; + case MEDICATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDICATION; + case MEDICATIONADMINISTRATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONADMINISTRATION; + case MEDICATIONDISPENSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONDISPENSE; + case MEDICATIONREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONREQUEST; + case MEDICATIONSTATEMENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MEDICATIONSTATEMENT; + case MESSAGEDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MESSAGEDEFINITION; + case MESSAGEHEADER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.MESSAGEHEADER; + case NAMINGSYSTEM: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.NAMINGSYSTEM; + case NUTRITIONORDER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.NUTRITIONORDER; + case OBSERVATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.OBSERVATION; + case OPERATIONDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.OPERATIONDEFINITION; + case OPERATIONOUTCOME: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.OPERATIONOUTCOME; + case ORGANIZATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.ORGANIZATION; + case PARAMETERS: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PARAMETERS; + case PATIENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PATIENT; + case PAYMENTNOTICE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PAYMENTNOTICE; + case PAYMENTRECONCILIATION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PAYMENTRECONCILIATION; + case PERSON: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PERSON; + case PLANDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PLANDEFINITION; + case PRACTITIONER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PRACTITIONER; + case PRACTITIONERROLE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PRACTITIONERROLE; + case PROCEDURE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PROCEDURE; + case PROCEDUREREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PROCEDUREREQUEST; + case PROCESSREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PROCESSREQUEST; + case PROCESSRESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PROCESSRESPONSE; + case PROVENANCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.PROVENANCE; + case QUESTIONNAIRE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.QUESTIONNAIRE; + case QUESTIONNAIRERESPONSE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.QUESTIONNAIRERESPONSE; + case RELATEDPERSON: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.RELATEDPERSON; + case REQUESTGROUP: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.REQUESTGROUP; + case RESEARCHSTUDY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.RESEARCHSTUDY; + case RESEARCHSUBJECT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.RESEARCHSUBJECT; + case RESOURCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.RESOURCE; + case RISKASSESSMENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.RISKASSESSMENT; + case SCHEDULE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SCHEDULE; + case SEARCHPARAMETER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SEARCHPARAMETER; + case SEQUENCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SEQUENCE; + case SERVICEDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SERVICEDEFINITION; + case SLOT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SLOT; + case SPECIMEN: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SPECIMEN; + case STRUCTUREDEFINITION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.STRUCTUREDEFINITION; + case STRUCTUREMAP: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.STRUCTUREMAP; + case SUBSCRIPTION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SUBSCRIPTION; + case SUBSTANCE: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SUBSTANCE; + case SUPPLYDELIVERY: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SUPPLYDELIVERY; + case SUPPLYREQUEST: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.SUPPLYREQUEST; + case TASK: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.TASK; + case TESTREPORT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.TESTREPORT; + case TESTSCRIPT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.TESTSCRIPT; + case VALUESET: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.VALUESET; + case VISIONPRESCRIPTION: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.VISIONPRESCRIPTION; + default: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionKind.NULL; + } +} + + public static org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionParticipantComponent convertActivityDefinitionParticipantComponent(org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionParticipantComponent tgt = new org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionParticipantComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertActivityParticipantType(src.getType())); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionParticipantComponent convertActivityDefinitionParticipantComponent(org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionParticipantComponent tgt = new org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionParticipantComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertActivityParticipantType(src.getType())); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType convertActivityParticipantType(org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType.PATIENT; + case PRACTITIONER: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType.PRACTITIONER; + case RELATEDPERSON: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType.RELATEDPERSON; + default: return org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType convertActivityParticipantType(org.hl7.fhir.r4.model.ActivityDefinition.ActivityParticipantType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType.PATIENT; + case PRACTITIONER: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType.PRACTITIONER; + case RELATEDPERSON: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType.RELATEDPERSON; + default: return org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityParticipantType.NULL; + } +} + + public static org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent convertActivityDefinitionDynamicValueComponent(org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent tgt = new org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent convertActivityDefinitionDynamicValueComponent(org.hl7.fhir.r4.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent tgt = new org.hl7.fhir.dstu3.model.ActivityDefinition.ActivityDefinitionDynamicValueComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + return tgt; + } + + public static org.hl7.fhir.r4.model.AllergyIntolerance convertAllergyIntolerance(org.hl7.fhir.dstu3.model.AllergyIntolerance src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.AllergyIntolerance tgt = new org.hl7.fhir.r4.model.AllergyIntolerance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasClinicalStatus()) + tgt.setClinicalStatus(convertAllergyIntoleranceClinicalStatus(src.getClinicalStatus())); + if (src.hasVerificationStatus()) + tgt.setVerificationStatus(convertAllergyIntoleranceVerificationStatus(src.getVerificationStatus())); + if (src.hasType()) + tgt.setType(convertAllergyIntoleranceType(src.getType())); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getCategory()) + tgt.addCategory(convertAllergyIntoleranceCategory(t.getValue())); + if (src.hasCriticality()) + tgt.setCriticality(convertAllergyIntoleranceCriticality(src.getCriticality())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasOnset()) + tgt.setOnset(convertType(src.getOnset())); + if (src.hasAssertedDate()) + tgt.setAssertedDate(src.getAssertedDate()); + if (src.hasRecorder()) + tgt.setRecorder(convertReference(src.getRecorder())); + if (src.hasAsserter()) + tgt.setAsserter(convertReference(src.getAsserter())); + if (src.hasLastOccurrence()) + tgt.setLastOccurrence(src.getLastOccurrence()); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent t : src.getReaction()) + tgt.addReaction(convertAllergyIntoleranceReactionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.AllergyIntolerance convertAllergyIntolerance(org.hl7.fhir.r4.model.AllergyIntolerance src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.AllergyIntolerance tgt = new org.hl7.fhir.dstu3.model.AllergyIntolerance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasClinicalStatus()) + tgt.setClinicalStatus(convertAllergyIntoleranceClinicalStatus(src.getClinicalStatus())); + if (src.hasVerificationStatus()) + tgt.setVerificationStatus(convertAllergyIntoleranceVerificationStatus(src.getVerificationStatus())); + if (src.hasType()) + tgt.setType(convertAllergyIntoleranceType(src.getType())); + for (org.hl7.fhir.r4.model.Enumeration t : src.getCategory()) + tgt.addCategory(convertAllergyIntoleranceCategory(t.getValue())); + if (src.hasCriticality()) + tgt.setCriticality(convertAllergyIntoleranceCriticality(src.getCriticality())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasOnset()) + tgt.setOnset(convertType(src.getOnset())); + if (src.hasAssertedDate()) + tgt.setAssertedDate(src.getAssertedDate()); + if (src.hasRecorder()) + tgt.setRecorder(convertReference(src.getRecorder())); + if (src.hasAsserter()) + tgt.setAsserter(convertReference(src.getAsserter())); + if (src.hasLastOccurrence()) + tgt.setLastOccurrence(src.getLastOccurrence()); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceReactionComponent t : src.getReaction()) + tgt.addReaction(convertAllergyIntoleranceReactionComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus convertAllergyIntoleranceClinicalStatus(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.INACTIVE; + case RESOLVED: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.RESOLVED; + default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus convertAllergyIntoleranceClinicalStatus(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.INACTIVE; + case RESOLVED: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.RESOLVED; + default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceClinicalStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus convertAllergyIntoleranceVerificationStatus(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UNCONFIRMED: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.UNCONFIRMED; + case CONFIRMED: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.CONFIRMED; + case REFUTED: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.REFUTED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus convertAllergyIntoleranceVerificationStatus(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UNCONFIRMED: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.UNCONFIRMED; + case CONFIRMED: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.CONFIRMED; + case REFUTED: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.REFUTED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceVerificationStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceType convertAllergyIntoleranceType(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ALLERGY: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceType.ALLERGY; + case INTOLERANCE: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceType.INTOLERANCE; + default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType convertAllergyIntoleranceType(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ALLERGY: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType.ALLERGY; + case INTOLERANCE: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType.INTOLERANCE; + default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceType.NULL; + } +} + + private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory convertAllergyIntoleranceCategory(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FOOD: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory.FOOD; + case MEDICATION: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory.MEDICATION; + case ENVIRONMENT: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory.ENVIRONMENT; + case BIOLOGIC: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory.BIOLOGIC; + default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory convertAllergyIntoleranceCategory(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FOOD: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory.FOOD; + case MEDICATION: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory.MEDICATION; + case ENVIRONMENT: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory.ENVIRONMENT; + case BIOLOGIC: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory.BIOLOGIC; + default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCategory.NULL; + } +} + + private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality convertAllergyIntoleranceCriticality(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LOW: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality.LOW; + case HIGH: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality.HIGH; + case UNABLETOASSESS: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality.UNABLETOASSESS; + default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality convertAllergyIntoleranceCriticality(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceCriticality src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LOW: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality.LOW; + case HIGH: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality.HIGH; + case UNABLETOASSESS: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality.UNABLETOASSESS; + default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceCriticality.NULL; + } +} + + public static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceReactionComponent convertAllergyIntoleranceReactionComponent(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceReactionComponent tgt = new org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceReactionComponent(); + copyElement(src, tgt); + if (src.hasSubstance()) + tgt.setSubstance(convertCodeableConcept(src.getSubstance())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getManifestation()) + tgt.addManifestation(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasOnset()) + tgt.setOnset(src.getOnset()); + if (src.hasSeverity()) + tgt.setSeverity(convertAllergyIntoleranceSeverity(src.getSeverity())); + if (src.hasExposureRoute()) + tgt.setExposureRoute(convertCodeableConcept(src.getExposureRoute())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent convertAllergyIntoleranceReactionComponent(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceReactionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent tgt = new org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceReactionComponent(); + copyElement(src, tgt); + if (src.hasSubstance()) + tgt.setSubstance(convertCodeableConcept(src.getSubstance())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getManifestation()) + tgt.addManifestation(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasOnset()) + tgt.setOnset(src.getOnset()); + if (src.hasSeverity()) + tgt.setSeverity(convertAllergyIntoleranceSeverity(src.getSeverity())); + if (src.hasExposureRoute()) + tgt.setExposureRoute(convertCodeableConcept(src.getExposureRoute())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity convertAllergyIntoleranceSeverity(org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MILD: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity.MILD; + case MODERATE: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity.MODERATE; + case SEVERE: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity.SEVERE; + default: return org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity convertAllergyIntoleranceSeverity(org.hl7.fhir.r4.model.AllergyIntolerance.AllergyIntoleranceSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MILD: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity.MILD; + case MODERATE: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity.MODERATE; + case SEVERE: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity.SEVERE; + default: return org.hl7.fhir.dstu3.model.AllergyIntolerance.AllergyIntoleranceSeverity.NULL; + } +} + + public static org.hl7.fhir.r4.model.Appointment convertAppointment(org.hl7.fhir.dstu3.model.Appointment src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Appointment tgt = new org.hl7.fhir.r4.model.Appointment(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertAppointmentStatus(src.getStatus())); + if (src.hasServiceCategory()) + tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) + tgt.addServiceType(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(t)); + if (src.hasAppointmentType()) + tgt.setAppointmentType(convertCodeableConcept(src.getAppointmentType())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getIndication()) + tgt.addIndication(convertReference(t)); + if (src.hasPriority()) + tgt.setPriority(src.getPriority()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInformation(convertReference(t)); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + if (src.hasMinutesDuration()) + tgt.setMinutesDuration(src.getMinutesDuration()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSlot()) + tgt.addSlot(convertReference(t)); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getIncomingReferral()) + tgt.addIncomingReferral(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertAppointmentParticipantComponent(t)); + for (org.hl7.fhir.dstu3.model.Period t : src.getRequestedPeriod()) + tgt.addRequestedPeriod(convertPeriod(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Appointment convertAppointment(org.hl7.fhir.r4.model.Appointment src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Appointment tgt = new org.hl7.fhir.dstu3.model.Appointment(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertAppointmentStatus(src.getStatus())); + if (src.hasServiceCategory()) + tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) + tgt.addServiceType(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(t)); + if (src.hasAppointmentType()) + tgt.setAppointmentType(convertCodeableConcept(src.getAppointmentType())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getIndication()) + tgt.addIndication(convertReference(t)); + if (src.hasPriority()) + tgt.setPriority(src.getPriority()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInformation(convertReference(t)); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + if (src.hasMinutesDuration()) + tgt.setMinutesDuration(src.getMinutesDuration()); + for (org.hl7.fhir.r4.model.Reference t : src.getSlot()) + tgt.addSlot(convertReference(t)); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + for (org.hl7.fhir.r4.model.Reference t : src.getIncomingReferral()) + tgt.addIncomingReferral(convertReference(t)); + for (org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertAppointmentParticipantComponent(t)); + for (org.hl7.fhir.r4.model.Period t : src.getRequestedPeriod()) + tgt.addRequestedPeriod(convertPeriod(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.PROPOSED; + case PENDING: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.PENDING; + case BOOKED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.BOOKED; + case ARRIVED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.ARRIVED; + case FULFILLED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.FULFILLED; + case CANCELLED: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.CANCELLED; + case NOSHOW: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.NOSHOW; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Appointment.AppointmentStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus convertAppointmentStatus(org.hl7.fhir.r4.model.Appointment.AppointmentStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.PROPOSED; + case PENDING: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.PENDING; + case BOOKED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.BOOKED; + case ARRIVED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.ARRIVED; + case FULFILLED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.FULFILLED; + case CANCELLED: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.CANCELLED; + case NOSHOW: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.NOSHOW; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Appointment.AppointmentStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + if (src.hasRequired()) + tgt.setRequired(convertParticipantRequired(src.getRequired())); + if (src.hasStatus()) + tgt.setStatus(convertParticipationStatus(src.getStatus())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent convertAppointmentParticipantComponent(org.hl7.fhir.r4.model.Appointment.AppointmentParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent tgt = new org.hl7.fhir.dstu3.model.Appointment.AppointmentParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + if (src.hasRequired()) + tgt.setRequired(convertParticipantRequired(src.getRequired())); + if (src.hasStatus()) + tgt.setStatus(convertParticipationStatus(src.getStatus())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.REQUIRED; + case OPTIONAL: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.OPTIONAL; + case INFORMATIONONLY: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.INFORMATIONONLY; + default: return org.hl7.fhir.r4.model.Appointment.ParticipantRequired.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired convertParticipantRequired(org.hl7.fhir.r4.model.Appointment.ParticipantRequired src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUIRED: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.REQUIRED; + case OPTIONAL: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.OPTIONAL; + case INFORMATIONONLY: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.INFORMATIONONLY; + default: return org.hl7.fhir.dstu3.model.Appointment.ParticipantRequired.NULL; + } +} + + private static org.hl7.fhir.r4.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.TENTATIVE; + case NEEDSACTION: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.NEEDSACTION; + default: return org.hl7.fhir.r4.model.Appointment.ParticipationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus convertParticipationStatus(org.hl7.fhir.r4.model.Appointment.ParticipationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.TENTATIVE; + case NEEDSACTION: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.NEEDSACTION; + default: return org.hl7.fhir.dstu3.model.Appointment.ParticipationStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.dstu3.model.AppointmentResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.AppointmentResponse tgt = new org.hl7.fhir.r4.model.AppointmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasAppointment()) + tgt.setAppointment(convertReference(src.getAppointment())); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getParticipantType()) + tgt.addParticipantType(convertCodeableConcept(t)); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + if (src.hasParticipantStatus()) + tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.AppointmentResponse convertAppointmentResponse(org.hl7.fhir.r4.model.AppointmentResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.AppointmentResponse tgt = new org.hl7.fhir.dstu3.model.AppointmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasAppointment()) + tgt.setAppointment(convertReference(src.getAppointment())); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getParticipantType()) + tgt.addParticipantType(convertCodeableConcept(t)); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + if (src.hasParticipantStatus()) + tgt.setParticipantStatus(convertParticipantStatus(src.getParticipantStatus())); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + private static org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.TENTATIVE; + case NEEDSACTION: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; + default: return org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus convertParticipantStatus(org.hl7.fhir.r4.model.AppointmentResponse.ParticipantStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACCEPTED: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.ACCEPTED; + case DECLINED: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.DECLINED; + case TENTATIVE: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.TENTATIVE; + case NEEDSACTION: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.NEEDSACTION; + default: return org.hl7.fhir.dstu3.model.AppointmentResponse.ParticipantStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.AuditEvent convertAuditEvent(org.hl7.fhir.dstu3.model.AuditEvent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.AuditEvent tgt = new org.hl7.fhir.r4.model.AuditEvent(); + copyDomainResource(src, tgt); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + for (org.hl7.fhir.dstu3.model.Coding t : src.getSubtype()) + tgt.addSubtype(convertCoding(t)); + if (src.hasAction()) + tgt.setAction(convertAuditEventAction(src.getAction())); + if (src.hasRecorded()) + tgt.setRecorded(src.getRecorded()); + if (src.hasOutcome()) + tgt.setOutcome(convertAuditEventOutcome(src.getOutcome())); + if (src.hasOutcomeDesc()) + tgt.setOutcomeDesc(src.getOutcomeDesc()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPurposeOfEvent()) + tgt.addPurposeOfEvent(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) + tgt.addAgent(convertAuditEventAgentComponent(t)); + if (src.hasSource()) + tgt.setSource(convertAuditEventSourceComponent(src.getSource())); + for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent t : src.getEntity()) + tgt.addEntity(convertAuditEventEntityComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.AuditEvent convertAuditEvent(org.hl7.fhir.r4.model.AuditEvent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.AuditEvent tgt = new org.hl7.fhir.dstu3.model.AuditEvent(); + copyDomainResource(src, tgt); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + for (org.hl7.fhir.r4.model.Coding t : src.getSubtype()) + tgt.addSubtype(convertCoding(t)); + if (src.hasAction()) + tgt.setAction(convertAuditEventAction(src.getAction())); + if (src.hasRecorded()) + tgt.setRecorded(src.getRecorded()); + if (src.hasOutcome()) + tgt.setOutcome(convertAuditEventOutcome(src.getOutcome())); + if (src.hasOutcomeDesc()) + tgt.setOutcomeDesc(src.getOutcomeDesc()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPurposeOfEvent()) + tgt.addPurposeOfEvent(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent t : src.getAgent()) + tgt.addAgent(convertAuditEventAgentComponent(t)); + if (src.hasSource()) + tgt.setSource(convertAuditEventSourceComponent(src.getSource())); + for (org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent t : src.getEntity()) + tgt.addEntity(convertAuditEventEntityComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case C: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.C; + case R: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.R; + case U: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.U; + case D: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.D; + case E: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.E; + default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAction.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction convertAuditEventAction(org.hl7.fhir.r4.model.AuditEvent.AuditEventAction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case C: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.C; + case R: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.R; + case U: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.U; + case D: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.D; + case E: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.E; + default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAction.NULL; + } +} + + private static org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _0: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._0; + case _4: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._4; + case _8: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._8; + case _12: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome._12; + default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome convertAuditEventOutcome(org.hl7.fhir.r4.model.AuditEvent.AuditEventOutcome src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _0: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._0; + case _4: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._4; + case _8: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._8; + case _12: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome._12; + default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventOutcome.NULL; + } +} + + public static org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent convertAuditEventAgentComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + if (src.hasReference()) + tgt.setReference(convertReference(src.getReference())); + if (src.hasUserId()) + tgt.setUserId(convertIdentifier(src.getUserId())); + if (src.hasAltId()) + tgt.setAltId(src.getAltId()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasRequestor()) + tgt.setRequestor(src.getRequestor()); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.dstu3.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + if (src.hasMedia()) + tgt.setMedia(convertCoding(src.getMedia())); + if (src.hasNetwork()) + tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPurposeOfUse()) + tgt.addPurposeOfUse(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent convertAuditEventAgentComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + if (src.hasReference()) + tgt.setReference(convertReference(src.getReference())); + if (src.hasUserId()) + tgt.setUserId(convertIdentifier(src.getUserId())); + if (src.hasAltId()) + tgt.setAltId(src.getAltId()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasRequestor()) + tgt.setRequestor(src.getRequestor()); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.r4.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + if (src.hasMedia()) + tgt.setMedia(convertCoding(src.getMedia())); + if (src.hasNetwork()) + tgt.setNetwork(convertAuditEventAgentNetworkComponent(src.getNetwork())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPurposeOfUse()) + tgt.addPurposeOfUse(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent(); + copyElement(src, tgt); + if (src.hasAddress()) + tgt.setAddress(src.getAddress()); + if (src.hasType()) + tgt.setType(convertAuditEventAgentNetworkType(src.getType())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent convertAuditEventAgentNetworkComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkComponent(); + copyElement(src, tgt); + if (src.hasAddress()) + tgt.setAddress(src.getAddress()); + if (src.hasType()) + tgt.setType(convertAuditEventAgentNetworkType(src.getType())); + return tgt; + } + + private static org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType convertAuditEventAgentNetworkType(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _1: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._1; + case _2: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._2; + case _3: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._3; + case _4: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._4; + case _5: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType._5; + default: return org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType convertAuditEventAgentNetworkType(org.hl7.fhir.r4.model.AuditEvent.AuditEventAgentNetworkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case _1: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._1; + case _2: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._2; + case _3: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._3; + case _4: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._4; + case _5: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType._5; + default: return org.hl7.fhir.dstu3.model.AuditEvent.AuditEventAgentNetworkType.NULL; + } +} + + public static org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent(); + copyElement(src, tgt); + if (src.hasSite()) + tgt.setSite(src.getSite()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.dstu3.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent convertAuditEventSourceComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventSourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventSourceComponent(); + copyElement(src, tgt); + if (src.hasSite()) + tgt.setSite(src.getSite()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.r4.model.Coding t : src.getType()) + tgt.addType(convertCoding(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent convertAuditEventEntityComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasReference()) + tgt.setReference(convertReference(src.getReference())); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + if (src.hasRole()) + tgt.setRole(convertCoding(src.getRole())); + if (src.hasLifecycle()) + tgt.setLifecycle(convertCoding(src.getLifecycle())); + for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCoding(t)); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasQuery()) + tgt.setQuery(src.getQuery()); + for (org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent t : src.getDetail()) + tgt.addDetail(convertAuditEventEntityDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent convertAuditEventEntityComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasReference()) + tgt.setReference(convertReference(src.getReference())); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + if (src.hasRole()) + tgt.setRole(convertCoding(src.getRole())); + if (src.hasLifecycle()) + tgt.setLifecycle(convertCoding(src.getLifecycle())); + for (org.hl7.fhir.r4.model.Coding t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCoding(t)); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasQuery()) + tgt.setQuery(src.getQuery()); + for (org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent t : src.getDetail()) + tgt.addDetail(convertAuditEventEntityDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent tgt = new org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent convertAuditEventEntityDetailComponent(org.hl7.fhir.r4.model.AuditEvent.AuditEventEntityDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent tgt = new org.hl7.fhir.dstu3.model.AuditEvent.AuditEventEntityDetailComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Basic convertBasic(org.hl7.fhir.dstu3.model.Basic src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Basic tgt = new org.hl7.fhir.r4.model.Basic(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Basic convertBasic(org.hl7.fhir.r4.model.Basic src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Basic tgt = new org.hl7.fhir.dstu3.model.Basic(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Binary convertBinary(org.hl7.fhir.dstu3.model.Binary src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Binary tgt = new org.hl7.fhir.r4.model.Binary(); + copyResource(src, tgt); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasSecurityContext()) + tgt.setSecurityContext(convertReference(src.getSecurityContext())); + if (src.hasContent()) + tgt.setContent(src.getContent()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Binary convertBinary(org.hl7.fhir.r4.model.Binary src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Binary tgt = new org.hl7.fhir.dstu3.model.Binary(); + copyResource(src, tgt); + if (src.hasContentType()) + tgt.setContentType(src.getContentType()); + if (src.hasSecurityContext()) + tgt.setSecurityContext(convertReference(src.getSecurityContext())); + if (src.hasContent()) + tgt.setContent(src.getContent()); + return tgt; + } + + public static org.hl7.fhir.r4.model.BodyStructure convertBodySite(org.hl7.fhir.dstu3.model.BodySite src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.BodyStructure tgt = new org.hl7.fhir.r4.model.BodyStructure(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); +// if (src.hasCode()) +// tgt.setCode(convertCodeableConcept(src.getCode())); +// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getQualifier()) +// tgt.addQualifier(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getImage()) + tgt.addImage(convertAttachment(t)); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.BodySite convertBodySite(org.hl7.fhir.r4.model.BodyStructure src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.BodySite tgt = new org.hl7.fhir.dstu3.model.BodySite(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); +// if (src.hasCode()) +// tgt.setCode(convertCodeableConcept(src.getCode())); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getQualifier()) +// tgt.addQualifier(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.Attachment t : src.getImage()) + tgt.addImage(convertAttachment(t)); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Bundle convertBundle(org.hl7.fhir.dstu3.model.Bundle src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Bundle tgt = new org.hl7.fhir.r4.model.Bundle(); + copyResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasType()) + tgt.setType(convertBundleType(src.getType())); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + for (org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent t : src.getEntry()) + tgt.addEntry(convertBundleEntryComponent(t)); + if (src.hasSignature()) + tgt.setSignature(convertSignature(src.getSignature())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Bundle convertBundle(org.hl7.fhir.r4.model.Bundle src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Bundle tgt = new org.hl7.fhir.dstu3.model.Bundle(); + copyResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasType()) + tgt.setType(convertBundleType(src.getType())); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + for (org.hl7.fhir.r4.model.Bundle.BundleEntryComponent t : src.getEntry()) + tgt.addEntry(convertBundleEntryComponent(t)); + if (src.hasSignature()) + tgt.setSignature(convertSignature(src.getSignature())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Bundle.BundleType convertBundleType(org.hl7.fhir.dstu3.model.Bundle.BundleType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENT: return org.hl7.fhir.r4.model.Bundle.BundleType.DOCUMENT; + case MESSAGE: return org.hl7.fhir.r4.model.Bundle.BundleType.MESSAGE; + case TRANSACTION: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTION; + case TRANSACTIONRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.TRANSACTIONRESPONSE; + case BATCH: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCH; + case BATCHRESPONSE: return org.hl7.fhir.r4.model.Bundle.BundleType.BATCHRESPONSE; + case HISTORY: return org.hl7.fhir.r4.model.Bundle.BundleType.HISTORY; + case SEARCHSET: return org.hl7.fhir.r4.model.Bundle.BundleType.SEARCHSET; + case COLLECTION: return org.hl7.fhir.r4.model.Bundle.BundleType.COLLECTION; + default: return org.hl7.fhir.r4.model.Bundle.BundleType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Bundle.BundleType convertBundleType(org.hl7.fhir.r4.model.Bundle.BundleType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DOCUMENT: return org.hl7.fhir.dstu3.model.Bundle.BundleType.DOCUMENT; + case MESSAGE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.MESSAGE; + case TRANSACTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTION; + case TRANSACTIONRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.TRANSACTIONRESPONSE; + case BATCH: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCH; + case BATCHRESPONSE: return org.hl7.fhir.dstu3.model.Bundle.BundleType.BATCHRESPONSE; + case HISTORY: return org.hl7.fhir.dstu3.model.Bundle.BundleType.HISTORY; + case SEARCHSET: return org.hl7.fhir.dstu3.model.Bundle.BundleType.SEARCHSET; + case COLLECTION: return org.hl7.fhir.dstu3.model.Bundle.BundleType.COLLECTION; + default: return org.hl7.fhir.dstu3.model.Bundle.BundleType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleLinkComponent(); + copyElement(src, tgt); + if (src.hasRelation()) + tgt.setRelation(src.getRelation()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent convertBundleLinkComponent(org.hl7.fhir.r4.model.Bundle.BundleLinkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent(); + copyElement(src, tgt); + if (src.hasRelation()) + tgt.setRelation(src.getRelation()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + if (src.hasFullUrl()) + tgt.setFullUrl(src.getFullUrl()); + if (src.hasResource()) + tgt.setResource(convertResource(src.getResource())); + if (src.hasSearch()) + tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); + if (src.hasRequest()) + tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent convertBundleEntryComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Bundle.BundleLinkComponent t : src.getLink()) + tgt.addLink(convertBundleLinkComponent(t)); + if (src.hasFullUrl()) + tgt.setFullUrl(src.getFullUrl()); + if (src.hasResource()) + tgt.setResource(convertResource(src.getResource())); + if (src.hasSearch()) + tgt.setSearch(convertBundleEntrySearchComponent(src.getSearch())); + if (src.hasRequest()) + tgt.setRequest(convertBundleEntryRequestComponent(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertBundleEntryResponseComponent(src.getResponse())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent(); + copyElement(src, tgt); + if (src.hasMode()) + tgt.setMode(convertSearchEntryMode(src.getMode())); + if (src.hasScore()) + tgt.setScore(src.getScore()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent convertBundleEntrySearchComponent(org.hl7.fhir.r4.model.Bundle.BundleEntrySearchComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntrySearchComponent(); + copyElement(src, tgt); + if (src.hasMode()) + tgt.setMode(convertSearchEntryMode(src.getMode())); + if (src.hasScore()) + tgt.setScore(src.getScore()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MATCH: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.MATCH; + case INCLUDE: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.INCLUDE; + case OUTCOME: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.OUTCOME; + default: return org.hl7.fhir.r4.model.Bundle.SearchEntryMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode convertSearchEntryMode(org.hl7.fhir.r4.model.Bundle.SearchEntryMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MATCH: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.MATCH; + case INCLUDE: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.INCLUDE; + case OUTCOME: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.OUTCOME; + default: return org.hl7.fhir.dstu3.model.Bundle.SearchEntryMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent(); + copyElement(src, tgt); + if (src.hasMethod()) + tgt.setMethod(convertHTTPVerb(src.getMethod())); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIfNoneMatch()) + tgt.setIfNoneMatch(src.getIfNoneMatch()); + if (src.hasIfModifiedSince()) + tgt.setIfModifiedSince(src.getIfModifiedSince()); + if (src.hasIfMatch()) + tgt.setIfMatch(src.getIfMatch()); + if (src.hasIfNoneExist()) + tgt.setIfNoneExist(src.getIfNoneExist()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent convertBundleEntryRequestComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryRequestComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryRequestComponent(); + copyElement(src, tgt); + if (src.hasMethod()) + tgt.setMethod(convertHTTPVerb(src.getMethod())); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIfNoneMatch()) + tgt.setIfNoneMatch(src.getIfNoneMatch()); + if (src.hasIfModifiedSince()) + tgt.setIfModifiedSince(src.getIfModifiedSince()); + if (src.hasIfMatch()) + tgt.setIfMatch(src.getIfMatch()); + if (src.hasIfNoneExist()) + tgt.setIfNoneExist(src.getIfNoneExist()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.dstu3.model.Bundle.HTTPVerb src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GET: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.GET; + case POST: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.POST; + case PUT: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.PUT; + case DELETE: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.DELETE; + default: return org.hl7.fhir.r4.model.Bundle.HTTPVerb.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Bundle.HTTPVerb convertHTTPVerb(org.hl7.fhir.r4.model.Bundle.HTTPVerb src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GET: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.GET; + case POST: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.POST; + case PUT: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.PUT; + case DELETE: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.DELETE; + default: return org.hl7.fhir.dstu3.model.Bundle.HTTPVerb.NULL; + } +} + + public static org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent(); + copyElement(src, tgt); + if (src.hasStatus()) + tgt.setStatus(src.getStatus()); + if (src.hasLocation()) + tgt.setLocation(src.getLocation()); + if (src.hasEtag()) + tgt.setEtag(src.getEtag()); + if (src.hasLastModified()) + tgt.setLastModified(src.getLastModified()); + if (src.hasOutcome()) + tgt.setOutcome(convertResource(src.getOutcome())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent convertBundleEntryResponseComponent(org.hl7.fhir.r4.model.Bundle.BundleEntryResponseComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent tgt = new org.hl7.fhir.dstu3.model.Bundle.BundleEntryResponseComponent(); + copyElement(src, tgt); + if (src.hasStatus()) + tgt.setStatus(src.getStatus()); + if (src.hasLocation()) + tgt.setLocation(src.getLocation()); + if (src.hasEtag()) + tgt.setEtag(src.getEtag()); + if (src.hasLastModified()) + tgt.setLastModified(src.getLastModified()); + if (src.hasOutcome()) + tgt.setOutcome(convertResource(src.getOutcome())); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement convertCapabilityStatement(org.hl7.fhir.dstu3.model.CapabilityStatement src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement tgt = new org.hl7.fhir.r4.model.CapabilityStatement(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasKind()) + tgt.setKind(convertCapabilityStatementKind(src.getKind())); + for (org.hl7.fhir.dstu3.model.UriType t : src.getInstantiates()) + tgt.addInstantiates(t.getValue()); + if (src.hasSoftware()) + tgt.setSoftware(convertCapabilityStatementSoftwareComponent(src.getSoftware())); + if (src.hasImplementation()) + tgt.setImplementation(convertCapabilityStatementImplementationComponent(src.getImplementation())); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + if (src.hasAcceptUnknown()) + tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getFormat()) + tgt.addFormat(t.getValue()); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getPatchFormat()) + tgt.addPatchFormat(t.getValue()); + for (org.hl7.fhir.dstu3.model.UriType t : src.getImplementationGuide()) + tgt.addImplementationGuide(t.getValue()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) + tgt.addRest(convertCapabilityStatementRestComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) + tgt.addMessaging(convertCapabilityStatementMessagingComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) + tgt.addDocument(convertCapabilityStatementDocumentComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement convertCapabilityStatement(org.hl7.fhir.r4.model.CapabilityStatement src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasKind()) + tgt.setKind(convertCapabilityStatementKind(src.getKind())); + for (org.hl7.fhir.r4.model.UriType t : src.getInstantiates()) + tgt.addInstantiates(t.getValue()); + if (src.hasSoftware()) + tgt.setSoftware(convertCapabilityStatementSoftwareComponent(src.getSoftware())); + if (src.hasImplementation()) + tgt.setImplementation(convertCapabilityStatementImplementationComponent(src.getImplementation())); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + if (src.hasAcceptUnknown()) + tgt.setAcceptUnknown(convertUnknownContentCode(src.getAcceptUnknown())); + for (org.hl7.fhir.r4.model.CodeType t : src.getFormat()) + tgt.addFormat(t.getValue()); + for (org.hl7.fhir.r4.model.CodeType t : src.getPatchFormat()) + tgt.addPatchFormat(t.getValue()); + for (org.hl7.fhir.r4.model.UriType t : src.getImplementationGuide()) + tgt.addImplementationGuide(t.getValue()); + for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent t : src.getRest()) + tgt.addRest(convertCapabilityStatementRestComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent t : src.getMessaging()) + tgt.addMessaging(convertCapabilityStatementMessagingComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent t : src.getDocument()) + tgt.addDocument(convertCapabilityStatementDocumentComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind convertCapabilityStatementKind(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; + case CAPABILITY: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; + case REQUIREMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; + default: return org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind convertCapabilityStatementKind(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.INSTANCE; + case CAPABILITY: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.CAPABILITY; + case REQUIREMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.REQUIREMENTS; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementKind.NULL; + } +} + + private static org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NO: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NO; + case EXTENSIONS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; + case ELEMENTS: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.ELEMENTS; + case BOTH: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.BOTH; + default: return org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode convertUnknownContentCode(org.hl7.fhir.r4.model.CapabilityStatement.UnknownContentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NO: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NO; + case EXTENSIONS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.EXTENSIONS; + case ELEMENTS: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.ELEMENTS; + case BOTH: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.BOTH; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.UnknownContentCode.NULL; + } +} + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertCapabilityStatementSoftwareComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasReleaseDate()) + tgt.setReleaseDate(src.getReleaseDate()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent convertCapabilityStatementSoftwareComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementSoftwareComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementSoftwareComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasReleaseDate()) + tgt.setReleaseDate(src.getReleaseDate()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent convertCapabilityStatementImplementationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent convertCapabilityStatementImplementationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementImplementationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementImplementationComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent convertCapabilityStatementRestComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent(); + copyElement(src, tgt); + if (src.hasMode()) + tgt.setMode(convertRestfulCapabilityMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasSecurity()) + tgt.setSecurity(convertCapabilityStatementRestSecurityComponent(src.getSecurity())); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) + tgt.addResource(convertCapabilityStatementRestResourceComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertSystemInteractionComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertCapabilityStatementRestResourceSearchParamComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) + tgt.addOperation(convertCapabilityStatementRestOperationComponent(t)); + for (org.hl7.fhir.dstu3.model.UriType t : src.getCompartment()) + tgt.addCompartment(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent convertCapabilityStatementRestComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestComponent(); + copyElement(src, tgt); + if (src.hasMode()) + tgt.setMode(convertRestfulCapabilityMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasSecurity()) + tgt.setSecurity(convertCapabilityStatementRestSecurityComponent(src.getSecurity())); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent t : src.getResource()) + tgt.addResource(convertCapabilityStatementRestResourceComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertSystemInteractionComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertCapabilityStatementRestResourceSearchParamComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent t : src.getOperation()) + tgt.addOperation(convertCapabilityStatementRestOperationComponent(t)); + for (org.hl7.fhir.r4.model.UriType t : src.getCompartment()) + tgt.addCompartment(t.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode convertRestfulCapabilityMode(org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLIENT: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; + case SERVER: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.SERVER; + default: return org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode convertRestfulCapabilityMode(org.hl7.fhir.r4.model.CapabilityStatement.RestfulCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CLIENT: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.CLIENT; + case SERVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.SERVER; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.RestfulCapabilityMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertCapabilityStatementRestSecurityComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); + copyElement(src, tgt); + if (src.hasCors()) + tgt.setCors(src.getCors()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getService()) + tgt.addService(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) + tgt.addCertificate(convertCapabilityStatementRestSecurityCertificateComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent convertCapabilityStatementRestSecurityComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityComponent(); + copyElement(src, tgt); + if (src.hasCors()) + tgt.setCors(src.getCors()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getService()) + tgt.addService(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent t : src.getCertificate()) + tgt.addCertificate(convertCapabilityStatementRestSecurityCertificateComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertCapabilityStatementRestSecurityCertificateComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent convertCapabilityStatementRestSecurityCertificateComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestSecurityCertificateComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasBlob()) + tgt.setBlob(src.getBlob()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertCapabilityStatementRestResourceComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertResourceInteractionComponent(t)); + if (src.hasVersioning()) + tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); + if (src.hasReadHistory()) + tgt.setReadHistory(src.getReadHistory()); + if (src.hasUpdateCreate()) + tgt.setUpdateCreate(src.getUpdateCreate()); + if (src.hasConditionalCreate()) + tgt.setConditionalCreate(src.getConditionalCreate()); + if (src.hasConditionalRead()) + tgt.setConditionalRead(convertConditionalReadStatus(src.getConditionalRead())); + if (src.hasConditionalUpdate()) + tgt.setConditionalUpdate(src.getConditionalUpdate()); + if (src.hasConditionalDelete()) + tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getReferencePolicy()) + tgt.addReferencePolicy(convertReferenceHandlingPolicy(t.getValue())); + for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchInclude()) + tgt.addSearchInclude(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getSearchRevInclude()) + tgt.addSearchRevInclude(t.getValue()); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertCapabilityStatementRestResourceSearchParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent convertCapabilityStatementRestResourceComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent t : src.getInteraction()) + tgt.addInteraction(convertResourceInteractionComponent(t)); + if (src.hasVersioning()) + tgt.setVersioning(convertResourceVersionPolicy(src.getVersioning())); + if (src.hasReadHistory()) + tgt.setReadHistory(src.getReadHistory()); + if (src.hasUpdateCreate()) + tgt.setUpdateCreate(src.getUpdateCreate()); + if (src.hasConditionalCreate()) + tgt.setConditionalCreate(src.getConditionalCreate()); + if (src.hasConditionalRead()) + tgt.setConditionalRead(convertConditionalReadStatus(src.getConditionalRead())); + if (src.hasConditionalUpdate()) + tgt.setConditionalUpdate(src.getConditionalUpdate()); + if (src.hasConditionalDelete()) + tgt.setConditionalDelete(convertConditionalDeleteStatus(src.getConditionalDelete())); + for (org.hl7.fhir.r4.model.Enumeration t : src.getReferencePolicy()) + tgt.addReferencePolicy(convertReferenceHandlingPolicy(t.getValue())); + for (org.hl7.fhir.r4.model.StringType t : src.getSearchInclude()) + tgt.addSearchInclude(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getSearchRevInclude()) + tgt.addSearchRevInclude(t.getValue()); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent t : src.getSearchParam()) + tgt.addSearchParam(convertCapabilityStatementRestResourceSearchParamComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOVERSION: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; + case VERSIONED: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; + case VERSIONEDUPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; + default: return org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy convertResourceVersionPolicy(org.hl7.fhir.r4.model.CapabilityStatement.ResourceVersionPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOVERSION: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NOVERSION; + case VERSIONED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONED; + case VERSIONEDUPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.VERSIONEDUPDATE; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceVersionPolicy.NULL; + } +} + + private static org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus convertConditionalReadStatus(org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus.NOTSUPPORTED; + case MODIFIEDSINCE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus.MODIFIEDSINCE; + case NOTMATCH: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus.NOTMATCH; + case FULLSUPPORT: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus.FULLSUPPORT; + default: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus convertConditionalReadStatus(org.hl7.fhir.r4.model.CapabilityStatement.ConditionalReadStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus.NOTSUPPORTED; + case MODIFIEDSINCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus.MODIFIEDSINCE; + case NOTMATCH: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus.NOTMATCH; + case FULLSUPPORT: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus.FULLSUPPORT; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalReadStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; + case SINGLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; + case MULTIPLE: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; + default: return org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus convertConditionalDeleteStatus(org.hl7.fhir.r4.model.CapabilityStatement.ConditionalDeleteStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NOTSUPPORTED; + case SINGLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.SINGLE; + case MULTIPLE: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.MULTIPLE; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ConditionalDeleteStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy convertReferenceHandlingPolicy(org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LITERAL: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.LITERAL; + case LOGICAL: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.LOGICAL; + case RESOLVES: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.RESOLVES; + case ENFORCED: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.ENFORCED; + case LOCAL: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.LOCAL; + default: return org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy convertReferenceHandlingPolicy(org.hl7.fhir.r4.model.CapabilityStatement.ReferenceHandlingPolicy src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LITERAL: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.LITERAL; + case LOGICAL: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.LOGICAL; + case RESOLVES: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.RESOLVES; + case ENFORCED: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.ENFORCED; + case LOCAL: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.LOCAL; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.ReferenceHandlingPolicy.NULL; + } +} + + public static org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertTypeRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent convertResourceInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.ResourceInteractionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.ResourceInteractionComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertTypeRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case READ: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.READ; + case VREAD: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.VREAD; + case UPDATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; + case PATCH: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.PATCH; + case DELETE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.DELETE; + case HISTORYINSTANCE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; + case HISTORYTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; + case CREATE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.CREATE; + case SEARCHTYPE: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; + default: return org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction convertTypeRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.TypeRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case READ: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.READ; + case VREAD: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.VREAD; + case UPDATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.UPDATE; + case PATCH: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.PATCH; + case DELETE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.DELETE; + case HISTORYINSTANCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYINSTANCE; + case HISTORYTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.HISTORYTYPE; + case CREATE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.CREATE; + case SEARCHTYPE: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.SEARCHTYPE; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.TypeRestfulInteraction.NULL; + } +} + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertCapabilityStatementRestResourceSearchParamComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasType()) + tgt.setType(convertSearchParamType(src.getType())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent convertCapabilityStatementRestResourceSearchParamComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestResourceSearchParamComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasType()) + tgt.setType(convertSearchParamType(src.getType())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.dstu3.model.Enumerations.SearchParamType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NUMBER: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NUMBER; + case DATE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.DATE; + case STRING: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.STRING; + case TOKEN: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.TOKEN; + case REFERENCE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.REFERENCE; + case COMPOSITE: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.COMPOSITE; + case QUANTITY: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.QUANTITY; + case URI: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.URI; + default: return org.hl7.fhir.r4.model.Enumerations.SearchParamType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Enumerations.SearchParamType convertSearchParamType(org.hl7.fhir.r4.model.Enumerations.SearchParamType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NUMBER: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NUMBER; + case DATE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.DATE; + case STRING: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.STRING; + case TOKEN: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.TOKEN; + case REFERENCE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.REFERENCE; + case COMPOSITE: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.COMPOSITE; + case QUANTITY: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.QUANTITY; + case URI: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.URI; + default: return org.hl7.fhir.dstu3.model.Enumerations.SearchParamType.NULL; + } +} + + public static org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertSystemRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent convertSystemInteractionComponent(org.hl7.fhir.r4.model.CapabilityStatement.SystemInteractionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.SystemInteractionComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertSystemRestfulInteraction(src.getCode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TRANSACTION: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; + case BATCH: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.BATCH; + case SEARCHSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; + case HISTORYSYSTEM: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; + default: return org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction convertSystemRestfulInteraction(org.hl7.fhir.r4.model.CapabilityStatement.SystemRestfulInteraction src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TRANSACTION: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.TRANSACTION; + case BATCH: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.BATCH; + case SEARCHSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.SEARCHSYSTEM; + case HISTORYSYSTEM: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.HISTORYSYSTEM; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.SystemRestfulInteraction.NULL; + } +} + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertCapabilityStatementRestOperationComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDefinition()) + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent convertCapabilityStatementRestOperationComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementRestOperationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementRestOperationComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDefinition()) + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent convertCapabilityStatementMessagingComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) + tgt.addEndpoint(convertCapabilityStatementMessagingEndpointComponent(t)); + if (src.hasReliableCache()) + tgt.setReliableCache(src.getReliableCache()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent t : src.getSupportedMessage()) + tgt.addSupportedMessage(convertCapabilityStatementMessagingSupportedMessageComponent(t)); + for (org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) + tgt.addEvent(convertCapabilityStatementMessagingEventComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent convertCapabilityStatementMessagingComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent t : src.getEndpoint()) + tgt.addEndpoint(convertCapabilityStatementMessagingEndpointComponent(t)); + if (src.hasReliableCache()) + tgt.setReliableCache(src.getReliableCache()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent t : src.getSupportedMessage()) + tgt.addSupportedMessage(convertCapabilityStatementMessagingSupportedMessageComponent(t)); + for (org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent t : src.getEvent()) + tgt.addEvent(convertCapabilityStatementMessagingEventComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertCapabilityStatementMessagingEndpointComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); + copyElement(src, tgt); + if (src.hasProtocol()) + tgt.setProtocol(convertCoding(src.getProtocol())); + if (src.hasAddress()) + tgt.setAddress(src.getAddress()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent convertCapabilityStatementMessagingEndpointComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEndpointComponent(); + copyElement(src, tgt); + if (src.hasProtocol()) + tgt.setProtocol(convertCoding(src.getProtocol())); + if (src.hasAddress()) + tgt.setAddress(src.getAddress()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent convertCapabilityStatementMessagingSupportedMessageComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent(); + copyElement(src, tgt); + if (src.hasMode()) + tgt.setMode(convertEventCapabilityMode(src.getMode())); + if (src.hasDefinition()) + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent convertCapabilityStatementMessagingSupportedMessageComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingSupportedMessageComponent(); + copyElement(src, tgt); + if (src.hasMode()) + tgt.setMode(convertEventCapabilityMode(src.getMode())); + if (src.hasDefinition()) + tgt.setDefinition(convertReference(src.getDefinition())); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode convertEventCapabilityMode(org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SENDER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.SENDER; + case RECEIVER: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.RECEIVER; + default: return org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode convertEventCapabilityMode(org.hl7.fhir.r4.model.CapabilityStatement.EventCapabilityMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SENDER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.SENDER; + case RECEIVER: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.RECEIVER; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.EventCapabilityMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertCapabilityStatementMessagingEventComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCoding(src.getCode())); + if (src.hasCategory()) + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + if (src.hasMode()) + tgt.setMode(convertEventCapabilityMode(src.getMode())); + if (src.hasFocus()) + tgt.setFocus(src.getFocus()); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent convertCapabilityStatementMessagingEventComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementMessagingEventComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementMessagingEventComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCoding(src.getCode())); + if (src.hasCategory()) + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + if (src.hasMode()) + tgt.setMode(convertEventCapabilityMode(src.getMode())); + if (src.hasFocus()) + tgt.setFocus(src.getFocus()); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.r4.model.CapabilityStatement.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.MessageSignificanceCategory.NULL; + } +} + + public static org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent convertCapabilityStatementDocumentComponent(org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent(); + copyElement(src, tgt); + if (src.hasMode()) + tgt.setMode(convertDocumentMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent convertCapabilityStatementDocumentComponent(org.hl7.fhir.r4.model.CapabilityStatement.CapabilityStatementDocumentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent tgt = new org.hl7.fhir.dstu3.model.CapabilityStatement.CapabilityStatementDocumentComponent(); + copyElement(src, tgt); + if (src.hasMode()) + tgt.setMode(convertDocumentMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + private static org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRODUCER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.PRODUCER; + case CONSUMER: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.CONSUMER; + default: return org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode convertDocumentMode(org.hl7.fhir.r4.model.CapabilityStatement.DocumentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRODUCER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.PRODUCER; + case CONSUMER: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.CONSUMER; + default: return org.hl7.fhir.dstu3.model.CapabilityStatement.DocumentMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.CarePlan convertCarePlan(org.hl7.fhir.dstu3.model.CarePlan src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CarePlan tgt = new org.hl7.fhir.r4.model.CarePlan(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertCarePlanStatus(src.getStatus())); + if (src.hasIntent()) + tgt.setIntent(convertCarePlanIntent(src.getIntent())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getCareTeam()) + tgt.addCareTeam(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAddresses()) + tgt.addAddresses(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInfo()) + tgt.addSupportingInfo(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) + tgt.addActivity(convertCarePlanActivityComponent(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CarePlan convertCarePlan(org.hl7.fhir.r4.model.CarePlan src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CarePlan tgt = new org.hl7.fhir.dstu3.model.CarePlan(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertCarePlanStatus(src.getStatus())); + if (src.hasIntent()) + tgt.setIntent(convertCarePlanIntent(src.getIntent())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getCareTeam()) + tgt.addCareTeam(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getAddresses()) + tgt.addAddresses(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInfo()) + tgt.addSupportingInfo(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + for (org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent t : src.getActivity()) + tgt.addActivity(convertCarePlanActivityComponent(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.SUSPENDED; + case COMPLETED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.ENTEREDINERROR; + case CANCELLED: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.CANCELLED; + case UNKNOWN: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.CarePlan.CarePlanStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus convertCarePlanStatus(org.hl7.fhir.r4.model.CarePlan.CarePlanStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.SUSPENDED; + case COMPLETED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.ENTEREDINERROR; + case CANCELLED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.CANCELLED; + case UNKNOWN: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.CarePlan.CarePlanIntent convertCarePlanIntent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSAL: return org.hl7.fhir.r4.model.CarePlan.CarePlanIntent.PROPOSAL; + case PLAN: return org.hl7.fhir.r4.model.CarePlan.CarePlanIntent.PLAN; + case ORDER: return org.hl7.fhir.r4.model.CarePlan.CarePlanIntent.ORDER; + case OPTION: return org.hl7.fhir.r4.model.CarePlan.CarePlanIntent.OPTION; + default: return org.hl7.fhir.r4.model.CarePlan.CarePlanIntent.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent convertCarePlanIntent(org.hl7.fhir.r4.model.CarePlan.CarePlanIntent src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSAL: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent.PROPOSAL; + case PLAN: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent.PLAN; + case ORDER: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent.ORDER; + case OPTION: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent.OPTION; + default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanIntent.NULL; + } +} + + public static org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getOutcomeCodeableConcept()) + tgt.addOutcomeCodeableConcept(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getOutcomeReference()) + tgt.addOutcomeReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getProgress()) + tgt.addProgress(convertAnnotation(t)); + if (src.hasReference()) + tgt.setReference(convertReference(src.getReference())); + if (src.hasDetail()) + tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent convertCarePlanActivityComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getOutcomeCodeableConcept()) + tgt.addOutcomeCodeableConcept(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getOutcomeReference()) + tgt.addOutcomeReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getProgress()) + tgt.addProgress(convertAnnotation(t)); + if (src.hasReference()) + tgt.setReference(convertReference(src.getReference())); + if (src.hasDetail()) + tgt.setDetail(convertCarePlanActivityDetailComponent(src.getDetail())); + return tgt; + } + + public static org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasDefinition()) + tgt.setDefinition(convertReference(src.getDefinition())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); + if (src.hasStatusReason()) + tgt.setStatusReason(src.getStatusReason()); + if (src.hasProhibited()) + tgt.setProhibited(src.getProhibited()); + if (src.hasScheduled()) + tgt.setScheduled(convertType(src.getScheduled())); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + if (src.hasProduct()) + tgt.setProduct(convertType(src.getProduct())); + if (src.hasDailyAmount()) + tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent convertCarePlanActivityDetailComponent(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent tgt = new org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityDetailComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasDefinition()) + tgt.setDefinition(convertReference(src.getDefinition())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getGoal()) + tgt.addGoal(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertCarePlanActivityStatus(src.getStatus())); + if (src.hasStatusReason()) + tgt.setStatusReason(src.getStatusReason()); + if (src.hasProhibited()) + tgt.setProhibited(src.getProhibited()); + if (src.hasScheduled()) + tgt.setScheduled(convertType(src.getScheduled())); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + if (src.hasProduct()) + tgt.setProduct(convertType(src.getProduct())); + if (src.hasDailyAmount()) + tgt.setDailyAmount(convertSimpleQuantity(src.getDailyAmount())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + private static org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSTARTED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; + case SCHEDULED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.SCHEDULED; + case INPROGRESS: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.CANCELLED; + case UNKNOWN: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus convertCarePlanActivityStatus(org.hl7.fhir.r4.model.CarePlan.CarePlanActivityStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTSTARTED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.NOTSTARTED; + case SCHEDULED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.SCHEDULED; + case INPROGRESS: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.CANCELLED; + case UNKNOWN: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.CarePlan.CarePlanActivityStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.CareTeam convertCareTeam(org.hl7.fhir.dstu3.model.CareTeam src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CareTeam tgt = new org.hl7.fhir.r4.model.CareTeam(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertCareTeamStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.CareTeam.CareTeamParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertCareTeamParticipantComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getManagingOrganization()) + tgt.addManagingOrganization(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CareTeam convertCareTeam(org.hl7.fhir.r4.model.CareTeam src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CareTeam tgt = new org.hl7.fhir.dstu3.model.CareTeam(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertCareTeamStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.CareTeam.CareTeamParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertCareTeamParticipantComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getManagingOrganization()) + tgt.addManagingOrganization(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CareTeam.CareTeamStatus convertCareTeamStatus(org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.PROPOSED; + case ACTIVE: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.SUSPENDED; + case INACTIVE: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.CareTeam.CareTeamStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus convertCareTeamStatus(org.hl7.fhir.r4.model.CareTeam.CareTeamStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.PROPOSED; + case ACTIVE: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.SUSPENDED; + case INACTIVE: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.CareTeam.CareTeamStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.CareTeam.CareTeamParticipantComponent convertCareTeamParticipantComponent(org.hl7.fhir.dstu3.model.CareTeam.CareTeamParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CareTeam.CareTeamParticipantComponent tgt = new org.hl7.fhir.r4.model.CareTeam.CareTeamParticipantComponent(); + copyElement(src, tgt); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasMember()) + tgt.setMember(convertReference(src.getMember())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CareTeam.CareTeamParticipantComponent convertCareTeamParticipantComponent(org.hl7.fhir.r4.model.CareTeam.CareTeamParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CareTeam.CareTeamParticipantComponent tgt = new org.hl7.fhir.dstu3.model.CareTeam.CareTeamParticipantComponent(); + copyElement(src, tgt); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasMember()) + tgt.setMember(convertReference(src.getMember())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ChargeItem convertChargeItem(org.hl7.fhir.dstu3.model.ChargeItem src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ChargeItem tgt = new org.hl7.fhir.r4.model.ChargeItem(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.dstu3.model.UriType t : src.getDefinition()) + tgt.addDefinition(t.getValue()); + if (src.hasStatus()) + tgt.setStatus(convertChargeItemStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + for (org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertChargeItemParticipantComponent(t)); + if (src.hasPerformingOrganization()) + tgt.setPerformingOrganization(convertReference(src.getPerformingOrganization())); + if (src.hasRequestingOrganization()) + tgt.setRequestingOrganization(convertReference(src.getRequestingOrganization())); + if (src.hasQuantity()) + tgt.setQuantity(convertQuantity(src.getQuantity())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodysite()) + tgt.addBodysite(convertCodeableConcept(t)); + if (src.hasFactorOverride()) + tgt.setFactorOverride(src.getFactorOverride()); + if (src.hasPriceOverride()) + tgt.setPriceOverride(convertMoney(src.getPriceOverride())); + if (src.hasOverrideReason()) + tgt.setOverrideReason(src.getOverrideReason()); + if (src.hasEnterer()) + tgt.setEnterer(convertReference(src.getEnterer())); + if (src.hasEnteredDate()) + tgt.setEnteredDate(src.getEnteredDate()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getService()) + tgt.addService(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAccount()) + tgt.addAccount(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInformation(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ChargeItem convertChargeItem(org.hl7.fhir.r4.model.ChargeItem src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ChargeItem tgt = new org.hl7.fhir.dstu3.model.ChargeItem(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.r4.model.UriType t : src.getDefinition()) + tgt.addDefinition(t.getValue()); + if (src.hasStatus()) + tgt.setStatus(convertChargeItemStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + for (org.hl7.fhir.r4.model.ChargeItem.ChargeItemParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertChargeItemParticipantComponent(t)); + if (src.hasPerformingOrganization()) + tgt.setPerformingOrganization(convertReference(src.getPerformingOrganization())); + if (src.hasRequestingOrganization()) + tgt.setRequestingOrganization(convertReference(src.getRequestingOrganization())); + if (src.hasQuantity()) + tgt.setQuantity(convertQuantity(src.getQuantity())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodysite()) + tgt.addBodysite(convertCodeableConcept(t)); + if (src.hasFactorOverride()) + tgt.setFactorOverride(src.getFactorOverride()); + if (src.hasPriceOverride()) + tgt.setPriceOverride(convertMoney(src.getPriceOverride())); + if (src.hasOverrideReason()) + tgt.setOverrideReason(src.getOverrideReason()); + if (src.hasEnterer()) + tgt.setEnterer(convertReference(src.getEnterer())); + if (src.hasEnteredDate()) + tgt.setEnteredDate(src.getEnteredDate()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getService()) + tgt.addService(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getAccount()) + tgt.addAccount(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInformation(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus convertChargeItemStatus(org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.PLANNED; + case BILLABLE: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.BILLABLE; + case NOTBILLABLE: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.NOTBILLABLE; + case ABORTED: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.ABORTED; + case BILLED: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.BILLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus convertChargeItemStatus(org.hl7.fhir.r4.model.ChargeItem.ChargeItemStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.PLANNED; + case BILLABLE: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.BILLABLE; + case NOTBILLABLE: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.NOTBILLABLE; + case ABORTED: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.ABORTED; + case BILLED: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.BILLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.ChargeItem.ChargeItemParticipantComponent convertChargeItemParticipantComponent(org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ChargeItem.ChargeItemParticipantComponent tgt = new org.hl7.fhir.r4.model.ChargeItem.ChargeItemParticipantComponent(); + copyElement(src, tgt); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemParticipantComponent convertChargeItemParticipantComponent(org.hl7.fhir.r4.model.ChargeItem.ChargeItemParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemParticipantComponent tgt = new org.hl7.fhir.dstu3.model.ChargeItem.ChargeItemParticipantComponent(); + copyElement(src, tgt); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim convertClaim(org.hl7.fhir.dstu3.model.Claim src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim tgt = new org.hl7.fhir.r4.model.Claim(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertClaimStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubType()) + tgt.addSubType(convertCodeableConcept(t)); + if (src.hasUse()) + tgt.setUse(convertUse(src.getUse())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasBillablePeriod()) + tgt.setBillablePeriod(convertPeriod(src.getBillablePeriod())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasEnterer()) + tgt.setEnterer(convertReference(src.getEnterer())); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasPriority()) + tgt.setPriority(convertCodeableConcept(src.getPriority())); + if (src.hasFundsReserve()) + tgt.setFundsReserve(convertCodeableConcept(src.getFundsReserve())); + for (org.hl7.fhir.dstu3.model.Claim.RelatedClaimComponent t : src.getRelated()) + tgt.addRelated(convertRelatedClaimComponent(t)); + if (src.hasPrescription()) + tgt.setPrescription(convertReference(src.getPrescription())); + if (src.hasOriginalPrescription()) + tgt.setOriginalPrescription(convertReference(src.getOriginalPrescription())); + if (src.hasPayee()) + tgt.setPayee(convertPayeeComponent(src.getPayee())); + if (src.hasReferral()) + tgt.setReferral(convertReference(src.getReferral())); + if (src.hasFacility()) + tgt.setFacility(convertReference(src.getFacility())); + for (org.hl7.fhir.dstu3.model.Claim.CareTeamComponent t : src.getCareTeam()) + tgt.addCareTeam(convertCareTeamComponent(t)); + for (org.hl7.fhir.dstu3.model.Claim.SpecialConditionComponent t : src.getInformation()) + tgt.addInformation(convertSpecialConditionComponent(t)); + for (org.hl7.fhir.dstu3.model.Claim.DiagnosisComponent t : src.getDiagnosis()) + tgt.addDiagnosis(convertDiagnosisComponent(t)); + for (org.hl7.fhir.dstu3.model.Claim.ProcedureComponent t : src.getProcedure()) + tgt.addProcedure(convertProcedureComponent(t)); + for (org.hl7.fhir.dstu3.model.Claim.InsuranceComponent t : src.getInsurance()) + tgt.addInsurance(convertInsuranceComponent(t)); + if (src.hasAccident()) + tgt.setAccident(convertAccidentComponent(src.getAccident())); + if (src.hasEmploymentImpacted()) + tgt.setEmploymentImpacted(convertPeriod(src.getEmploymentImpacted())); + if (src.hasHospitalization()) + tgt.setHospitalization(convertPeriod(src.getHospitalization())); + for (org.hl7.fhir.dstu3.model.Claim.ItemComponent t : src.getItem()) + tgt.addItem(convertItemComponent(t)); + if (src.hasTotal()) + tgt.setTotal(convertMoney(src.getTotal())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim convertClaim(org.hl7.fhir.r4.model.Claim src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim tgt = new org.hl7.fhir.dstu3.model.Claim(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertClaimStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubType()) + tgt.addSubType(convertCodeableConcept(t)); + if (src.hasUse()) + tgt.setUse(convertUse(src.getUse())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasBillablePeriod()) + tgt.setBillablePeriod(convertPeriod(src.getBillablePeriod())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasEnterer()) + tgt.setEnterer(convertReference(src.getEnterer())); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasPriority()) + tgt.setPriority(convertCodeableConcept(src.getPriority())); + if (src.hasFundsReserve()) + tgt.setFundsReserve(convertCodeableConcept(src.getFundsReserve())); + for (org.hl7.fhir.r4.model.Claim.RelatedClaimComponent t : src.getRelated()) + tgt.addRelated(convertRelatedClaimComponent(t)); + if (src.hasPrescription()) + tgt.setPrescription(convertReference(src.getPrescription())); + if (src.hasOriginalPrescription()) + tgt.setOriginalPrescription(convertReference(src.getOriginalPrescription())); + if (src.hasPayee()) + tgt.setPayee(convertPayeeComponent(src.getPayee())); + if (src.hasReferral()) + tgt.setReferral(convertReference(src.getReferral())); + if (src.hasFacility()) + tgt.setFacility(convertReference(src.getFacility())); + for (org.hl7.fhir.r4.model.Claim.CareTeamComponent t : src.getCareTeam()) + tgt.addCareTeam(convertCareTeamComponent(t)); + for (org.hl7.fhir.r4.model.Claim.SpecialConditionComponent t : src.getInformation()) + tgt.addInformation(convertSpecialConditionComponent(t)); + for (org.hl7.fhir.r4.model.Claim.DiagnosisComponent t : src.getDiagnosis()) + tgt.addDiagnosis(convertDiagnosisComponent(t)); + for (org.hl7.fhir.r4.model.Claim.ProcedureComponent t : src.getProcedure()) + tgt.addProcedure(convertProcedureComponent(t)); + for (org.hl7.fhir.r4.model.Claim.InsuranceComponent t : src.getInsurance()) + tgt.addInsurance(convertInsuranceComponent(t)); + if (src.hasAccident()) + tgt.setAccident(convertAccidentComponent(src.getAccident())); + if (src.hasEmploymentImpacted()) + tgt.setEmploymentImpacted(convertPeriod(src.getEmploymentImpacted())); + if (src.hasHospitalization()) + tgt.setHospitalization(convertPeriod(src.getHospitalization())); + for (org.hl7.fhir.r4.model.Claim.ItemComponent t : src.getItem()) + tgt.addItem(convertItemComponent(t)); + if (src.hasTotal()) + tgt.setTotal(convertMoney(src.getTotal())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Claim.ClaimStatus convertClaimStatus(org.hl7.fhir.dstu3.model.Claim.ClaimStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Claim.ClaimStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.Claim.ClaimStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.Claim.ClaimStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Claim.ClaimStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Claim.ClaimStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Claim.ClaimStatus convertClaimStatus(org.hl7.fhir.r4.model.Claim.ClaimStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Claim.ClaimStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.Claim.ClaimStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.Claim.ClaimStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Claim.ClaimStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Claim.ClaimStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.Claim.Use convertUse(org.hl7.fhir.dstu3.model.Claim.Use src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPLETE: return org.hl7.fhir.r4.model.Claim.Use.COMPLETE; + case PROPOSED: return org.hl7.fhir.r4.model.Claim.Use.PROPOSED; + case EXPLORATORY: return org.hl7.fhir.r4.model.Claim.Use.EXPLORATORY; + case OTHER: return org.hl7.fhir.r4.model.Claim.Use.OTHER; + default: return org.hl7.fhir.r4.model.Claim.Use.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Claim.Use convertUse(org.hl7.fhir.r4.model.Claim.Use src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPLETE: return org.hl7.fhir.dstu3.model.Claim.Use.COMPLETE; + case PROPOSED: return org.hl7.fhir.dstu3.model.Claim.Use.PROPOSED; + case EXPLORATORY: return org.hl7.fhir.dstu3.model.Claim.Use.EXPLORATORY; + case OTHER: return org.hl7.fhir.dstu3.model.Claim.Use.OTHER; + default: return org.hl7.fhir.dstu3.model.Claim.Use.NULL; + } +} + + public static org.hl7.fhir.r4.model.Claim.RelatedClaimComponent convertRelatedClaimComponent(org.hl7.fhir.dstu3.model.Claim.RelatedClaimComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.RelatedClaimComponent tgt = new org.hl7.fhir.r4.model.Claim.RelatedClaimComponent(); + copyElement(src, tgt); + if (src.hasClaim()) + tgt.setClaim(convertReference(src.getClaim())); + if (src.hasRelationship()) + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + if (src.hasReference()) + tgt.setReference(convertIdentifier(src.getReference())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.RelatedClaimComponent convertRelatedClaimComponent(org.hl7.fhir.r4.model.Claim.RelatedClaimComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.RelatedClaimComponent tgt = new org.hl7.fhir.dstu3.model.Claim.RelatedClaimComponent(); + copyElement(src, tgt); + if (src.hasClaim()) + tgt.setClaim(convertReference(src.getClaim())); + if (src.hasRelationship()) + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + if (src.hasReference()) + tgt.setReference(convertIdentifier(src.getReference())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim.PayeeComponent convertPayeeComponent(org.hl7.fhir.dstu3.model.Claim.PayeeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.PayeeComponent tgt = new org.hl7.fhir.r4.model.Claim.PayeeComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasResourceType()) + tgt.setResource(convertCoding(src.getResourceType())); + if (src.hasParty()) + tgt.setParty(convertReference(src.getParty())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.PayeeComponent convertPayeeComponent(org.hl7.fhir.r4.model.Claim.PayeeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.PayeeComponent tgt = new org.hl7.fhir.dstu3.model.Claim.PayeeComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasResource()) + tgt.setResourceType(convertCoding(src.getResource())); + if (src.hasParty()) + tgt.setParty(convertReference(src.getParty())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim.CareTeamComponent convertCareTeamComponent(org.hl7.fhir.dstu3.model.Claim.CareTeamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.CareTeamComponent tgt = new org.hl7.fhir.r4.model.Claim.CareTeamComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasResponsible()) + tgt.setResponsible(src.getResponsible()); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasQualification()) + tgt.setQualification(convertCodeableConcept(src.getQualification())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.CareTeamComponent convertCareTeamComponent(org.hl7.fhir.r4.model.Claim.CareTeamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.CareTeamComponent tgt = new org.hl7.fhir.dstu3.model.Claim.CareTeamComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasResponsible()) + tgt.setResponsible(src.getResponsible()); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasQualification()) + tgt.setQualification(convertCodeableConcept(src.getQualification())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim.SpecialConditionComponent convertSpecialConditionComponent(org.hl7.fhir.dstu3.model.Claim.SpecialConditionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.SpecialConditionComponent tgt = new org.hl7.fhir.r4.model.Claim.SpecialConditionComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.SpecialConditionComponent convertSpecialConditionComponent(org.hl7.fhir.r4.model.Claim.SpecialConditionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.SpecialConditionComponent tgt = new org.hl7.fhir.dstu3.model.Claim.SpecialConditionComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.dstu3.model.Claim.DiagnosisComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.DiagnosisComponent tgt = new org.hl7.fhir.r4.model.Claim.DiagnosisComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasDiagnosis()) + tgt.setDiagnosis(convertType(src.getDiagnosis())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasPackageCode()) + tgt.setPackageCode(convertCodeableConcept(src.getPackageCode())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.r4.model.Claim.DiagnosisComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.DiagnosisComponent tgt = new org.hl7.fhir.dstu3.model.Claim.DiagnosisComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasDiagnosis()) + tgt.setDiagnosis(convertType(src.getDiagnosis())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasPackageCode()) + tgt.setPackageCode(convertCodeableConcept(src.getPackageCode())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim.ProcedureComponent convertProcedureComponent(org.hl7.fhir.dstu3.model.Claim.ProcedureComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.ProcedureComponent tgt = new org.hl7.fhir.r4.model.Claim.ProcedureComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasProcedure()) + tgt.setProcedure(convertType(src.getProcedure())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.ProcedureComponent convertProcedureComponent(org.hl7.fhir.r4.model.Claim.ProcedureComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.ProcedureComponent tgt = new org.hl7.fhir.dstu3.model.Claim.ProcedureComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasProcedure()) + tgt.setProcedure(convertType(src.getProcedure())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.dstu3.model.Claim.InsuranceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.InsuranceComponent tgt = new org.hl7.fhir.r4.model.Claim.InsuranceComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasFocal()) + tgt.setFocal(src.getFocal()); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + if (src.hasBusinessArrangement()) + tgt.setBusinessArrangement(src.getBusinessArrangement()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getPreAuthRef()) + tgt.addPreAuthRef(t.getValue()); + if (src.hasClaimResponse()) + tgt.setClaimResponse(convertReference(src.getClaimResponse())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.r4.model.Claim.InsuranceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.InsuranceComponent tgt = new org.hl7.fhir.dstu3.model.Claim.InsuranceComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasFocal()) + tgt.setFocal(src.getFocal()); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + if (src.hasBusinessArrangement()) + tgt.setBusinessArrangement(src.getBusinessArrangement()); + for (org.hl7.fhir.r4.model.StringType t : src.getPreAuthRef()) + tgt.addPreAuthRef(t.getValue()); + if (src.hasClaimResponse()) + tgt.setClaimResponse(convertReference(src.getClaimResponse())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim.AccidentComponent convertAccidentComponent(org.hl7.fhir.dstu3.model.Claim.AccidentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.AccidentComponent tgt = new org.hl7.fhir.r4.model.Claim.AccidentComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasLocation()) + tgt.setLocation(convertType(src.getLocation())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.AccidentComponent convertAccidentComponent(org.hl7.fhir.r4.model.Claim.AccidentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.AccidentComponent tgt = new org.hl7.fhir.dstu3.model.Claim.AccidentComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasLocation()) + tgt.setLocation(convertType(src.getLocation())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim.ItemComponent convertItemComponent(org.hl7.fhir.dstu3.model.Claim.ItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.ItemComponent tgt = new org.hl7.fhir.r4.model.Claim.ItemComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getCareTeamLinkId()) + tgt.addCareTeamLinkId(t.getValue()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getDiagnosisLinkId()) + tgt.addDiagnosisLinkId(t.getValue()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getProcedureLinkId()) + tgt.addProcedureLinkId(t.getValue()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getInformationLinkId()) + tgt.addInformationLinkId(t.getValue()); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasServiced()) + tgt.setServiced(convertType(src.getServiced())); + if (src.hasLocation()) + tgt.setLocation(convertType(src.getLocation())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubSite()) + tgt.addSubSite(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEncounter()) + tgt.addEncounter(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Claim.DetailComponent t : src.getDetail()) + tgt.addDetail(convertDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.ItemComponent convertItemComponent(org.hl7.fhir.r4.model.Claim.ItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.ItemComponent tgt = new org.hl7.fhir.dstu3.model.Claim.ItemComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getCareTeamLinkId()) + tgt.addCareTeamLinkId(t.getValue()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getDiagnosisLinkId()) + tgt.addDiagnosisLinkId(t.getValue()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getProcedureLinkId()) + tgt.addProcedureLinkId(t.getValue()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getInformationLinkId()) + tgt.addInformationLinkId(t.getValue()); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasServiced()) + tgt.setServiced(convertType(src.getServiced())); + if (src.hasLocation()) + tgt.setLocation(convertType(src.getLocation())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubSite()) + tgt.addSubSite(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getEncounter()) + tgt.addEncounter(convertReference(t)); + for (org.hl7.fhir.r4.model.Claim.DetailComponent t : src.getDetail()) + tgt.addDetail(convertDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim.DetailComponent convertDetailComponent(org.hl7.fhir.dstu3.model.Claim.DetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.DetailComponent tgt = new org.hl7.fhir.r4.model.Claim.DetailComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Claim.SubDetailComponent t : src.getSubDetail()) + tgt.addSubDetail(convertSubDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.DetailComponent convertDetailComponent(org.hl7.fhir.r4.model.Claim.DetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.DetailComponent tgt = new org.hl7.fhir.dstu3.model.Claim.DetailComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + for (org.hl7.fhir.r4.model.Claim.SubDetailComponent t : src.getSubDetail()) + tgt.addSubDetail(convertSubDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Claim.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.dstu3.model.Claim.SubDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Claim.SubDetailComponent tgt = new org.hl7.fhir.r4.model.Claim.SubDetailComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Claim.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.r4.model.Claim.SubDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Claim.SubDetailComponent tgt = new org.hl7.fhir.dstu3.model.Claim.SubDetailComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ClaimResponse convertClaimResponse(org.hl7.fhir.dstu3.model.ClaimResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClaimResponse tgt = new org.hl7.fhir.r4.model.ClaimResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertClaimResponseStatus(src.getStatus())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasRequestProvider()) + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + if (src.hasRequestOrganization()) + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + if (src.hasPayeeType()) + tgt.setPayeeType(convertCodeableConcept(src.getPayeeType())); + for (org.hl7.fhir.dstu3.model.ClaimResponse.ItemComponent t : src.getItem()) + tgt.addItem(convertItemComponent(t)); + for (org.hl7.fhir.dstu3.model.ClaimResponse.AddedItemComponent t : src.getAddItem()) + tgt.addAddItem(convertAddedItemComponent(t)); + for (org.hl7.fhir.dstu3.model.ClaimResponse.ErrorComponent t : src.getError()) + tgt.addError(convertErrorComponent(t)); + if (src.hasTotalCost()) + tgt.setTotalCost(convertMoney(src.getTotalCost())); + if (src.hasUnallocDeductable()) + tgt.setUnallocDeductable(convertMoney(src.getUnallocDeductable())); + if (src.hasTotalBenefit()) + tgt.setTotalBenefit(convertMoney(src.getTotalBenefit())); + if (src.hasPayment()) + tgt.setPayment(convertPaymentComponent(src.getPayment())); + if (src.hasReserved()) + tgt.setReserved(convertCoding(src.getReserved())); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + for (org.hl7.fhir.dstu3.model.ClaimResponse.NoteComponent t : src.getProcessNote()) + tgt.addProcessNote(convertNoteComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getCommunicationRequest()) + tgt.addCommunicationRequest(convertReference(t)); + for (org.hl7.fhir.dstu3.model.ClaimResponse.InsuranceComponent t : src.getInsurance()) + tgt.addInsurance(convertInsuranceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClaimResponse convertClaimResponse(org.hl7.fhir.r4.model.ClaimResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClaimResponse tgt = new org.hl7.fhir.dstu3.model.ClaimResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertClaimResponseStatus(src.getStatus())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasRequestProvider()) + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + if (src.hasRequestOrganization()) + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + if (src.hasPayeeType()) + tgt.setPayeeType(convertCodeableConcept(src.getPayeeType())); + for (org.hl7.fhir.r4.model.ClaimResponse.ItemComponent t : src.getItem()) + tgt.addItem(convertItemComponent(t)); + for (org.hl7.fhir.r4.model.ClaimResponse.AddedItemComponent t : src.getAddItem()) + tgt.addAddItem(convertAddedItemComponent(t)); + for (org.hl7.fhir.r4.model.ClaimResponse.ErrorComponent t : src.getError()) + tgt.addError(convertErrorComponent(t)); + if (src.hasTotalCost()) + tgt.setTotalCost(convertMoney(src.getTotalCost())); + if (src.hasUnallocDeductable()) + tgt.setUnallocDeductable(convertMoney(src.getUnallocDeductable())); + if (src.hasTotalBenefit()) + tgt.setTotalBenefit(convertMoney(src.getTotalBenefit())); + if (src.hasPayment()) + tgt.setPayment(convertPaymentComponent(src.getPayment())); + if (src.hasReserved()) + tgt.setReserved(convertCoding(src.getReserved())); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + for (org.hl7.fhir.r4.model.ClaimResponse.NoteComponent t : src.getProcessNote()) + tgt.addProcessNote(convertNoteComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getCommunicationRequest()) + tgt.addCommunicationRequest(convertReference(t)); + for (org.hl7.fhir.r4.model.ClaimResponse.InsuranceComponent t : src.getInsurance()) + tgt.addInsurance(convertInsuranceComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus convertClaimResponseStatus(org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus convertClaimResponseStatus(org.hl7.fhir.r4.model.ClaimResponse.ClaimResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.ClaimResponse.ClaimResponseStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.ClaimResponse.ItemComponent convertItemComponent(org.hl7.fhir.dstu3.model.ClaimResponse.ItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClaimResponse.ItemComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.ItemComponent(); + copyElement(src, tgt); + if (src.hasSequenceLinkId()) + tgt.setSequenceLinkId(src.getSequenceLinkId()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + for (org.hl7.fhir.dstu3.model.ClaimResponse.ItemDetailComponent t : src.getDetail()) + tgt.addDetail(convertItemDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClaimResponse.ItemComponent convertItemComponent(org.hl7.fhir.r4.model.ClaimResponse.ItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClaimResponse.ItemComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.ItemComponent(); + copyElement(src, tgt); + if (src.hasSequenceLinkId()) + tgt.setSequenceLinkId(src.getSequenceLinkId()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + for (org.hl7.fhir.r4.model.ClaimResponse.ItemDetailComponent t : src.getDetail()) + tgt.addDetail(convertItemDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent convertAdjudicationComponent(org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + if (src.hasAmount()) + tgt.setAmount(convertMoney(src.getAmount())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent convertAdjudicationComponent(org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + if (src.hasAmount()) + tgt.setAmount(convertMoney(src.getAmount())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ClaimResponse.ItemDetailComponent convertItemDetailComponent(org.hl7.fhir.dstu3.model.ClaimResponse.ItemDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClaimResponse.ItemDetailComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.ItemDetailComponent(); + copyElement(src, tgt); + if (src.hasSequenceLinkId()) + tgt.setSequenceLinkId(src.getSequenceLinkId()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + for (org.hl7.fhir.dstu3.model.ClaimResponse.SubDetailComponent t : src.getSubDetail()) + tgt.addSubDetail(convertSubDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClaimResponse.ItemDetailComponent convertItemDetailComponent(org.hl7.fhir.r4.model.ClaimResponse.ItemDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClaimResponse.ItemDetailComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.ItemDetailComponent(); + copyElement(src, tgt); + if (src.hasSequenceLinkId()) + tgt.setSequenceLinkId(src.getSequenceLinkId()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + for (org.hl7.fhir.r4.model.ClaimResponse.SubDetailComponent t : src.getSubDetail()) + tgt.addSubDetail(convertSubDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ClaimResponse.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.dstu3.model.ClaimResponse.SubDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClaimResponse.SubDetailComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.SubDetailComponent(); + copyElement(src, tgt); + if (src.hasSequenceLinkId()) + tgt.setSequenceLinkId(src.getSequenceLinkId()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClaimResponse.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.r4.model.ClaimResponse.SubDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClaimResponse.SubDetailComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.SubDetailComponent(); + copyElement(src, tgt); + if (src.hasSequenceLinkId()) + tgt.setSequenceLinkId(src.getSequenceLinkId()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ClaimResponse.AddedItemComponent convertAddedItemComponent(org.hl7.fhir.dstu3.model.ClaimResponse.AddedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClaimResponse.AddedItemComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.AddedItemComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getSequenceLinkId()) + tgt.addSequenceLinkId(t.getValue()); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + if (src.hasFee()) + tgt.setFee(convertMoney(src.getFee())); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.dstu3.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClaimResponse.AddedItemComponent convertAddedItemComponent(org.hl7.fhir.r4.model.ClaimResponse.AddedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClaimResponse.AddedItemComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.AddedItemComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getSequenceLinkId()) + tgt.addSequenceLinkId(t.getValue()); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + if (src.hasFee()) + tgt.setFee(convertMoney(src.getFee())); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.r4.model.ClaimResponse.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + return tgt; + } + + + public static org.hl7.fhir.r4.model.ClaimResponse.ErrorComponent convertErrorComponent(org.hl7.fhir.dstu3.model.ClaimResponse.ErrorComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClaimResponse.ErrorComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.ErrorComponent(); + copyElement(src, tgt); + if (src.hasSequenceLinkId()) + tgt.setSequenceLinkId(src.getSequenceLinkId()); + if (src.hasDetailSequenceLinkId()) + tgt.setDetailSequenceLinkId(src.getDetailSequenceLinkId()); + if (src.hasSubdetailSequenceLinkId()) + tgt.setSubdetailSequenceLinkId(src.getSubdetailSequenceLinkId()); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClaimResponse.ErrorComponent convertErrorComponent(org.hl7.fhir.r4.model.ClaimResponse.ErrorComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClaimResponse.ErrorComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.ErrorComponent(); + copyElement(src, tgt); + if (src.hasSequenceLinkId()) + tgt.setSequenceLinkId(src.getSequenceLinkId()); + if (src.hasDetailSequenceLinkId()) + tgt.setDetailSequenceLinkId(src.getDetailSequenceLinkId()); + if (src.hasSubdetailSequenceLinkId()) + tgt.setSubdetailSequenceLinkId(src.getSubdetailSequenceLinkId()); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ClaimResponse.PaymentComponent convertPaymentComponent(org.hl7.fhir.dstu3.model.ClaimResponse.PaymentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClaimResponse.PaymentComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.PaymentComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasAdjustment()) + tgt.setAdjustment(convertMoney(src.getAdjustment())); + if (src.hasAdjustmentReason()) + tgt.setAdjustmentReason(convertCodeableConcept(src.getAdjustmentReason())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAmount()) + tgt.setAmount(convertMoney(src.getAmount())); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClaimResponse.PaymentComponent convertPaymentComponent(org.hl7.fhir.r4.model.ClaimResponse.PaymentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClaimResponse.PaymentComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.PaymentComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasAdjustment()) + tgt.setAdjustment(convertMoney(src.getAdjustment())); + if (src.hasAdjustmentReason()) + tgt.setAdjustmentReason(convertCodeableConcept(src.getAdjustmentReason())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAmount()) + tgt.setAmount(convertMoney(src.getAmount())); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ClaimResponse.NoteComponent convertNoteComponent(org.hl7.fhir.dstu3.model.ClaimResponse.NoteComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClaimResponse.NoteComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.NoteComponent(); + copyElement(src, tgt); + if (src.hasNumber()) + tgt.setNumber(src.getNumber()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasLanguage()) + tgt.setLanguage(convertCodeableConcept(src.getLanguage())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClaimResponse.NoteComponent convertNoteComponent(org.hl7.fhir.r4.model.ClaimResponse.NoteComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClaimResponse.NoteComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.NoteComponent(); + copyElement(src, tgt); + if (src.hasNumber()) + tgt.setNumber(src.getNumber()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasLanguage()) + tgt.setLanguage(convertCodeableConcept(src.getLanguage())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ClaimResponse.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.dstu3.model.ClaimResponse.InsuranceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClaimResponse.InsuranceComponent tgt = new org.hl7.fhir.r4.model.ClaimResponse.InsuranceComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasFocal()) + tgt.setFocal(src.getFocal()); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + if (src.hasBusinessArrangement()) + tgt.setBusinessArrangement(src.getBusinessArrangement()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getPreAuthRef()) + tgt.addPreAuthRef(t.getValue()); + if (src.hasClaimResponse()) + tgt.setClaimResponse(convertReference(src.getClaimResponse())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClaimResponse.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.r4.model.ClaimResponse.InsuranceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClaimResponse.InsuranceComponent tgt = new org.hl7.fhir.dstu3.model.ClaimResponse.InsuranceComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasFocal()) + tgt.setFocal(src.getFocal()); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + if (src.hasBusinessArrangement()) + tgt.setBusinessArrangement(src.getBusinessArrangement()); + for (org.hl7.fhir.r4.model.StringType t : src.getPreAuthRef()) + tgt.addPreAuthRef(t.getValue()); + if (src.hasClaimResponse()) + tgt.setClaimResponse(convertReference(src.getClaimResponse())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.dstu3.model.ClinicalImpression src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClinicalImpression tgt = new org.hl7.fhir.r4.model.ClinicalImpression(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasEffective()) + tgt.setEffective(convertType(src.getEffective())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAssessor()) + tgt.setAssessor(convertReference(src.getAssessor())); + if (src.hasPrevious()) + tgt.setPrevious(convertReference(src.getPrevious())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProblem()) + tgt.addProblem(convertReference(t)); + for (org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent t : src.getInvestigation()) + tgt.addInvestigation(convertClinicalImpressionInvestigationComponent(t)); + for (org.hl7.fhir.dstu3.model.UriType t : src.getProtocol()) + tgt.addProtocol(t.getValue()); + if (src.hasSummary()) + tgt.setSummary(src.getSummary()); + for (org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) + tgt.addFinding(convertClinicalImpressionFindingComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPrognosisCodeableConcept()) + tgt.addPrognosisCodeableConcept(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPrognosisReference()) + tgt.addPrognosisReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAction()) + tgt.addAction(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClinicalImpression convertClinicalImpression(org.hl7.fhir.r4.model.ClinicalImpression src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClinicalImpression tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertClinicalImpressionStatus(src.getStatus())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasEffective()) + tgt.setEffective(convertType(src.getEffective())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAssessor()) + tgt.setAssessor(convertReference(src.getAssessor())); + if (src.hasPrevious()) + tgt.setPrevious(convertReference(src.getPrevious())); + for (org.hl7.fhir.r4.model.Reference t : src.getProblem()) + tgt.addProblem(convertReference(t)); + for (org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent t : src.getInvestigation()) + tgt.addInvestigation(convertClinicalImpressionInvestigationComponent(t)); + for (org.hl7.fhir.r4.model.UriType t : src.getProtocol()) + tgt.addProtocol(t.getValue()); + if (src.hasSummary()) + tgt.setSummary(src.getSummary()); + for (org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent t : src.getFinding()) + tgt.addFinding(convertClinicalImpressionFindingComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPrognosisCodeableConcept()) + tgt.addPrognosisCodeableConcept(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPrognosisReference()) + tgt.addPrognosisReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getAction()) + tgt.addAction(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.DRAFT; + case COMPLETED: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus convertClinicalImpressionStatus(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.DRAFT; + case COMPLETED: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent convertClinicalImpressionInvestigationComponent(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent tgt = new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getItem()) + tgt.addItem(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent convertClinicalImpressionInvestigationComponent(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionInvestigationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionInvestigationComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.r4.model.Reference t : src.getItem()) + tgt.addItem(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent(); + copyElement(src, tgt); + if (src.hasItem()) + tgt.setItem(convertType(src.getItem())); + if (src.hasBasis()) + tgt.setBasis(src.getBasis()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent convertClinicalImpressionFindingComponent(org.hl7.fhir.r4.model.ClinicalImpression.ClinicalImpressionFindingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent tgt = new org.hl7.fhir.dstu3.model.ClinicalImpression.ClinicalImpressionFindingComponent(); + copyElement(src, tgt); + if (src.hasItem()) + tgt.setItem(convertType(src.getItem())); + if (src.hasBasis()) + tgt.setBasis(src.getBasis()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeSystem convertCodeSystem(org.hl7.fhir.dstu3.model.CodeSystem src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CodeSystem tgt = new org.hl7.fhir.r4.model.CodeSystem(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasCaseSensitive()) + tgt.setCaseSensitive(src.getCaseSensitive()); + if (src.hasValueSet()) + tgt.setValueSet(src.getValueSet()); + if (src.hasHierarchyMeaning()) + tgt.setHierarchyMeaning(convertCodeSystemHierarchyMeaning(src.getHierarchyMeaning())); + if (src.hasCompositional()) + tgt.setCompositional(src.getCompositional()); + if (src.hasVersionNeeded()) + tgt.setVersionNeeded(src.getVersionNeeded()); + if (src.hasContent()) + tgt.setContent(convertCodeSystemContentMode(src.getContent())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + for (org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) + tgt.addFilter(convertCodeSystemFilterComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent t : src.getProperty()) + tgt.addProperty(convertPropertyComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeSystem convertCodeSystem(org.hl7.fhir.r4.model.CodeSystem src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CodeSystem tgt = new org.hl7.fhir.dstu3.model.CodeSystem(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasCaseSensitive()) + tgt.setCaseSensitive(src.getCaseSensitive()); + if (src.hasValueSet()) + tgt.setValueSet(src.getValueSet()); + if (src.hasHierarchyMeaning()) + tgt.setHierarchyMeaning(convertCodeSystemHierarchyMeaning(src.getHierarchyMeaning())); + if (src.hasCompositional()) + tgt.setCompositional(src.getCompositional()); + if (src.hasVersionNeeded()) + tgt.setVersionNeeded(src.getVersionNeeded()); + if (src.hasContent()) + tgt.setContent(convertCodeSystemContentMode(src.getContent())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + for (org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent t : src.getFilter()) + tgt.addFilter(convertCodeSystemFilterComponent(t)); + for (org.hl7.fhir.r4.model.CodeSystem.PropertyComponent t : src.getProperty()) + tgt.addProperty(convertPropertyComponent(t)); + for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning convertCodeSystemHierarchyMeaning(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GROUPEDBY: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning.GROUPEDBY; + case ISA: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning.ISA; + case PARTOF: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning.PARTOF; + case CLASSIFIEDWITH: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning.CLASSIFIEDWITH; + default: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning convertCodeSystemHierarchyMeaning(org.hl7.fhir.r4.model.CodeSystem.CodeSystemHierarchyMeaning src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GROUPEDBY: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning.GROUPEDBY; + case ISA: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning.ISA; + case PARTOF: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning.PARTOF; + case CLASSIFIEDWITH: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning.CLASSIFIEDWITH; + default: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemHierarchyMeaning.NULL; + } +} + + private static org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTPRESENT: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; + case EXAMPLE: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.EXAMPLE; + case FRAGMENT: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.FRAGMENT; + case COMPLETE: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.COMPLETE; + default: return org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode convertCodeSystemContentMode(org.hl7.fhir.r4.model.CodeSystem.CodeSystemContentMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTPRESENT: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.NOTPRESENT; + case EXAMPLE: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.EXAMPLE; + case FRAGMENT: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.FRAGMENT; + case COMPLETE: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.COMPLETE; + default: return org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemContentMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getOperator()) + tgt.addOperator(convertFilterOperator(t.getValue())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent convertCodeSystemFilterComponent(org.hl7.fhir.r4.model.CodeSystem.CodeSystemFilterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.CodeSystemFilterComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.Enumeration t : src.getOperator()) + tgt.addOperator(convertFilterOperator(t.getValue())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.CodeSystem.FilterOperator convertFilterOperator(org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.ISA; + case DESCENDENTOF: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.DESCENDENTOF; + case ISNOTA: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.REGEX; + case IN: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.NOTIN; + case GENERALIZES: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.GENERALIZES; + case EXISTS: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.EXISTS; + default: return org.hl7.fhir.r4.model.CodeSystem.FilterOperator.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator convertFilterOperator(org.hl7.fhir.r4.model.CodeSystem.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.ISA; + case DESCENDENTOF: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.DESCENDENTOF; + case ISNOTA: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.REGEX; + case IN: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.NOTIN; + case GENERALIZES: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.GENERALIZES; + case EXISTS: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.EXISTS; + default: return org.hl7.fhir.dstu3.model.CodeSystem.FilterOperator.NULL; + } +} + + public static org.hl7.fhir.r4.model.CodeSystem.PropertyComponent convertPropertyComponent(org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CodeSystem.PropertyComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.PropertyComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasType()) + tgt.setType(convertPropertyType(src.getType())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent convertPropertyComponent(org.hl7.fhir.r4.model.CodeSystem.PropertyComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.PropertyComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasType()) + tgt.setType(convertPropertyType(src.getType())); + return tgt; + } + + private static org.hl7.fhir.r4.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.dstu3.model.CodeSystem.PropertyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODE: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.CODE; + case CODING: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.CODING; + case STRING: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.STRING; + case INTEGER: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.INTEGER; + case BOOLEAN: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.BOOLEAN; + case DATETIME: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.DATETIME; + default: return org.hl7.fhir.r4.model.CodeSystem.PropertyType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CodeSystem.PropertyType convertPropertyType(org.hl7.fhir.r4.model.CodeSystem.PropertyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODE: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.CODE; + case CODING: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.CODING; + case STRING: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.STRING; + case INTEGER: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.INTEGER; + case BOOLEAN: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.BOOLEAN; + case DATETIME: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.DATETIME; + default: return org.hl7.fhir.dstu3.model.CodeSystem.PropertyType.NULL; + } +} + + public static org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent t : src.getProperty()) + tgt.addProperty(convertConceptPropertyComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent convertConceptDefinitionComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptDefinitionDesignationComponent(t)); + for (org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent t : src.getProperty()) + tgt.addProperty(convertConceptPropertyComponent(t)); + for (org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionComponent t : src.getConcept()) + tgt.addConcept(convertConceptDefinitionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasUse()) + tgt.setUse(convertCoding(src.getUse())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent convertConceptDefinitionDesignationComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptDefinitionDesignationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptDefinitionDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasUse()) + tgt.setUse(convertCoding(src.getUse())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent tgt = new org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent convertConceptPropertyComponent(org.hl7.fhir.r4.model.CodeSystem.ConceptPropertyComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent tgt = new org.hl7.fhir.dstu3.model.CodeSystem.ConceptPropertyComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Communication convertCommunication(org.hl7.fhir.dstu3.model.Communication src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Communication tgt = new org.hl7.fhir.r4.model.Communication(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertCommunicationStatus(src.getStatus())); + if (src.hasNotDone()) + tgt.setNotDone(src.getNotDone()); + if (src.hasNotDoneReason()) + tgt.setNotDoneReason(convertCodeableConcept(src.getNotDoneReason())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getTopic()) + tgt.addTopic(convertReference(t)); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasSent()) + tgt.setSent(src.getSent()); + if (src.hasReceived()) + tgt.setReceived(src.getReceived()); + if (src.hasSender()) + tgt.setSender(convertReference(src.getSender())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationPayloadComponent(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Communication convertCommunication(org.hl7.fhir.r4.model.Communication src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Communication tgt = new org.hl7.fhir.dstu3.model.Communication(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertCommunicationStatus(src.getStatus())); + if (src.hasNotDone()) + tgt.setNotDone(src.getNotDone()); + if (src.hasNotDoneReason()) + tgt.setNotDoneReason(convertCodeableConcept(src.getNotDoneReason())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getTopic()) + tgt.addTopic(convertReference(t)); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasSent()) + tgt.setSent(src.getSent()); + if (src.hasReceived()) + tgt.setReceived(src.getReceived()); + if (src.hasSender()) + tgt.setSender(convertReference(src.getSender())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationPayloadComponent(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.dstu3.model.Communication.CommunicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PREPARATION: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.PREPARATION; + case INPROGRESS: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.INPROGRESS; + case SUSPENDED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.SUSPENDED; + case ABORTED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.ABORTED; + case COMPLETED: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.Communication.CommunicationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Communication.CommunicationStatus convertCommunicationStatus(org.hl7.fhir.r4.model.Communication.CommunicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PREPARATION: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.PREPARATION; + case INPROGRESS: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.INPROGRESS; + case SUSPENDED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.SUSPENDED; + case ABORTED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.ABORTED; + case COMPLETED: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Communication.CommunicationStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent(); + copyElement(src, tgt); + if (src.hasContent()) + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent convertCommunicationPayloadComponent(org.hl7.fhir.r4.model.Communication.CommunicationPayloadComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent tgt = new org.hl7.fhir.dstu3.model.Communication.CommunicationPayloadComponent(); + copyElement(src, tgt); + if (src.hasContent()) + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public static org.hl7.fhir.r4.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.dstu3.model.CommunicationRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CommunicationRequest tgt = new org.hl7.fhir.r4.model.CommunicationRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + if (src.hasGroupIdentifier()) + tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasPriority()) + tgt.setPriority(convertCommunicationPriority(src.getPriority())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getTopic()) + tgt.addTopic(convertReference(t)); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + for (org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasSender()) + tgt.setSender(convertReference(src.getSender())); + if (src.hasRequester()) + tgt.setRequester(convertCommunicationRequestRequesterComponent(src.getRequester())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CommunicationRequest convertCommunicationRequest(org.hl7.fhir.r4.model.CommunicationRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CommunicationRequest tgt = new org.hl7.fhir.dstu3.model.CommunicationRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + if (src.hasGroupIdentifier()) + tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertCommunicationRequestStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasPriority()) + tgt.setPriority(convertCommunicationPriority(src.getPriority())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getMedium()) + tgt.addMedium(convertCodeableConcept(t)); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getTopic()) + tgt.addTopic(convertReference(t)); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + for (org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent t : src.getPayload()) + tgt.addPayload(convertCommunicationRequestPayloadComponent(t)); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasSender()) + tgt.setSender(convertReference(src.getSender())); + if (src.hasRequester()) + tgt.setRequester(convertCommunicationRequestRequesterComponent(src.getRequester())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus convertCommunicationRequestStatus(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority convertCommunicationPriority(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.ROUTINE; + case URGENT: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.URGENT; + case ASAP: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.ASAP; + case STAT: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.STAT; + default: return org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority convertCommunicationPriority(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.ROUTINE; + case URGENT: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.URGENT; + case ASAP: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.ASAP; + case STAT: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.STAT; + default: return org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationPriority.NULL; + } +} + + public static org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent(); + copyElement(src, tgt); + if (src.hasContent()) + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent convertCommunicationRequestPayloadComponent(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestPayloadComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent tgt = new org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestPayloadComponent(); + copyElement(src, tgt); + if (src.hasContent()) + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public static org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestRequesterComponent convertCommunicationRequestRequesterComponent(org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestRequesterComponent convertCommunicationRequestRequesterComponent(org.hl7.fhir.r4.model.CommunicationRequest.CommunicationRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestRequesterComponent tgt = new org.hl7.fhir.dstu3.model.CommunicationRequest.CommunicationRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.r4.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.dstu3.model.CompartmentDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CompartmentDefinition tgt = new org.hl7.fhir.r4.model.CompartmentDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasCode()) + tgt.setCode(convertCompartmentType(src.getCode())); + if (src.hasSearch()) + tgt.setSearch(src.getSearch()); + for (org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) + tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CompartmentDefinition convertCompartmentDefinition(org.hl7.fhir.r4.model.CompartmentDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CompartmentDefinition tgt = new org.hl7.fhir.dstu3.model.CompartmentDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasCode()) + tgt.setCode(convertCompartmentType(src.getCode())); + if (src.hasSearch()) + tgt.setSearch(src.getSearch()); + for (org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent t : src.getResource()) + tgt.addResource(convertCompartmentDefinitionResourceComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.PATIENT; + case ENCOUNTER: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.ENCOUNTER; + case RELATEDPERSON: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; + case PRACTITIONER: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.DEVICE; + default: return org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType convertCompartmentType(org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.PATIENT; + case ENCOUNTER: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.ENCOUNTER; + case RELATEDPERSON: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.RELATEDPERSON; + case PRACTITIONER: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.DEVICE; + default: return org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentType.NULL; + } +} + + public static org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getParam()) + tgt.addParam(t.getValue()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent convertCompartmentDefinitionResourceComponent(org.hl7.fhir.r4.model.CompartmentDefinition.CompartmentDefinitionResourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent tgt = new org.hl7.fhir.dstu3.model.CompartmentDefinition.CompartmentDefinitionResourceComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + for (org.hl7.fhir.r4.model.StringType t : src.getParam()) + tgt.addParam(t.getValue()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Composition convertComposition(org.hl7.fhir.dstu3.model.Composition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Composition tgt = new org.hl7.fhir.r4.model.Composition(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertCompositionStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasClass_()) + tgt.setClass_(convertCodeableConcept(src.getClass_())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasConfidentiality()) + tgt.setConfidentiality(convertDocumentConfidentiality(src.getConfidentiality())); + for (org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent t : src.getAttester()) + tgt.addAttester(convertCompositionAttesterComponent(t)); + if (src.hasCustodian()) + tgt.setCustodian(convertReference(src.getCustodian())); + for (org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent t : src.getRelatesTo()) + tgt.addRelatesTo(convertCompositionRelatesToComponent(t)); + for (org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent t : src.getEvent()) + tgt.addEvent(convertCompositionEventComponent(t)); + for (org.hl7.fhir.dstu3.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Composition convertComposition(org.hl7.fhir.r4.model.Composition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Composition tgt = new org.hl7.fhir.dstu3.model.Composition(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertCompositionStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasClass_()) + tgt.setClass_(convertCodeableConcept(src.getClass_())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasConfidentiality()) + tgt.setConfidentiality(convertDocumentConfidentiality(src.getConfidentiality())); + for (org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent t : src.getAttester()) + tgt.addAttester(convertCompositionAttesterComponent(t)); + if (src.hasCustodian()) + tgt.setCustodian(convertReference(src.getCustodian())); + for (org.hl7.fhir.r4.model.Composition.CompositionRelatesToComponent t : src.getRelatesTo()) + tgt.addRelatesTo(convertCompositionRelatesToComponent(t)); + for (org.hl7.fhir.r4.model.Composition.CompositionEventComponent t : src.getEvent()) + tgt.addEvent(convertCompositionEventComponent(t)); + for (org.hl7.fhir.r4.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.dstu3.model.Composition.CompositionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRELIMINARY: return org.hl7.fhir.r4.model.Composition.CompositionStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.r4.model.Composition.CompositionStatus.FINAL; + case AMENDED: return org.hl7.fhir.r4.model.Composition.CompositionStatus.AMENDED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Composition.CompositionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Composition.CompositionStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Composition.CompositionStatus convertCompositionStatus(org.hl7.fhir.r4.model.Composition.CompositionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRELIMINARY: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.FINAL; + case AMENDED: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.AMENDED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Composition.CompositionStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.Composition.DocumentConfidentiality convertDocumentConfidentiality(org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case U: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.U; + case L: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.L; + case M: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.M; + case N: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.N; + case R: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.R; + case V: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.V; + default: return org.hl7.fhir.r4.model.Composition.DocumentConfidentiality.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality convertDocumentConfidentiality(org.hl7.fhir.r4.model.Composition.DocumentConfidentiality src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case U: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.U; + case L: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.L; + case M: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.M; + case N: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.N; + case R: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.R; + case V: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.V; + default: return org.hl7.fhir.dstu3.model.Composition.DocumentConfidentiality.NULL; + } +} + + public static org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getMode()) + tgt.addMode(convertCompositionAttestationMode(t.getValue())); + if (src.hasTime()) + tgt.setTime(src.getTime()); + if (src.hasParty()) + tgt.setParty(convertReference(src.getParty())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent convertCompositionAttesterComponent(org.hl7.fhir.r4.model.Composition.CompositionAttesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionAttesterComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Enumeration t : src.getMode()) + tgt.addMode(convertCompositionAttestationMode(t.getValue())); + if (src.hasTime()) + tgt.setTime(src.getTime()); + if (src.hasParty()) + tgt.setParty(convertReference(src.getParty())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSONAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.PERSONAL; + case PROFESSIONAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.PROFESSIONAL; + case LEGAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.LEGAL; + case OFFICIAL: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.OFFICIAL; + default: return org.hl7.fhir.r4.model.Composition.CompositionAttestationMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode convertCompositionAttestationMode(org.hl7.fhir.r4.model.Composition.CompositionAttestationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSONAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.PERSONAL; + case PROFESSIONAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.PROFESSIONAL; + case LEGAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.LEGAL; + case OFFICIAL: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.OFFICIAL; + default: return org.hl7.fhir.dstu3.model.Composition.CompositionAttestationMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.Composition.CompositionRelatesToComponent convertCompositionRelatesToComponent(org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Composition.CompositionRelatesToComponent tgt = new org.hl7.fhir.r4.model.Composition.CompositionRelatesToComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertDocumentRelationshipType(src.getCode())); + if (src.hasTarget()) + tgt.setTarget(convertType(src.getTarget())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent convertCompositionRelatesToComponent(org.hl7.fhir.r4.model.Composition.CompositionRelatesToComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionRelatesToComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertDocumentRelationshipType(src.getCode())); + if (src.hasTarget()) + tgt.setTarget(convertType(src.getTarget())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Composition.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACES: return org.hl7.fhir.r4.model.Composition.DocumentRelationshipType.REPLACES; + case TRANSFORMS: return org.hl7.fhir.r4.model.Composition.DocumentRelationshipType.TRANSFORMS; + case SIGNS: return org.hl7.fhir.r4.model.Composition.DocumentRelationshipType.SIGNS; + case APPENDS: return org.hl7.fhir.r4.model.Composition.DocumentRelationshipType.APPENDS; + default: return org.hl7.fhir.r4.model.Composition.DocumentRelationshipType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.r4.model.Composition.DocumentRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACES: return org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.REPLACES; + case TRANSFORMS: return org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.TRANSFORMS; + case SIGNS: return org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.SIGNS; + case APPENDS: return org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.APPENDS; + default: return org.hl7.fhir.dstu3.model.Composition.DocumentRelationshipType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.r4.model.Composition.CompositionEventComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent convertCompositionEventComponent(org.hl7.fhir.r4.model.Composition.CompositionEventComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent tgt = new org.hl7.fhir.dstu3.model.Composition.CompositionEventComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.dstu3.model.Composition.SectionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Composition.SectionComponent tgt = new org.hl7.fhir.r4.model.Composition.SectionComponent(); + copyElement(src, tgt); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasText()) + tgt.setText(convertNarrative(src.getText())); + if (src.hasMode()) + tgt.setMode(convertSectionMode(src.getMode())); + if (src.hasOrderedBy()) + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEntry()) + tgt.addEntry(convertReference(t)); + if (src.hasEmptyReason()) + tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); + for (org.hl7.fhir.dstu3.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Composition.SectionComponent convertSectionComponent(org.hl7.fhir.r4.model.Composition.SectionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Composition.SectionComponent tgt = new org.hl7.fhir.dstu3.model.Composition.SectionComponent(); + copyElement(src, tgt); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasText()) + tgt.setText(convertNarrative(src.getText())); + if (src.hasMode()) + tgt.setMode(convertSectionMode(src.getMode())); + if (src.hasOrderedBy()) + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + for (org.hl7.fhir.r4.model.Reference t : src.getEntry()) + tgt.addEntry(convertReference(t)); + if (src.hasEmptyReason()) + tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); + for (org.hl7.fhir.r4.model.Composition.SectionComponent t : src.getSection()) + tgt.addSection(convertSectionComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Composition.SectionMode convertSectionMode(org.hl7.fhir.dstu3.model.Composition.SectionMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case WORKING: return org.hl7.fhir.r4.model.Composition.SectionMode.WORKING; + case SNAPSHOT: return org.hl7.fhir.r4.model.Composition.SectionMode.SNAPSHOT; + case CHANGES: return org.hl7.fhir.r4.model.Composition.SectionMode.CHANGES; + default: return org.hl7.fhir.r4.model.Composition.SectionMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Composition.SectionMode convertSectionMode(org.hl7.fhir.r4.model.Composition.SectionMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case WORKING: return org.hl7.fhir.dstu3.model.Composition.SectionMode.WORKING; + case SNAPSHOT: return org.hl7.fhir.dstu3.model.Composition.SectionMode.SNAPSHOT; + case CHANGES: return org.hl7.fhir.dstu3.model.Composition.SectionMode.CHANGES; + default: return org.hl7.fhir.dstu3.model.Composition.SectionMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.ConceptMap convertConceptMap(org.hl7.fhir.dstu3.model.ConceptMap src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ConceptMap tgt = new org.hl7.fhir.r4.model.ConceptMap(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasSource()) + tgt.setSource(convertType(src.getSource())); + if (src.hasTarget()) + tgt.setTarget(convertType(src.getTarget())); + for (org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent t : src.getGroup()) + tgt.addGroup(convertConceptMapGroupComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ConceptMap convertConceptMap(org.hl7.fhir.r4.model.ConceptMap src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ConceptMap tgt = new org.hl7.fhir.dstu3.model.ConceptMap(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasSource()) + tgt.setSource(convertType(src.getSource())); + if (src.hasTarget()) + tgt.setTarget(convertType(src.getTarget())); + for (org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent t : src.getGroup()) + tgt.addGroup(convertConceptMapGroupComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent convertConceptMapGroupComponent(org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent(); + copyElement(src, tgt); + if (src.hasSource()) + tgt.setSource(src.getSource()); + if (src.hasSourceVersion()) + tgt.setSourceVersion(src.getSourceVersion()); + if (src.hasTarget()) + tgt.setTarget(src.getTarget()); + if (src.hasTargetVersion()) + tgt.setTargetVersion(src.getTargetVersion()); + for (org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent t : src.getElement()) + tgt.addElement(convertSourceElementComponent(t)); + if (src.hasUnmapped()) + tgt.setUnmapped(convertConceptMapGroupUnmappedComponent(src.getUnmapped())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent convertConceptMapGroupComponent(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupComponent(); + copyElement(src, tgt); + if (src.hasSource()) + tgt.setSource(src.getSource()); + if (src.hasSourceVersion()) + tgt.setSourceVersion(src.getSourceVersion()); + if (src.hasTarget()) + tgt.setTarget(src.getTarget()); + if (src.hasTargetVersion()) + tgt.setTargetVersion(src.getTargetVersion()); + for (org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent t : src.getElement()) + tgt.addElement(convertSourceElementComponent(t)); + if (src.hasUnmapped()) + tgt.setUnmapped(convertConceptMapGroupUnmappedComponent(src.getUnmapped())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent t : src.getTarget()) + tgt.addTarget(convertTargetElementComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent convertSourceElementComponent(org.hl7.fhir.r4.model.ConceptMap.SourceElementComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.SourceElementComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent t : src.getTarget()) + tgt.addTarget(convertTargetElementComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasEquivalence()) + tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); + if (src.hasComment()) + tgt.setComment(src.getComment()); + for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) + tgt.addDependsOn(convertOtherElementComponent(t)); + for (org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent t : src.getProduct()) + tgt.addProduct(convertOtherElementComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent convertTargetElementComponent(org.hl7.fhir.r4.model.ConceptMap.TargetElementComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.TargetElementComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasEquivalence()) + tgt.setEquivalence(convertConceptMapEquivalence(src.getEquivalence())); + if (src.hasComment()) + tgt.setComment(src.getComment()); + for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getDependsOn()) + tgt.addDependsOn(convertOtherElementComponent(t)); + for (org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent t : src.getProduct()) + tgt.addProduct(convertOtherElementComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RELATEDTO: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.RELATEDTO; + case EQUIVALENT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; + case EQUAL: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.EQUAL; + case WIDER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.WIDER; + case SUBSUMES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SUBSUMES; + case NARROWER: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NARROWER; + case SPECIALIZES: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; + case INEXACT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.INEXACT; + case UNMATCHED: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.UNMATCHED; + case DISJOINT: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.DISJOINT; + default: return org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence convertConceptMapEquivalence(org.hl7.fhir.r4.model.Enumerations.ConceptMapEquivalence src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RELATEDTO: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.RELATEDTO; + case EQUIVALENT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUIVALENT; + case EQUAL: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.EQUAL; + case WIDER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.WIDER; + case SUBSUMES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SUBSUMES; + case NARROWER: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NARROWER; + case SPECIALIZES: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.SPECIALIZES; + case INEXACT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.INEXACT; + case UNMATCHED: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.UNMATCHED; + case DISJOINT: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.DISJOINT; + default: return org.hl7.fhir.dstu3.model.Enumerations.ConceptMapEquivalence.NULL; + } +} + + public static org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent(); + copyElement(src, tgt); + if (src.hasProperty()) + tgt.setProperty(src.getProperty()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent convertOtherElementComponent(org.hl7.fhir.r4.model.ConceptMap.OtherElementComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.OtherElementComponent(); + copyElement(src, tgt); + if (src.hasProperty()) + tgt.setProperty(src.getProperty()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent convertConceptMapGroupUnmappedComponent(org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent tgt = new org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent(); + copyElement(src, tgt); + if (src.hasMode()) + tgt.setMode(convertConceptMapGroupUnmappedMode(src.getMode())); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedComponent convertConceptMapGroupUnmappedComponent(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedComponent tgt = new org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedComponent(); + copyElement(src, tgt); + if (src.hasMode()) + tgt.setMode(convertConceptMapGroupUnmappedMode(src.getMode())); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + private static org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode convertConceptMapGroupUnmappedMode(org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROVIDED: return org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.PROVIDED; + case FIXED: return org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.FIXED; + case OTHERMAP: return org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.OTHERMAP; + default: return org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode convertConceptMapGroupUnmappedMode(org.hl7.fhir.r4.model.ConceptMap.ConceptMapGroupUnmappedMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROVIDED: return org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode.PROVIDED; + case FIXED: return org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode.FIXED; + case OTHERMAP: return org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode.OTHERMAP; + default: return org.hl7.fhir.dstu3.model.ConceptMap.ConceptMapGroupUnmappedMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.Condition convertCondition(org.hl7.fhir.dstu3.model.Condition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Condition tgt = new org.hl7.fhir.r4.model.Condition(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasClinicalStatus()) + tgt.setClinicalStatus(convertConditionClinicalStatus(src.getClinicalStatus())); + if (src.hasVerificationStatus()) + tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasSeverity()) + tgt.setSeverity(convertCodeableConcept(src.getSeverity())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOnset()) + tgt.setOnset(convertType(src.getOnset())); + if (src.hasAbatement()) + tgt.setAbatement(convertType(src.getAbatement())); + if (src.hasAssertedDate()) + tgt.setAssertedDate(src.getAssertedDate()); + if (src.hasAsserter()) + tgt.setAsserter(convertReference(src.getAsserter())); + if (src.hasStage()) + tgt.addStage(convertConditionStageComponent(src.getStage())); + for (org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) + tgt.addEvidence(convertConditionEvidenceComponent(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Condition convertCondition(org.hl7.fhir.r4.model.Condition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Condition tgt = new org.hl7.fhir.dstu3.model.Condition(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasClinicalStatus()) + tgt.setClinicalStatus(convertConditionClinicalStatus(src.getClinicalStatus())); + if (src.hasVerificationStatus()) + tgt.setVerificationStatus(convertConditionVerificationStatus(src.getVerificationStatus())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasSeverity()) + tgt.setSeverity(convertCodeableConcept(src.getSeverity())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOnset()) + tgt.setOnset(convertType(src.getOnset())); + if (src.hasAbatement()) + tgt.setAbatement(convertType(src.getAbatement())); + if (src.hasAssertedDate()) + tgt.setAssertedDate(src.getAssertedDate()); + if (src.hasAsserter()) + tgt.setAsserter(convertReference(src.getAsserter())); + if (src.hasStage()) + tgt.setStage(convertConditionStageComponent(src.getStageFirstRep())); + for (org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent t : src.getEvidence()) + tgt.addEvidence(convertConditionEvidenceComponent(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus convertConditionClinicalStatus(org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.ACTIVE; + case RECURRENCE: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.RECURRENCE; + case INACTIVE: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.INACTIVE; + case REMISSION: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.REMISSION; + case RESOLVED: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.RESOLVED; + default: return org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus convertConditionClinicalStatus(org.hl7.fhir.r4.model.Condition.ConditionClinicalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.ACTIVE; + case RECURRENCE: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.RECURRENCE; + case INACTIVE: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.INACTIVE; + case REMISSION: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.REMISSION; + case RESOLVED: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.RESOLVED; + default: return org.hl7.fhir.dstu3.model.Condition.ConditionClinicalStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROVISIONAL: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.PROVISIONAL; + case DIFFERENTIAL: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; + case CONFIRMED: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.CONFIRMED; + case REFUTED: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.REFUTED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus convertConditionVerificationStatus(org.hl7.fhir.r4.model.Condition.ConditionVerificationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROVISIONAL: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.PROVISIONAL; + case DIFFERENTIAL: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.DIFFERENTIAL; + case CONFIRMED: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.CONFIRMED; + case REFUTED: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.REFUTED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Condition.ConditionVerificationStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.r4.model.Condition.ConditionStageComponent(); + copyElement(src, tgt); + if (src.hasSummary()) + tgt.setSummary(convertCodeableConcept(src.getSummary())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAssessment()) + tgt.addAssessment(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent convertConditionStageComponent(org.hl7.fhir.r4.model.Condition.ConditionStageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent tgt = new org.hl7.fhir.dstu3.model.Condition.ConditionStageComponent(); + copyElement(src, tgt); + if (src.hasSummary()) + tgt.setSummary(convertCodeableConcept(src.getSummary())); + for (org.hl7.fhir.r4.model.Reference t : src.getAssessment()) + tgt.addAssessment(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent convertConditionEvidenceComponent(org.hl7.fhir.r4.model.Condition.ConditionEvidenceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent tgt = new org.hl7.fhir.dstu3.model.Condition.ConditionEvidenceComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDetail()) + tgt.addDetail(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Consent convertConsent(org.hl7.fhir.dstu3.model.Consent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Consent tgt = new org.hl7.fhir.r4.model.Consent(); +// copyDomainResource(src, tgt); +// if (src.hasIdentifier()) +// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); +// if (src.hasStatus()) +// tgt.setStatus(convertConsentState(src.getStatus())); +// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) +// tgt.addCategory(convertCodeableConcept(t)); +// if (src.hasPatient()) +// tgt.setPatient(convertReference(src.getPatient())); +// if (src.hasPeriod()) +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// if (src.hasDateTime()) +// tgt.setDateTime(src.getDateTime()); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getConsentingParty()) +// tgt.addConsentingParty(convertReference(t)); +// for (org.hl7.fhir.dstu3.model.Consent.ConsentActorComponent t : src.getActor()) +// tgt.addActor(convertConsentActorComponent(t)); +// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAction()) +// tgt.addAction(convertCodeableConcept(t)); +// for (org.hl7.fhir.dstu3.model.Reference t : src.getOrganization()) +// tgt.addOrganization(convertReference(t)); +// if (src.hasSource()) +// tgt.setSource(convertType(src.getSource())); +// for (org.hl7.fhir.dstu3.model.Consent.ConsentPolicyComponent t : src.getPolicy()) +// tgt.addPolicy(convertConsentPolicyComponent(t)); +// if (src.hasPolicyRule()) +// tgt.setPolicyRule(src.getPolicyRule()); +// for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurityLabel()) +// tgt.addSecurityLabel(convertCoding(t)); +// for (org.hl7.fhir.dstu3.model.Coding t : src.getPurpose()) +// tgt.addPurpose(convertCoding(t)); +// if (src.hasDataPeriod()) +// tgt.setDataPeriod(convertPeriod(src.getDataPeriod())); +// for (org.hl7.fhir.dstu3.model.Consent.ConsentDataComponent t : src.getData()) +// tgt.addData(convertConsentDataComponent(t)); +// for (org.hl7.fhir.dstu3.model.Consent.ExceptComponent t : src.getExcept()) +// tgt.addExcept(convertExceptComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Consent convertConsent(org.hl7.fhir.r4.model.Consent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Consent tgt = new org.hl7.fhir.dstu3.model.Consent(); +// copyDomainResource(src, tgt); +// if (src.hasIdentifier()) +// tgt.setIdentifier(convertIdentifier(src.getIdentifier())); +// if (src.hasStatus()) +// tgt.setStatus(convertConsentState(src.getStatus())); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) +// tgt.addCategory(convertCodeableConcept(t)); +// if (src.hasPatient()) +// tgt.setPatient(convertReference(src.getPatient())); +// if (src.hasPeriod()) +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// if (src.hasDateTime()) +// tgt.setDateTime(src.getDateTime()); +// for (org.hl7.fhir.r4.model.Reference t : src.getConsentingParty()) +// tgt.addConsentingParty(convertReference(t)); +// for (org.hl7.fhir.r4.model.Consent.ConsentActorComponent t : src.getActor()) +// tgt.addActor(convertConsentActorComponent(t)); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAction()) +// tgt.addAction(convertCodeableConcept(t)); +// for (org.hl7.fhir.r4.model.Reference t : src.getOrganization()) +// tgt.addOrganization(convertReference(t)); +// if (src.hasSource()) +// tgt.setSource(convertType(src.getSource())); +// for (org.hl7.fhir.r4.model.Consent.ConsentPolicyComponent t : src.getPolicy()) +// tgt.addPolicy(convertConsentPolicyComponent(t)); +// if (src.hasPolicyRule()) +// tgt.setPolicyRule(src.getPolicyRule()); +// for (org.hl7.fhir.r4.model.Coding t : src.getSecurityLabel()) +// tgt.addSecurityLabel(convertCoding(t)); +// for (org.hl7.fhir.r4.model.Coding t : src.getPurpose()) +// tgt.addPurpose(convertCoding(t)); +// if (src.hasDataPeriod()) +// tgt.setDataPeriod(convertPeriod(src.getDataPeriod())); +// for (org.hl7.fhir.r4.model.Consent.ConsentDataComponent t : src.getData()) +// tgt.addData(convertConsentDataComponent(t)); +// for (org.hl7.fhir.r4.model.Consent.ExceptComponent t : src.getExcept()) +// tgt.addExcept(convertExceptComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Consent.ConsentState convertConsentState(org.hl7.fhir.dstu3.model.Consent.ConsentState src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.Consent.ConsentState.DRAFT; + case PROPOSED: return org.hl7.fhir.r4.model.Consent.ConsentState.PROPOSED; + case ACTIVE: return org.hl7.fhir.r4.model.Consent.ConsentState.ACTIVE; + case REJECTED: return org.hl7.fhir.r4.model.Consent.ConsentState.REJECTED; + case INACTIVE: return org.hl7.fhir.r4.model.Consent.ConsentState.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Consent.ConsentState.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Consent.ConsentState.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Consent.ConsentState convertConsentState(org.hl7.fhir.r4.model.Consent.ConsentState src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.Consent.ConsentState.DRAFT; + case PROPOSED: return org.hl7.fhir.dstu3.model.Consent.ConsentState.PROPOSED; + case ACTIVE: return org.hl7.fhir.dstu3.model.Consent.ConsentState.ACTIVE; + case REJECTED: return org.hl7.fhir.dstu3.model.Consent.ConsentState.REJECTED; + case INACTIVE: return org.hl7.fhir.dstu3.model.Consent.ConsentState.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Consent.ConsentState.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Consent.ConsentState.NULL; + } +} +// +// public static org.hl7.fhir.r4.model.Consent.ConsentActorComponent convertConsentActorComponent(org.hl7.fhir.dstu3.model.Consent.ConsentActorComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.r4.model.Consent.ConsentActorComponent tgt = new org.hl7.fhir.r4.model.Consent.ConsentActorComponent(); +// copyElement(src, tgt); +// if (src.hasRole()) +// tgt.setRole(convertCodeableConcept(src.getRole())); +// if (src.hasReference()) +// tgt.setReference(convertReference(src.getReference())); +// return tgt; +// } +// +// public static org.hl7.fhir.dstu3.model.Consent.ConsentActorComponent convertConsentActorComponent(org.hl7.fhir.r4.model.Consent.ConsentActorComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.dstu3.model.Consent.ConsentActorComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ConsentActorComponent(); +// copyElement(src, tgt); +// if (src.hasRole()) +// tgt.setRole(convertCodeableConcept(src.getRole())); +// if (src.hasReference()) +// tgt.setReference(convertReference(src.getReference())); +// return tgt; +// } + + public static org.hl7.fhir.r4.model.Consent.ConsentPolicyComponent convertConsentPolicyComponent(org.hl7.fhir.dstu3.model.Consent.ConsentPolicyComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Consent.ConsentPolicyComponent tgt = new org.hl7.fhir.r4.model.Consent.ConsentPolicyComponent(); + copyElement(src, tgt); + if (src.hasAuthority()) + tgt.setAuthority(src.getAuthority()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Consent.ConsentPolicyComponent convertConsentPolicyComponent(org.hl7.fhir.r4.model.Consent.ConsentPolicyComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Consent.ConsentPolicyComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ConsentPolicyComponent(); + copyElement(src, tgt); + if (src.hasAuthority()) + tgt.setAuthority(src.getAuthority()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + return tgt; + } +// +// public static org.hl7.fhir.r4.model.Consent.ConsentDataComponent convertConsentDataComponent(org.hl7.fhir.dstu3.model.Consent.ConsentDataComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.r4.model.Consent.ConsentDataComponent tgt = new org.hl7.fhir.r4.model.Consent.ConsentDataComponent(); +// copyElement(src, tgt); +// if (src.hasMeaning()) +// tgt.setMeaning(convertConsentDataMeaning(src.getMeaning())); +// if (src.hasReference()) +// tgt.setReference(convertReference(src.getReference())); +// return tgt; +// } +// +// public static org.hl7.fhir.dstu3.model.Consent.ConsentDataComponent convertConsentDataComponent(org.hl7.fhir.r4.model.Consent.ConsentDataComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.dstu3.model.Consent.ConsentDataComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ConsentDataComponent(); +// copyElement(src, tgt); +// if (src.hasMeaning()) +// tgt.setMeaning(convertConsentDataMeaning(src.getMeaning())); +// if (src.hasReference()) +// tgt.setReference(convertReference(src.getReference())); +// return tgt; +// } + + private static org.hl7.fhir.r4.model.Consent.ConsentDataMeaning convertConsentDataMeaning(org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.r4.model.Consent.ConsentDataMeaning.INSTANCE; + case RELATED: return org.hl7.fhir.r4.model.Consent.ConsentDataMeaning.RELATED; + case DEPENDENTS: return org.hl7.fhir.r4.model.Consent.ConsentDataMeaning.DEPENDENTS; + case AUTHOREDBY: return org.hl7.fhir.r4.model.Consent.ConsentDataMeaning.AUTHOREDBY; + default: return org.hl7.fhir.r4.model.Consent.ConsentDataMeaning.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning convertConsentDataMeaning(org.hl7.fhir.r4.model.Consent.ConsentDataMeaning src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning.INSTANCE; + case RELATED: return org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning.RELATED; + case DEPENDENTS: return org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning.DEPENDENTS; + case AUTHOREDBY: return org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning.AUTHOREDBY; + default: return org.hl7.fhir.dstu3.model.Consent.ConsentDataMeaning.NULL; + } +} + +// public static org.hl7.fhir.r4.model.Consent.ExceptComponent convertExceptComponent(org.hl7.fhir.dstu3.model.Consent.ExceptComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.r4.model.Consent.ExceptComponent tgt = new org.hl7.fhir.r4.model.Consent.ExceptComponent(); +// copyElement(src, tgt); +// if (src.hasType()) +// tgt.setType(convertConsentExceptType(src.getType())); +// if (src.hasPeriod()) +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// for (org.hl7.fhir.dstu3.model.Consent.ExceptActorComponent t : src.getActor()) +// tgt.addActor(convertExceptActorComponent(t)); +// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAction()) +// tgt.addAction(convertCodeableConcept(t)); +// for (org.hl7.fhir.dstu3.model.Coding t : src.getSecurityLabel()) +// tgt.addSecurityLabel(convertCoding(t)); +// for (org.hl7.fhir.dstu3.model.Coding t : src.getPurpose()) +// tgt.addPurpose(convertCoding(t)); +// for (org.hl7.fhir.dstu3.model.Coding t : src.getClass_()) +// tgt.addClass_(convertCoding(t)); +// for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) +// tgt.addCode(convertCoding(t)); +// if (src.hasDataPeriod()) +// tgt.setDataPeriod(convertPeriod(src.getDataPeriod())); +// for (org.hl7.fhir.dstu3.model.Consent.ExceptDataComponent t : src.getData()) +// tgt.addData(convertExceptDataComponent(t)); +// return tgt; +// } +// +// public static org.hl7.fhir.dstu3.model.Consent.ExceptComponent convertExceptComponent(org.hl7.fhir.r4.model.Consent.ExceptComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.dstu3.model.Consent.ExceptComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ExceptComponent(); +// copyElement(src, tgt); +// if (src.hasType()) +// tgt.setType(convertConsentExceptType(src.getType())); +// if (src.hasPeriod()) +// tgt.setPeriod(convertPeriod(src.getPeriod())); +// for (org.hl7.fhir.r4.model.Consent.ExceptActorComponent t : src.getActor()) +// tgt.addActor(convertExceptActorComponent(t)); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAction()) +// tgt.addAction(convertCodeableConcept(t)); +// for (org.hl7.fhir.r4.model.Coding t : src.getSecurityLabel()) +// tgt.addSecurityLabel(convertCoding(t)); +// for (org.hl7.fhir.r4.model.Coding t : src.getPurpose()) +// tgt.addPurpose(convertCoding(t)); +// for (org.hl7.fhir.r4.model.Coding t : src.getClass_()) +// tgt.addClass_(convertCoding(t)); +// for (org.hl7.fhir.r4.model.Coding t : src.getCode()) +// tgt.addCode(convertCoding(t)); +// if (src.hasDataPeriod()) +// tgt.setDataPeriod(convertPeriod(src.getDataPeriod())); +// for (org.hl7.fhir.r4.model.Consent.ExceptDataComponent t : src.getData()) +// tgt.addData(convertExceptDataComponent(t)); +// return tgt; +// } +// +// private static org.hl7.fhir.r4.model.Consent.ConsentExceptType convertConsentExceptType(org.hl7.fhir.dstu3.model.Consent.ConsentExceptType src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case DENY: return org.hl7.fhir.r4.model.Consent.ConsentExceptType.DENY; +// case PERMIT: return org.hl7.fhir.r4.model.Consent.ConsentExceptType.PERMIT; +// default: return org.hl7.fhir.r4.model.Consent.ConsentExceptType.NULL; +// } +//} +// +// private static org.hl7.fhir.dstu3.model.Consent.ConsentExceptType convertConsentExceptType(org.hl7.fhir.r4.model.Consent.ConsentExceptType src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case DENY: return org.hl7.fhir.dstu3.model.Consent.ConsentExceptType.DENY; +// case PERMIT: return org.hl7.fhir.dstu3.model.Consent.ConsentExceptType.PERMIT; +// default: return org.hl7.fhir.dstu3.model.Consent.ConsentExceptType.NULL; +// } +//} +// +// public static org.hl7.fhir.r4.model.Consent.ExceptActorComponent convertExceptActorComponent(org.hl7.fhir.dstu3.model.Consent.ExceptActorComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.r4.model.Consent.ExceptActorComponent tgt = new org.hl7.fhir.r4.model.Consent.ExceptActorComponent(); +// copyElement(src, tgt); +// if (src.hasRole()) +// tgt.setRole(convertCodeableConcept(src.getRole())); +// if (src.hasReference()) +// tgt.setReference(convertReference(src.getReference())); +// return tgt; +// } +// +// public static org.hl7.fhir.dstu3.model.Consent.ExceptActorComponent convertExceptActorComponent(org.hl7.fhir.r4.model.Consent.ExceptActorComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.dstu3.model.Consent.ExceptActorComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ExceptActorComponent(); +// copyElement(src, tgt); +// if (src.hasRole()) +// tgt.setRole(convertCodeableConcept(src.getRole())); +// if (src.hasReference()) +// tgt.setReference(convertReference(src.getReference())); +// return tgt; +// } +// +// public static org.hl7.fhir.r4.model.Consent.ExceptDataComponent convertExceptDataComponent(org.hl7.fhir.dstu3.model.Consent.ExceptDataComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.r4.model.Consent.ExceptDataComponent tgt = new org.hl7.fhir.r4.model.Consent.ExceptDataComponent(); +// copyElement(src, tgt); +// if (src.hasMeaning()) +// tgt.setMeaning(convertConsentDataMeaning(src.getMeaning())); +// if (src.hasReference()) +// tgt.setReference(convertReference(src.getReference())); +// return tgt; +// } +// +// public static org.hl7.fhir.dstu3.model.Consent.ExceptDataComponent convertExceptDataComponent(org.hl7.fhir.r4.model.Consent.ExceptDataComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.dstu3.model.Consent.ExceptDataComponent tgt = new org.hl7.fhir.dstu3.model.Consent.ExceptDataComponent(); +// copyElement(src, tgt); +// if (src.hasMeaning()) +// tgt.setMeaning(convertConsentDataMeaning(src.getMeaning())); +// if (src.hasReference()) +// tgt.setReference(convertReference(src.getReference())); +// return tgt; +// } + + public static org.hl7.fhir.r4.model.Contract convertContract(org.hl7.fhir.dstu3.model.Contract src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contract tgt = new org.hl7.fhir.r4.model.Contract(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertContractStatus(src.getStatus())); + if (src.hasIssued()) + tgt.setIssued(src.getIssued()); + if (src.hasApplies()) + tgt.setApplies(convertPeriod(src.getApplies())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSubject()) + tgt.addSubject(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthority()) + tgt.addAuthority(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDomain()) + tgt.addDomain(convertReference(t)); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubType()) + tgt.addSubType(convertCodeableConcept(t)); + if (src.hasContentDerivative()) + tgt.setContentDerivative(convertCodeableConcept(src.getContentDerivative())); + for (org.hl7.fhir.dstu3.model.Contract.SignatoryComponent t : src.getSigner()) + tgt.addSigner(convertSignatoryComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.TermComponent t : src.getTerm()) + tgt.addTerm(convertTermComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) + tgt.addFriendly(convertFriendlyLanguageComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent t : src.getLegal()) + tgt.addLegal(convertLegalLanguageComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent t : src.getRule()) + tgt.setRule(convertComputableLanguageComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contract convertContract(org.hl7.fhir.r4.model.Contract src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contract tgt = new org.hl7.fhir.dstu3.model.Contract(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertContractStatus(src.getStatus())); + if (src.hasIssued()) + tgt.setIssued(src.getIssued()); + if (src.hasApplies()) + tgt.setApplies(convertPeriod(src.getApplies())); + for (org.hl7.fhir.r4.model.Reference t : src.getSubject()) + tgt.addSubject(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthority()) + tgt.addAuthority(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDomain()) + tgt.addDomain(convertReference(t)); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubType()) + tgt.addSubType(convertCodeableConcept(t)); + if (src.hasContentDerivative()) + tgt.setContentDerivative(convertCodeableConcept(src.getContentDerivative())); + for (org.hl7.fhir.r4.model.Contract.SignatoryComponent t : src.getSigner()) + tgt.addSigner(convertSignatoryComponent(t)); + for (org.hl7.fhir.r4.model.Contract.TermComponent t : src.getTerm()) + tgt.addTerm(convertTermComponent(t)); + for (org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent t : src.getFriendly()) + tgt.addFriendly(convertFriendlyLanguageComponent(t)); + for (org.hl7.fhir.r4.model.Contract.LegalLanguageComponent t : src.getLegal()) + tgt.addLegal(convertLegalLanguageComponent(t)); + if (src.hasRule()) + tgt.addRule(convertComputableLanguageComponent(src.getRule())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Contract.ContractStatus convertContractStatus(org.hl7.fhir.dstu3.model.Contract.ContractStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case AMENDED: return org.hl7.fhir.r4.model.Contract.ContractStatus.AMENDED; + case APPENDED: return org.hl7.fhir.r4.model.Contract.ContractStatus.APPENDED; + case CANCELLED: return org.hl7.fhir.r4.model.Contract.ContractStatus.CANCELLED; + case DISPUTED: return org.hl7.fhir.r4.model.Contract.ContractStatus.DISPUTED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Contract.ContractStatus.ENTEREDINERROR; + case EXECUTABLE: return org.hl7.fhir.r4.model.Contract.ContractStatus.EXECUTABLE; + case EXECUTED: return org.hl7.fhir.r4.model.Contract.ContractStatus.EXECUTED; + case NEGOTIABLE: return org.hl7.fhir.r4.model.Contract.ContractStatus.NEGOTIABLE; + case OFFERED: return org.hl7.fhir.r4.model.Contract.ContractStatus.OFFERED; + case POLICY: return org.hl7.fhir.r4.model.Contract.ContractStatus.POLICY; + case REJECTED: return org.hl7.fhir.r4.model.Contract.ContractStatus.REJECTED; + case RENEWED: return org.hl7.fhir.r4.model.Contract.ContractStatus.RENEWED; + case REVOKED: return org.hl7.fhir.r4.model.Contract.ContractStatus.REVOKED; + case RESOLVED: return org.hl7.fhir.r4.model.Contract.ContractStatus.RESOLVED; + case TERMINATED: return org.hl7.fhir.r4.model.Contract.ContractStatus.TERMINATED; + default: return org.hl7.fhir.r4.model.Contract.ContractStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Contract.ContractStatus convertContractStatus(org.hl7.fhir.r4.model.Contract.ContractStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case AMENDED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.AMENDED; + case APPENDED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.APPENDED; + case CANCELLED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.CANCELLED; + case DISPUTED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.DISPUTED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.ENTEREDINERROR; + case EXECUTABLE: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.EXECUTABLE; + case EXECUTED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.EXECUTED; + case NEGOTIABLE: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.NEGOTIABLE; + case OFFERED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.OFFERED; + case POLICY: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.POLICY; + case REJECTED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.REJECTED; + case RENEWED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.RENEWED; + case REVOKED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.REVOKED; + case RESOLVED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.RESOLVED; + case TERMINATED: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.TERMINATED; + default: return org.hl7.fhir.dstu3.model.Contract.ContractStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Contract.AgentComponent convertAgentComponent(org.hl7.fhir.dstu3.model.Contract.AgentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contract.AgentComponent tgt = new org.hl7.fhir.r4.model.Contract.AgentComponent(); + copyElement(src, tgt); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contract.AgentComponent convertAgentComponent(org.hl7.fhir.r4.model.Contract.AgentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contract.AgentComponent tgt = new org.hl7.fhir.dstu3.model.Contract.AgentComponent(); + copyElement(src, tgt); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.dstu3.model.Contract.SignatoryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.r4.model.Contract.SignatoryComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + if (src.hasParty()) + tgt.setParty(convertReference(src.getParty())); + for (org.hl7.fhir.dstu3.model.Signature t : src.getSignature()) + tgt.addSignature(convertSignature(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contract.SignatoryComponent convertSignatoryComponent(org.hl7.fhir.r4.model.Contract.SignatoryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contract.SignatoryComponent tgt = new org.hl7.fhir.dstu3.model.Contract.SignatoryComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + if (src.hasParty()) + tgt.setParty(convertReference(src.getParty())); + for (org.hl7.fhir.r4.model.Signature t : src.getSignature()) + tgt.addSignature(convertSignature(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.r4.model.Contract.ValuedItemComponent(); + copyElement(src, tgt); + if (src.hasEntity()) + tgt.setEntity(convertType(src.getEntity())); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasEffectiveTime()) + tgt.setEffectiveTime(src.getEffectiveTime()); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasPoints()) + tgt.setPoints(src.getPoints()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent convertValuedItemComponent(org.hl7.fhir.r4.model.Contract.ValuedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.dstu3.model.Contract.ValuedItemComponent(); + copyElement(src, tgt); + if (src.hasEntity()) + tgt.setEntity(convertType(src.getEntity())); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasEffectiveTime()) + tgt.setEffectiveTime(src.getEffectiveTime()); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasPoints()) + tgt.setPoints(src.getPoints()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.dstu3.model.Contract.TermComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contract.TermComponent tgt = new org.hl7.fhir.r4.model.Contract.TermComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasIssued()) + tgt.setIssued(src.getIssued()); + if (src.hasApplies()) + tgt.setApplies(convertPeriod(src.getApplies())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSubType()) + tgt.setSubType(convertCodeableConcept(src.getSubType())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAction()) + tgt.addAction(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getActionReason()) + tgt.addActionReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Contract.TermAgentComponent t : src.getAgent()) + tgt.addAgent(convertTermAgentComponent(t)); + for (org.hl7.fhir.dstu3.model.Contract.TermComponent t : src.getGroup()) + tgt.addGroup(convertTermComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contract.TermComponent convertTermComponent(org.hl7.fhir.r4.model.Contract.TermComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contract.TermComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasIssued()) + tgt.setIssued(src.getIssued()); + if (src.hasApplies()) + tgt.setApplies(convertPeriod(src.getApplies())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSubType()) + tgt.setSubType(convertCodeableConcept(src.getSubType())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAction()) + tgt.addAction(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getActionReason()) + tgt.addActionReason(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Contract.AgentComponent t : src.getAgent()) + tgt.addAgent(convertTermAgentComponent(t)); + for (org.hl7.fhir.r4.model.Contract.TermComponent t : src.getGroup()) + tgt.addGroup(convertTermComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Contract.AgentComponent convertTermAgentComponent(org.hl7.fhir.dstu3.model.Contract.TermAgentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contract.AgentComponent tgt = new org.hl7.fhir.r4.model.Contract.AgentComponent(); + copyElement(src, tgt); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contract.TermAgentComponent convertTermAgentComponent(org.hl7.fhir.r4.model.Contract.AgentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contract.TermAgentComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermAgentComponent(); + copyElement(src, tgt); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Contract.ValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contract.ValuedItemComponent tgt = new org.hl7.fhir.r4.model.Contract.ValuedItemComponent(); + copyElement(src, tgt); + if (src.hasEntity()) + tgt.setEntity(convertType(src.getEntity())); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasEffectiveTime()) + tgt.setEffectiveTime(src.getEffectiveTime()); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasPoints()) + tgt.setPoints(src.getPoints()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent convertTermValuedItemComponent(org.hl7.fhir.r4.model.Contract.ValuedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent tgt = new org.hl7.fhir.dstu3.model.Contract.TermValuedItemComponent(); + copyElement(src, tgt); + if (src.hasEntity()) + tgt.setEntity(convertType(src.getEntity())); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasEffectiveTime()) + tgt.setEffectiveTime(src.getEffectiveTime()); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasPoints()) + tgt.setPoints(src.getPoints()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent(); + copyElement(src, tgt); + if (src.hasContent()) + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent convertFriendlyLanguageComponent(org.hl7.fhir.r4.model.Contract.FriendlyLanguageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.FriendlyLanguageComponent(); + copyElement(src, tgt); + if (src.hasContent()) + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.LegalLanguageComponent(); + copyElement(src, tgt); + if (src.hasContent()) + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent convertLegalLanguageComponent(org.hl7.fhir.r4.model.Contract.LegalLanguageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.LegalLanguageComponent(); + copyElement(src, tgt); + if (src.hasContent()) + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent(); + copyElement(src, tgt); + if (src.hasContent()) + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent convertComputableLanguageComponent(org.hl7.fhir.r4.model.Contract.ComputableLanguageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent tgt = new org.hl7.fhir.dstu3.model.Contract.ComputableLanguageComponent(); + copyElement(src, tgt); + if (src.hasContent()) + tgt.setContent(convertType(src.getContent())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Coverage convertCoverage(org.hl7.fhir.dstu3.model.Coverage src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Coverage tgt = new org.hl7.fhir.r4.model.Coverage(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertCoverageStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasPolicyHolder()) + tgt.setPolicyHolder(convertReference(src.getPolicyHolder())); + if (src.hasSubscriber()) + tgt.setSubscriber(convertReference(src.getSubscriber())); + if (src.hasSubscriberId()) + tgt.setSubscriberId(src.getSubscriberId()); + if (src.hasBeneficiary()) + tgt.setBeneficiary(convertReference(src.getBeneficiary())); + if (src.hasRelationship()) + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPayor()) + tgt.addPayor(convertReference(t)); + if (src.hasGrouping()) + tgt.setGrouping(convertGroupComponent(src.getGrouping())); + if (src.hasDependent()) + tgt.setDependent(src.getDependent()); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasOrder()) + tgt.setOrder(src.getOrder()); + if (src.hasNetwork()) + tgt.setNetwork(src.getNetwork()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getContract()) + tgt.addContract(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Coverage convertCoverage(org.hl7.fhir.r4.model.Coverage src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Coverage tgt = new org.hl7.fhir.dstu3.model.Coverage(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertCoverageStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasPolicyHolder()) + tgt.setPolicyHolder(convertReference(src.getPolicyHolder())); + if (src.hasSubscriber()) + tgt.setSubscriber(convertReference(src.getSubscriber())); + if (src.hasSubscriberId()) + tgt.setSubscriberId(src.getSubscriberId()); + if (src.hasBeneficiary()) + tgt.setBeneficiary(convertReference(src.getBeneficiary())); + if (src.hasRelationship()) + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.Reference t : src.getPayor()) + tgt.addPayor(convertReference(t)); + if (src.hasGrouping()) + tgt.setGrouping(convertGroupComponent(src.getGrouping())); + if (src.hasDependent()) + tgt.setDependent(src.getDependent()); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasOrder()) + tgt.setOrder(src.getOrder()); + if (src.hasNetwork()) + tgt.setNetwork(src.getNetwork()); + for (org.hl7.fhir.r4.model.Reference t : src.getContract()) + tgt.addContract(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Coverage.CoverageStatus convertCoverageStatus(org.hl7.fhir.dstu3.model.Coverage.CoverageStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Coverage.CoverageStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.Coverage.CoverageStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.Coverage.CoverageStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Coverage.CoverageStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Coverage.CoverageStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Coverage.CoverageStatus convertCoverageStatus(org.hl7.fhir.r4.model.Coverage.CoverageStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Coverage.CoverageStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.Coverage.CoverageStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.Coverage.CoverageStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Coverage.CoverageStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Coverage.CoverageStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Coverage.GroupComponent convertGroupComponent(org.hl7.fhir.dstu3.model.Coverage.GroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Coverage.GroupComponent tgt = new org.hl7.fhir.r4.model.Coverage.GroupComponent(); + copyElement(src, tgt); + if (src.hasGroup()) + tgt.setGroup(src.getGroup()); + if (src.hasGroupDisplay()) + tgt.setGroupDisplay(src.getGroupDisplay()); + if (src.hasSubGroup()) + tgt.setSubGroup(src.getSubGroup()); + if (src.hasSubGroupDisplay()) + tgt.setSubGroupDisplay(src.getSubGroupDisplay()); + if (src.hasPlan()) + tgt.setPlan(src.getPlan()); + if (src.hasPlanDisplay()) + tgt.setPlanDisplay(src.getPlanDisplay()); + if (src.hasSubPlan()) + tgt.setSubPlan(src.getSubPlan()); + if (src.hasSubPlanDisplay()) + tgt.setSubPlanDisplay(src.getSubPlanDisplay()); + if (src.hasClass_()) + tgt.setClass_(src.getClass_()); + if (src.hasClassDisplay()) + tgt.setClassDisplay(src.getClassDisplay()); + if (src.hasSubClass()) + tgt.setSubClass(src.getSubClass()); + if (src.hasSubClassDisplay()) + tgt.setSubClassDisplay(src.getSubClassDisplay()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Coverage.GroupComponent convertGroupComponent(org.hl7.fhir.r4.model.Coverage.GroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Coverage.GroupComponent tgt = new org.hl7.fhir.dstu3.model.Coverage.GroupComponent(); + copyElement(src, tgt); + if (src.hasGroup()) + tgt.setGroup(src.getGroup()); + if (src.hasGroupDisplay()) + tgt.setGroupDisplay(src.getGroupDisplay()); + if (src.hasSubGroup()) + tgt.setSubGroup(src.getSubGroup()); + if (src.hasSubGroupDisplay()) + tgt.setSubGroupDisplay(src.getSubGroupDisplay()); + if (src.hasPlan()) + tgt.setPlan(src.getPlan()); + if (src.hasPlanDisplay()) + tgt.setPlanDisplay(src.getPlanDisplay()); + if (src.hasSubPlan()) + tgt.setSubPlan(src.getSubPlan()); + if (src.hasSubPlanDisplay()) + tgt.setSubPlanDisplay(src.getSubPlanDisplay()); + if (src.hasClass_()) + tgt.setClass_(src.getClass_()); + if (src.hasClassDisplay()) + tgt.setClassDisplay(src.getClassDisplay()); + if (src.hasSubClass()) + tgt.setSubClass(src.getSubClass()); + if (src.hasSubClassDisplay()) + tgt.setSubClassDisplay(src.getSubClassDisplay()); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureDefinition convertDataElement(org.hl7.fhir.dstu3.model.DataElement src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl().replace("/DataElement/", "/StructureDefinition/de-")); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); +// if (src.hasStringency()) +// tgt.setStringency(convertDataElementStringency(src.getStringency())); + for (org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent t : src.getMapping()) + tgt.addMapping(convertDataElementMappingComponent(t)); + for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) + tgt.getSnapshot().addElement(convertElementDefinition(t)); + tgt.setKind(StructureDefinitionKind.LOGICAL); + tgt.setAbstract(false); + tgt.setType(tgt.getName()); + tgt.setBaseDefinition("http://hl7.org/fhir/StructureDefinition/Element"); + tgt.setDerivation(TypeDerivationRule.SPECIALIZATION); + return tgt; + } + +// public static org.hl7.fhir.dstu3.model.DataElement convertDataElement(org.hl7.fhir.r4.model.DataElement src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.dstu3.model.DataElement tgt = new org.hl7.fhir.dstu3.model.DataElement(); +// copyDomainResource(src, tgt); +// if (src.hasUrl()) +// tgt.setUrl(src.getUrl()); +// for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) +// tgt.addIdentifier(convertIdentifier(t)); +// if (src.hasVersion()) +// tgt.setVersion(src.getVersion()); +// if (src.hasStatus()) +// tgt.setStatus(convertPublicationStatus(src.getStatus())); +// if (src.hasExperimental()) +// tgt.setExperimental(src.getExperimental()); +// if (src.hasDate()) +// tgt.setDate(src.getDate()); +// if (src.hasPublisher()) +// tgt.setPublisher(src.getPublisher()); +// if (src.hasName()) +// tgt.setName(src.getName()); +// if (src.hasTitle()) +// tgt.setTitle(src.getTitle()); +// for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) +// tgt.addContact(convertContactDetail(t)); +// for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) +// tgt.addUseContext(convertUsageContext(t)); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) +// tgt.addJurisdiction(convertCodeableConcept(t)); +// if (src.hasCopyright()) +// tgt.setCopyright(src.getCopyright()); +// if (src.hasStringency()) +// tgt.setStringency(convertDataElementStringency(src.getStringency())); +// for (org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent t : src.getMapping()) +// tgt.addMapping(convertDataElementMappingComponent(t)); +// for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) +// tgt.addElement(convertElementDefinition(t)); +// return tgt; +// } + +// private static org.hl7.fhir.r4.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.dstu3.model.DataElement.DataElementStringency src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case COMPARABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.COMPARABLE; +// case FULLYSPECIFIED: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FULLYSPECIFIED; +// case EQUIVALENT: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.EQUIVALENT; +// case CONVERTABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.CONVERTABLE; +// case SCALEABLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.SCALEABLE; +// case FLEXIBLE: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.FLEXIBLE; +// default: return org.hl7.fhir.r4.model.DataElement.DataElementStringency.NULL; +// } +//} +// +// private static org.hl7.fhir.dstu3.model.DataElement.DataElementStringency convertDataElementStringency(org.hl7.fhir.r4.model.DataElement.DataElementStringency src) throws FHIRException { +// if (src == null) +// return null; +// switch (src) { +// case COMPARABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.COMPARABLE; +// case FULLYSPECIFIED: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FULLYSPECIFIED; +// case EQUIVALENT: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.EQUIVALENT; +// case CONVERTABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.CONVERTABLE; +// case SCALEABLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.SCALEABLE; +// case FLEXIBLE: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.FLEXIBLE; +// default: return org.hl7.fhir.dstu3.model.DataElement.DataElementStringency.NULL; +// } +//} + + public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertDataElementMappingComponent(org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + if (src.hasIdentity()) + tgt.setIdentity(src.getIdentity()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + +// public static org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent convertDataElementMappingComponent(org.hl7.fhir.r4.model.DataElement.DataElementMappingComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent tgt = new org.hl7.fhir.dstu3.model.DataElement.DataElementMappingComponent(); +// copyElement(src, tgt); +// if (src.hasIdentity()) +// tgt.setIdentity(src.getIdentity()); +// if (src.hasUri()) +// tgt.setUri(src.getUri()); +// if (src.hasName()) +// tgt.setName(src.getName()); +// if (src.hasComment()) +// tgt.setComment(src.getComment()); +// return tgt; +// } + + public static org.hl7.fhir.r4.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.dstu3.model.DetectedIssue src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DetectedIssue tgt = new org.hl7.fhir.r4.model.DetectedIssue(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertDetectedIssueStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasSeverity()) + tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getImplicated()) + tgt.addImplicated(convertReference(t)); + if (src.hasDetail()) + tgt.setDetail(src.getDetail()); + if (src.hasReference()) + tgt.setReference(src.getReference()); + for (org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) + tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DetectedIssue convertDetectedIssue(org.hl7.fhir.r4.model.DetectedIssue src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DetectedIssue tgt = new org.hl7.fhir.dstu3.model.DetectedIssue(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertDetectedIssueStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasSeverity()) + tgt.setSeverity(convertDetectedIssueSeverity(src.getSeverity())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + for (org.hl7.fhir.r4.model.Reference t : src.getImplicated()) + tgt.addImplicated(convertReference(t)); + if (src.hasDetail()) + tgt.setDetail(src.getDetail()); + if (src.hasReference()) + tgt.setReference(src.getReference()); + for (org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent t : src.getMitigation()) + tgt.addMitigation(convertDetectedIssueMitigationComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus convertDetectedIssueStatus(org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.REGISTERED; + case PRELIMINARY: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.FINAL; + case AMENDED: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.AMENDED; + case CORRECTED: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.CORRECTED; + case CANCELLED: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus convertDetectedIssueStatus(org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.REGISTERED; + case PRELIMINARY: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.FINAL; + case AMENDED: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.AMENDED; + case CORRECTED: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.CORRECTED; + case CANCELLED: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HIGH: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.HIGH; + case MODERATE: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.MODERATE; + case LOW: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.LOW; + default: return org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity convertDetectedIssueSeverity(org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HIGH: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.HIGH; + case MODERATE: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.MODERATE; + case LOW: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.LOW; + default: return org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueSeverity.NULL; + } +} + + public static org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent(); + copyElement(src, tgt); + if (src.hasAction()) + tgt.setAction(convertCodeableConcept(src.getAction())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent convertDetectedIssueMitigationComponent(org.hl7.fhir.r4.model.DetectedIssue.DetectedIssueMitigationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent tgt = new org.hl7.fhir.dstu3.model.DetectedIssue.DetectedIssueMitigationComponent(); + copyElement(src, tgt); + if (src.hasAction()) + tgt.setAction(convertCodeableConcept(src.getAction())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Device convertDevice(org.hl7.fhir.dstu3.model.Device src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Device tgt = new org.hl7.fhir.r4.model.Device(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasUdi()) + tgt.setUdi(convertDeviceUdiComponent(src.getUdi())); + if (src.hasStatus()) + tgt.setStatus(convertFHIRDeviceStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasLotNumber()) + tgt.setLotNumber(src.getLotNumber()); + if (src.hasManufacturer()) + tgt.setManufacturer(src.getManufacturer()); + if (src.hasManufactureDate()) + tgt.setManufactureDate(src.getManufactureDate()); + if (src.hasExpirationDate()) + tgt.setExpirationDate(src.getExpirationDate()); + if (src.hasModel()) + tgt.setModel(src.getModel()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasOwner()) + tgt.setOwner(convertReference(src.getOwner())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSafety()) + tgt.addSafety(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Device convertDevice(org.hl7.fhir.r4.model.Device src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Device tgt = new org.hl7.fhir.dstu3.model.Device(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasUdi()) + tgt.setUdi(convertDeviceUdiComponent(src.getUdi())); + if (src.hasStatus()) + tgt.setStatus(convertFHIRDeviceStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasLotNumber()) + tgt.setLotNumber(src.getLotNumber()); + if (src.hasManufacturer()) + tgt.setManufacturer(src.getManufacturer()); + if (src.hasManufactureDate()) + tgt.setManufactureDate(src.getManufactureDate()); + if (src.hasExpirationDate()) + tgt.setExpirationDate(src.getExpirationDate()); + if (src.hasModel()) + tgt.setModel(src.getModel()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasOwner()) + tgt.setOwner(convertReference(src.getOwner())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSafety()) + tgt.addSafety(convertCodeableConcept(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Device.FHIRDeviceStatus convertFHIRDeviceStatus(org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.Device.FHIRDeviceStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus convertFHIRDeviceStatus(org.hl7.fhir.r4.model.Device.FHIRDeviceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Device.FHIRDeviceStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Device.DeviceUdiComponent convertDeviceUdiComponent(org.hl7.fhir.dstu3.model.Device.DeviceUdiComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Device.DeviceUdiComponent tgt = new org.hl7.fhir.r4.model.Device.DeviceUdiComponent(); + copyElement(src, tgt); + if (src.hasDeviceIdentifier()) + tgt.setDeviceIdentifier(src.getDeviceIdentifier()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasJurisdiction()) + tgt.setJurisdiction(src.getJurisdiction()); + if (src.hasCarrierHRF()) + tgt.setCarrierHRF(src.getCarrierHRF()); + if (src.hasCarrierAIDC()) + tgt.setCarrierAIDC(src.getCarrierAIDC()); + if (src.hasIssuer()) + tgt.setIssuer(src.getIssuer()); + if (src.hasEntryType()) + tgt.setEntryType(convertUDIEntryType(src.getEntryType())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Device.DeviceUdiComponent convertDeviceUdiComponent(org.hl7.fhir.r4.model.Device.DeviceUdiComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Device.DeviceUdiComponent tgt = new org.hl7.fhir.dstu3.model.Device.DeviceUdiComponent(); + copyElement(src, tgt); + if (src.hasDeviceIdentifier()) + tgt.setDeviceIdentifier(src.getDeviceIdentifier()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasJurisdiction()) + tgt.setJurisdiction(src.getJurisdiction()); + if (src.hasCarrierHRF()) + tgt.setCarrierHRF(src.getCarrierHRF()); + if (src.hasCarrierAIDC()) + tgt.setCarrierAIDC(src.getCarrierAIDC()); + if (src.hasIssuer()) + tgt.setIssuer(src.getIssuer()); + if (src.hasEntryType()) + tgt.setEntryType(convertUDIEntryType(src.getEntryType())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Device.UDIEntryType convertUDIEntryType(org.hl7.fhir.dstu3.model.Device.UDIEntryType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BARCODE: return org.hl7.fhir.r4.model.Device.UDIEntryType.BARCODE; + case RFID: return org.hl7.fhir.r4.model.Device.UDIEntryType.RFID; + case MANUAL: return org.hl7.fhir.r4.model.Device.UDIEntryType.MANUAL; + case CARD: return org.hl7.fhir.r4.model.Device.UDIEntryType.CARD; + case SELFREPORTED: return org.hl7.fhir.r4.model.Device.UDIEntryType.SELFREPORTED; + case UNKNOWN: return org.hl7.fhir.r4.model.Device.UDIEntryType.UNKNOWN; + default: return org.hl7.fhir.r4.model.Device.UDIEntryType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Device.UDIEntryType convertUDIEntryType(org.hl7.fhir.r4.model.Device.UDIEntryType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BARCODE: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.BARCODE; + case RFID: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.RFID; + case MANUAL: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.MANUAL; + case CARD: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.CARD; + case SELFREPORTED: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.SELFREPORTED; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Device.UDIEntryType.NULL; + } +} + + public static org.hl7.fhir.r4.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.dstu3.model.DeviceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DeviceComponent tgt = new org.hl7.fhir.r4.model.DeviceComponent(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasLastSystemChange()) + tgt.setLastSystemChange(src.getLastSystemChange()); + if (src.hasSource()) + tgt.setSource(convertReference(src.getSource())); + if (src.hasParent()) + tgt.setParent(convertReference(src.getParent())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getOperationalStatus()) + tgt.addOperationalStatus(convertCodeableConcept(t)); + if (src.hasParameterGroup()) + tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); + if (src.hasMeasurementPrinciple()) + tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); + for (org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) + tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); + if (src.hasLanguageCode()) + tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DeviceComponent convertDeviceComponent(org.hl7.fhir.r4.model.DeviceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DeviceComponent tgt = new org.hl7.fhir.dstu3.model.DeviceComponent(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasLastSystemChange()) + tgt.setLastSystemChange(src.getLastSystemChange()); + if (src.hasSource()) + tgt.setSource(convertReference(src.getSource())); + if (src.hasParent()) + tgt.setParent(convertReference(src.getParent())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getOperationalStatus()) + tgt.addOperationalStatus(convertCodeableConcept(t)); + if (src.hasParameterGroup()) + tgt.setParameterGroup(convertCodeableConcept(src.getParameterGroup())); + if (src.hasMeasurementPrinciple()) + tgt.setMeasurementPrinciple(convertMeasmntPrinciple(src.getMeasurementPrinciple())); + for (org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent t : src.getProductionSpecification()) + tgt.addProductionSpecification(convertDeviceComponentProductionSpecificationComponent(t)); + if (src.hasLanguageCode()) + tgt.setLanguageCode(convertCodeableConcept(src.getLanguageCode())); + return tgt; + } + + private static org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OTHER: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.OTHER; + case CHEMICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; + case ELECTRICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; + case IMPEDANCE: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; + case NUCLEAR: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; + case OPTICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.OPTICAL; + case THERMAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.THERMAL; + case BIOLOGICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; + case MECHANICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; + case ACOUSTICAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; + case MANUAL: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.MANUAL; + default: return org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple convertMeasmntPrinciple(org.hl7.fhir.r4.model.DeviceComponent.MeasmntPrinciple src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OTHER: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.OTHER; + case CHEMICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.CHEMICAL; + case ELECTRICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.ELECTRICAL; + case IMPEDANCE: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.IMPEDANCE; + case NUCLEAR: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.NUCLEAR; + case OPTICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.OPTICAL; + case THERMAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.THERMAL; + case BIOLOGICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.BIOLOGICAL; + case MECHANICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.MECHANICAL; + case ACOUSTICAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.ACOUSTICAL; + case MANUAL: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.MANUAL; + default: return org.hl7.fhir.dstu3.model.DeviceComponent.MeasmntPrinciple.NULL; + } +} + + public static org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); + copyElement(src, tgt); + if (src.hasSpecType()) + tgt.setSpecType(convertCodeableConcept(src.getSpecType())); + if (src.hasComponentId()) + tgt.setComponentId(convertIdentifier(src.getComponentId())); + if (src.hasProductionSpec()) + tgt.setProductionSpec(src.getProductionSpec()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent convertDeviceComponentProductionSpecificationComponent(org.hl7.fhir.r4.model.DeviceComponent.DeviceComponentProductionSpecificationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent tgt = new org.hl7.fhir.dstu3.model.DeviceComponent.DeviceComponentProductionSpecificationComponent(); + copyElement(src, tgt); + if (src.hasSpecType()) + tgt.setSpecType(convertCodeableConcept(src.getSpecType())); + if (src.hasComponentId()) + tgt.setComponentId(convertIdentifier(src.getComponentId())); + if (src.hasProductionSpec()) + tgt.setProductionSpec(src.getProductionSpec()); + return tgt; + } + + public static org.hl7.fhir.r4.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.dstu3.model.DeviceMetric src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DeviceMetric tgt = new org.hl7.fhir.r4.model.DeviceMetric(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasUnit()) + tgt.setUnit(convertCodeableConcept(src.getUnit())); + if (src.hasSource()) + tgt.setSource(convertReference(src.getSource())); + if (src.hasParent()) + tgt.setParent(convertReference(src.getParent())); + if (src.hasOperationalStatus()) + tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); + if (src.hasColor()) + tgt.setColor(convertDeviceMetricColor(src.getColor())); + if (src.hasCategory()) + tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); + if (src.hasMeasurementPeriod()) + tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); + for (org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) + tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DeviceMetric convertDeviceMetric(org.hl7.fhir.r4.model.DeviceMetric src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DeviceMetric tgt = new org.hl7.fhir.dstu3.model.DeviceMetric(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasUnit()) + tgt.setUnit(convertCodeableConcept(src.getUnit())); + if (src.hasSource()) + tgt.setSource(convertReference(src.getSource())); + if (src.hasParent()) + tgt.setParent(convertReference(src.getParent())); + if (src.hasOperationalStatus()) + tgt.setOperationalStatus(convertDeviceMetricOperationalStatus(src.getOperationalStatus())); + if (src.hasColor()) + tgt.setColor(convertDeviceMetricColor(src.getColor())); + if (src.hasCategory()) + tgt.setCategory(convertDeviceMetricCategory(src.getCategory())); + if (src.hasMeasurementPeriod()) + tgt.setMeasurementPeriod(convertTiming(src.getMeasurementPeriod())); + for (org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent t : src.getCalibration()) + tgt.addCalibration(convertDeviceMetricCalibrationComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ON: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.ON; + case OFF: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; + case STANDBY: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus convertDeviceMetricOperationalStatus(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricOperationalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ON: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.ON; + case OFF: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.OFF; + case STANDBY: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.STANDBY; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricOperationalStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BLACK: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.BLACK; + case RED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.RED; + case GREEN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.GREEN; + case YELLOW: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.YELLOW; + case BLUE: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.BLUE; + case MAGENTA: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.MAGENTA; + case CYAN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.CYAN; + case WHITE: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.WHITE; + default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor convertDeviceMetricColor(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricColor src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BLACK: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.BLACK; + case RED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.RED; + case GREEN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.GREEN; + case YELLOW: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.YELLOW; + case BLUE: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.BLUE; + case MAGENTA: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.MAGENTA; + case CYAN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.CYAN; + case WHITE: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.WHITE; + default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricColor.NULL; + } +} + + private static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MEASUREMENT: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; + case SETTING: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.SETTING; + case CALCULATION: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.CALCULATION; + case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; + default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory convertDeviceMetricCategory(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MEASUREMENT: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.MEASUREMENT; + case SETTING: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.SETTING; + case CALCULATION: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.CALCULATION; + case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.UNSPECIFIED; + default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCategory.NULL; + } +} + + public static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertDeviceMetricCalibrationType(src.getType())); + if (src.hasState()) + tgt.setState(convertDeviceMetricCalibrationState(src.getState())); + if (src.hasTime()) + tgt.setTime(src.getTime()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent convertDeviceMetricCalibrationComponent(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent tgt = new org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertDeviceMetricCalibrationType(src.getType())); + if (src.hasState()) + tgt.setState(convertDeviceMetricCalibrationState(src.getState())); + if (src.hasTime()) + tgt.setTime(src.getTime()); + return tgt; + } + + private static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; + case OFFSET: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; + case GAIN: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; + case TWOPOINT: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; + default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType convertDeviceMetricCalibrationType(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.UNSPECIFIED; + case OFFSET: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.OFFSET; + case GAIN: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.GAIN; + case TWOPOINT: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.TWOPOINT; + default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationType.NULL; + } +} + + private static org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTCALIBRATED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; + case CALIBRATIONREQUIRED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; + case CALIBRATED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; + case UNSPECIFIED: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; + default: return org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState convertDeviceMetricCalibrationState(org.hl7.fhir.r4.model.DeviceMetric.DeviceMetricCalibrationState src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NOTCALIBRATED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.NOTCALIBRATED; + case CALIBRATIONREQUIRED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATIONREQUIRED; + case CALIBRATED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.CALIBRATED; + case UNSPECIFIED: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.UNSPECIFIED; + default: return org.hl7.fhir.dstu3.model.DeviceMetric.DeviceMetricCalibrationState.NULL; + } +} + + public static org.hl7.fhir.r4.model.DeviceRequest convertDeviceRequest(org.hl7.fhir.dstu3.model.DeviceRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DeviceRequest tgt = new org.hl7.fhir.r4.model.DeviceRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPriorRequest()) + tgt.addPriorRequest(convertReference(t)); + if (src.hasGroupIdentifier()) + tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertDeviceRequestStatus(src.getStatus())); + if (src.hasIntent()) + tgt.setIntent(convertCodeableConcept(src.getIntent())); + if (src.hasPriority()) + tgt.setPriority(convertRequestPriority(src.getPriority())); + if (src.hasCode()) + tgt.setCode(convertType(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasRequester()) + tgt.setRequester(convertDeviceRequestRequesterComponent(src.getRequester())); + if (src.hasPerformerType()) + tgt.setPerformerType(convertCodeableConcept(src.getPerformerType())); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInfo()) + tgt.addSupportingInfo(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRelevantHistory()) + tgt.addRelevantHistory(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DeviceRequest convertDeviceRequest(org.hl7.fhir.r4.model.DeviceRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DeviceRequest tgt = new org.hl7.fhir.dstu3.model.DeviceRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPriorRequest()) + tgt.addPriorRequest(convertReference(t)); + if (src.hasGroupIdentifier()) + tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertDeviceRequestStatus(src.getStatus())); + if (src.hasIntent()) + tgt.setIntent(convertCodeableConcept(src.getIntent())); + if (src.hasPriority()) + tgt.setPriority(convertRequestPriority(src.getPriority())); + if (src.hasCode()) + tgt.setCode(convertType(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasRequester()) + tgt.setRequester(convertDeviceRequestRequesterComponent(src.getRequester())); + if (src.hasPerformerType()) + tgt.setPerformerType(convertCodeableConcept(src.getPerformerType())); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInfo()) + tgt.addSupportingInfo(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getRelevantHistory()) + tgt.addRelevantHistory(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus convertDeviceRequestStatus(org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus convertDeviceRequestStatus(org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.DeviceRequest.RequestPriority convertRequestPriority(org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.r4.model.DeviceRequest.RequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.r4.model.DeviceRequest.RequestPriority.URGENT; + case ASAP: return org.hl7.fhir.r4.model.DeviceRequest.RequestPriority.ASAP; + case STAT: return org.hl7.fhir.r4.model.DeviceRequest.RequestPriority.STAT; + default: return org.hl7.fhir.r4.model.DeviceRequest.RequestPriority.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority convertRequestPriority(org.hl7.fhir.r4.model.DeviceRequest.RequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority.URGENT; + case ASAP: return org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority.ASAP; + case STAT: return org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority.STAT; + default: return org.hl7.fhir.dstu3.model.DeviceRequest.RequestPriority.NULL; + } +} + + public static org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestRequesterComponent convertDeviceRequestRequesterComponent(org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestRequesterComponent convertDeviceRequestRequesterComponent(org.hl7.fhir.r4.model.DeviceRequest.DeviceRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestRequesterComponent tgt = new org.hl7.fhir.dstu3.model.DeviceRequest.DeviceRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.r4.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.dstu3.model.DeviceUseStatement src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DeviceUseStatement tgt = new org.hl7.fhir.r4.model.DeviceUseStatement(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertDeviceUseStatementStatus(src.getStatus())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasWhenUsed()) + tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + if (src.hasRecordedOn()) + tgt.setRecordedOn(src.getRecordedOn()); + if (src.hasSource()) + tgt.setSource(convertReference(src.getSource())); + if (src.hasDevice()) + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getIndication()) + tgt.addIndication(convertCodeableConcept(t)); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DeviceUseStatement convertDeviceUseStatement(org.hl7.fhir.r4.model.DeviceUseStatement src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DeviceUseStatement tgt = new org.hl7.fhir.dstu3.model.DeviceUseStatement(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertDeviceUseStatementStatus(src.getStatus())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasWhenUsed()) + tgt.setWhenUsed(convertPeriod(src.getWhenUsed())); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + if (src.hasRecordedOn()) + tgt.setRecordedOn(src.getRecordedOn()); + if (src.hasSource()) + tgt.setSource(convertReference(src.getSource())); + if (src.hasDevice()) + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getIndication()) + tgt.addIndication(convertCodeableConcept(t)); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus convertDeviceUseStatementStatus(org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.ENTEREDINERROR; + case INTENDED: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.INTENDED; + case STOPPED: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.STOPPED; + case ONHOLD: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.ONHOLD; + default: return org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus convertDeviceUseStatementStatus(org.hl7.fhir.r4.model.DeviceUseStatement.DeviceUseStatementStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.ENTEREDINERROR; + case INTENDED: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.INTENDED; + case STOPPED: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.STOPPED; + case ONHOLD: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.ONHOLD; + default: return org.hl7.fhir.dstu3.model.DeviceUseStatement.DeviceUseStatementStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.dstu3.model.DiagnosticReport src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DiagnosticReport tgt = new org.hl7.fhir.r4.model.DiagnosticReport(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasEffective()) + tgt.setEffective(convertType(src.getEffective())); + if (src.hasIssued()) + tgt.setIssued(src.getIssued()); +// for (org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportPerformerComponent t : src.getPerformer()) +// tgt.addPerformer(convertDiagnosticReportPerformerComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSpecimen()) + tgt.addSpecimen(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getResult()) + tgt.addResult(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getImagingStudy()) + tgt.addImagingStudy(convertReference(t)); + for (org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) + tgt.addImage(convertDiagnosticReportImageComponent(t)); + if (src.hasConclusion()) + tgt.setConclusion(src.getConclusion()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCodedDiagnosis()) + tgt.addCodedDiagnosis(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getPresentedForm()) + tgt.addPresentedForm(convertAttachment(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DiagnosticReport convertDiagnosticReport(org.hl7.fhir.r4.model.DiagnosticReport src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DiagnosticReport tgt = new org.hl7.fhir.dstu3.model.DiagnosticReport(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertDiagnosticReportStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasEffective()) + tgt.setEffective(convertType(src.getEffective())); + if (src.hasIssued()) + tgt.setIssued(src.getIssued()); +// for (org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportPerformerComponent t : src.getPerformer()) +// tgt.addPerformer(convertDiagnosticReportPerformerComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getSpecimen()) + tgt.addSpecimen(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getResult()) + tgt.addResult(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getImagingStudy()) + tgt.addImagingStudy(convertReference(t)); + for (org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent t : src.getImage()) + tgt.addImage(convertDiagnosticReportImageComponent(t)); + if (src.hasConclusion()) + tgt.setConclusion(src.getConclusion()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCodedDiagnosis()) + tgt.addCodedDiagnosis(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Attachment t : src.getPresentedForm()) + tgt.addPresentedForm(convertAttachment(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; + case PARTIAL: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; + case PRELIMINARY: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.FINAL; + case AMENDED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.AMENDED; + case CORRECTED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; + case APPENDED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; + case CANCELLED: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus convertDiagnosticReportStatus(org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.REGISTERED; + case PARTIAL: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.PARTIAL; + case PRELIMINARY: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.FINAL; + case AMENDED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.AMENDED; + case CORRECTED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.CORRECTED; + case APPENDED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.APPENDED; + case CANCELLED: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportStatus.NULL; + } +} + +// public static org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportPerformerComponent convertDiagnosticReportPerformerComponent(org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportPerformerComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportPerformerComponent tgt = new org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportPerformerComponent(); +// copyElement(src, tgt); +// if (src.hasRole()) +// tgt.setRole(convertCodeableConcept(src.getRole())); +// if (src.hasActor()) +// tgt.setActor(convertReference(src.getActor())); +// return tgt; +// } +// +// public static org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportPerformerComponent convertDiagnosticReportPerformerComponent(org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportPerformerComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportPerformerComponent tgt = new org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportPerformerComponent(); +// copyElement(src, tgt); +// if (src.hasRole()) +// tgt.setRole(convertCodeableConcept(src.getRole())); +// if (src.hasActor()) +// tgt.setActor(convertReference(src.getActor())); +// return tgt; +// } +// + public static org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent(); + copyElement(src, tgt); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasLink()) + tgt.setLink(convertReference(src.getLink())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent convertDiagnosticReportImageComponent(org.hl7.fhir.r4.model.DiagnosticReport.DiagnosticReportImageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent tgt = new org.hl7.fhir.dstu3.model.DiagnosticReport.DiagnosticReportImageComponent(); + copyElement(src, tgt); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasLink()) + tgt.setLink(convertReference(src.getLink())); + return tgt; + } + + public static org.hl7.fhir.r4.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.dstu3.model.DocumentManifest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DocumentManifest tgt = new org.hl7.fhir.r4.model.DocumentManifest(); + copyDomainResource(src, tgt); + if (src.hasMasterIdentifier()) + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + if (src.hasSource()) + tgt.setSource(src.getSource()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) + tgt.addContent(convertDocumentManifestContentComponent(t)); + for (org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentManifestRelatedComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DocumentManifest convertDocumentManifest(org.hl7.fhir.r4.model.DocumentManifest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DocumentManifest tgt = new org.hl7.fhir.dstu3.model.DocumentManifest(); + copyDomainResource(src, tgt); + if (src.hasMasterIdentifier()) + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + if (src.hasSource()) + tgt.setSource(src.getSource()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent t : src.getContent()) + tgt.addContent(convertDocumentManifestContentComponent(t)); + for (org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentManifestRelatedComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.CURRENT; + case SUPERSEDED: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus convertDocumentReferenceStatus(org.hl7.fhir.r4.model.Enumerations.DocumentReferenceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.CURRENT; + case SUPERSEDED: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.SUPERSEDED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Enumerations.DocumentReferenceStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent(); + copyElement(src, tgt); + if (src.hasP()) + tgt.setP(convertType(src.getP())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent convertDocumentManifestContentComponent(org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestContentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent tgt = new org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestContentComponent(); + copyElement(src, tgt); + if (src.hasP()) + tgt.setP(convertType(src.getP())); + return tgt; + } + + public static org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasRef()) + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent convertDocumentManifestRelatedComponent(org.hl7.fhir.r4.model.DocumentManifest.DocumentManifestRelatedComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent tgt = new org.hl7.fhir.dstu3.model.DocumentManifest.DocumentManifestRelatedComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasRef()) + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + public static org.hl7.fhir.r4.model.DocumentReference convertDocumentReference(org.hl7.fhir.dstu3.model.DocumentReference src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DocumentReference tgt = new org.hl7.fhir.r4.model.DocumentReference(); + copyDomainResource(src, tgt); + if (src.hasMasterIdentifier()) + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + if (src.hasDocStatus()) + tgt.setDocStatus(convertReferredDocumentStatus(src.getDocStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasClass_()) + tgt.setClass_(convertCodeableConcept(src.getClass_())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasIndexed()) + tgt.setIndexed(src.getIndexed()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + if (src.hasAuthenticator()) + tgt.setAuthenticator(convertReference(src.getAuthenticator())); + if (src.hasCustodian()) + tgt.setCustodian(convertReference(src.getCustodian())); + for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) + tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) + tgt.addContent(convertDocumentReferenceContentComponent(t)); + if (src.hasContext()) + tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DocumentReference convertDocumentReference(org.hl7.fhir.r4.model.DocumentReference src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DocumentReference tgt = new org.hl7.fhir.dstu3.model.DocumentReference(); + copyDomainResource(src, tgt); + if (src.hasMasterIdentifier()) + tgt.setMasterIdentifier(convertIdentifier(src.getMasterIdentifier())); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertDocumentReferenceStatus(src.getStatus())); + if (src.hasDocStatus()) + tgt.setDocStatus(convertReferredDocumentStatus(src.getDocStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasClass_()) + tgt.setClass_(convertCodeableConcept(src.getClass_())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasIndexed()) + tgt.setIndexed(src.getIndexed()); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthor()) + tgt.addAuthor(convertReference(t)); + if (src.hasAuthenticator()) + tgt.setAuthenticator(convertReference(src.getAuthenticator())); + if (src.hasCustodian()) + tgt.setCustodian(convertReference(src.getCustodian())); + for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent t : src.getRelatesTo()) + tgt.addRelatesTo(convertDocumentReferenceRelatesToComponent(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSecurityLabel()) + tgt.addSecurityLabel(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent t : src.getContent()) + tgt.addContent(convertDocumentReferenceContentComponent(t)); + if (src.hasContext()) + tgt.setContext(convertDocumentReferenceContextComponent(src.getContext())); + return tgt; + } + + private static org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus convertReferredDocumentStatus(org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRELIMINARY: return org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus.FINAL; + case AMENDED: return org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus.AMENDED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus convertReferredDocumentStatus(org.hl7.fhir.r4.model.DocumentReference.ReferredDocumentStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRELIMINARY: return org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus.FINAL; + case AMENDED: return org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus.AMENDED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.DocumentReference.ReferredDocumentStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertDocumentRelationshipType(src.getCode())); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent convertDocumentReferenceRelatesToComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceRelatesToComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceRelatesToComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertDocumentRelationshipType(src.getCode())); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + private static org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACES: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.REPLACES; + case TRANSFORMS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; + case SIGNS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.SIGNS; + case APPENDS: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.APPENDS; + default: return org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType convertDocumentRelationshipType(org.hl7.fhir.r4.model.DocumentReference.DocumentRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACES: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.REPLACES; + case TRANSFORMS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.TRANSFORMS; + case SIGNS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.SIGNS; + case APPENDS: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.APPENDS; + default: return org.hl7.fhir.dstu3.model.DocumentReference.DocumentRelationshipType.NULL; + } +} + + + public static org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent(); + copyElement(src, tgt); + if (src.hasAttachment()) + tgt.setAttachment(convertAttachment(src.getAttachment())); + if (src.hasFormat()) + tgt.setFormat(convertCoding(src.getFormat())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent convertDocumentReferenceContentComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContentComponent(); + copyElement(src, tgt); + if (src.hasAttachment()) + tgt.setAttachment(convertAttachment(src.getAttachment())); + if (src.hasFormat()) + tgt.setFormat(convertCoding(src.getFormat())); + return tgt; + } + + public static org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent(); + copyElement(src, tgt); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getEvent()) + tgt.addEvent(convertCodeableConcept(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasFacilityType()) + tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); + if (src.hasPracticeSetting()) + tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); + if (src.hasSourcePatientInfo()) + tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); + for (org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent convertDocumentReferenceContextComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextComponent(); + copyElement(src, tgt); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getEvent()) + tgt.addEvent(convertCodeableConcept(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasFacilityType()) + tgt.setFacilityType(convertCodeableConcept(src.getFacilityType())); + if (src.hasPracticeSetting()) + tgt.setPracticeSetting(convertCodeableConcept(src.getPracticeSetting())); + if (src.hasSourcePatientInfo()) + tgt.setSourcePatientInfo(convertReference(src.getSourcePatientInfo())); + for (org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent t : src.getRelated()) + tgt.addRelated(convertDocumentReferenceContextRelatedComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasRef()) + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent convertDocumentReferenceContextRelatedComponent(org.hl7.fhir.r4.model.DocumentReference.DocumentReferenceContextRelatedComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent tgt = new org.hl7.fhir.dstu3.model.DocumentReference.DocumentReferenceContextRelatedComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasRef()) + tgt.setRef(convertReference(src.getRef())); + return tgt; + } + + public static org.hl7.fhir.r4.model.EligibilityRequest convertEligibilityRequest(org.hl7.fhir.dstu3.model.EligibilityRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EligibilityRequest tgt = new org.hl7.fhir.r4.model.EligibilityRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEligibilityRequestStatus(src.getStatus())); + if (src.hasPriority()) + tgt.setPriority(convertCodeableConcept(src.getPriority())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasServiced()) + tgt.setServiced(convertType(src.getServiced())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasEnterer()) + tgt.setEnterer(convertReference(src.getEnterer())); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasFacility()) + tgt.setFacility(convertReference(src.getFacility())); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + if (src.hasBusinessArrangement()) + tgt.setBusinessArrangement(src.getBusinessArrangement()); + if (src.hasBenefitCategory()) + tgt.setBenefitCategory(convertCodeableConcept(src.getBenefitCategory())); + if (src.hasBenefitSubCategory()) + tgt.setBenefitSubCategory(convertCodeableConcept(src.getBenefitSubCategory())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EligibilityRequest convertEligibilityRequest(org.hl7.fhir.r4.model.EligibilityRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EligibilityRequest tgt = new org.hl7.fhir.dstu3.model.EligibilityRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEligibilityRequestStatus(src.getStatus())); + if (src.hasPriority()) + tgt.setPriority(convertCodeableConcept(src.getPriority())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasServiced()) + tgt.setServiced(convertType(src.getServiced())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasEnterer()) + tgt.setEnterer(convertReference(src.getEnterer())); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasFacility()) + tgt.setFacility(convertReference(src.getFacility())); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + if (src.hasBusinessArrangement()) + tgt.setBusinessArrangement(src.getBusinessArrangement()); + if (src.hasBenefitCategory()) + tgt.setBenefitCategory(convertCodeableConcept(src.getBenefitCategory())); + if (src.hasBenefitSubCategory()) + tgt.setBenefitSubCategory(convertCodeableConcept(src.getBenefitSubCategory())); + return tgt; + } + + private static org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus convertEligibilityRequestStatus(org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus convertEligibilityRequestStatus(org.hl7.fhir.r4.model.EligibilityRequest.EligibilityRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.EligibilityRequest.EligibilityRequestStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.EligibilityResponse convertEligibilityResponse(org.hl7.fhir.dstu3.model.EligibilityResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EligibilityResponse tgt = new org.hl7.fhir.r4.model.EligibilityResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEligibilityResponseStatus(src.getStatus())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasRequestProvider()) + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + if (src.hasRequestOrganization()) + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasInforce()) + tgt.setInforce(src.getInforce()); + for (org.hl7.fhir.dstu3.model.EligibilityResponse.InsuranceComponent t : src.getInsurance()) + tgt.addInsurance(convertInsuranceComponent(t)); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + for (org.hl7.fhir.dstu3.model.EligibilityResponse.ErrorsComponent t : src.getError()) + tgt.addError(convertErrorsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EligibilityResponse convertEligibilityResponse(org.hl7.fhir.r4.model.EligibilityResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EligibilityResponse tgt = new org.hl7.fhir.dstu3.model.EligibilityResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEligibilityResponseStatus(src.getStatus())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasRequestProvider()) + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + if (src.hasRequestOrganization()) + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasInforce()) + tgt.setInforce(src.getInforce()); + for (org.hl7.fhir.r4.model.EligibilityResponse.InsuranceComponent t : src.getInsurance()) + tgt.addInsurance(convertInsuranceComponent(t)); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + for (org.hl7.fhir.r4.model.EligibilityResponse.ErrorsComponent t : src.getError()) + tgt.addError(convertErrorsComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus convertEligibilityResponseStatus(org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus convertEligibilityResponseStatus(org.hl7.fhir.r4.model.EligibilityResponse.EligibilityResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.EligibilityResponse.EligibilityResponseStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.EligibilityResponse.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.dstu3.model.EligibilityResponse.InsuranceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EligibilityResponse.InsuranceComponent tgt = new org.hl7.fhir.r4.model.EligibilityResponse.InsuranceComponent(); + copyElement(src, tgt); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + if (src.hasContract()) + tgt.setContract(convertReference(src.getContract())); + for (org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitsComponent t : src.getBenefitBalance()) + tgt.addBenefitBalance(convertBenefitsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EligibilityResponse.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.r4.model.EligibilityResponse.InsuranceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EligibilityResponse.InsuranceComponent tgt = new org.hl7.fhir.dstu3.model.EligibilityResponse.InsuranceComponent(); + copyElement(src, tgt); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + if (src.hasContract()) + tgt.setContract(convertReference(src.getContract())); + for (org.hl7.fhir.r4.model.EligibilityResponse.BenefitsComponent t : src.getBenefitBalance()) + tgt.addBenefitBalance(convertBenefitsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.EligibilityResponse.BenefitsComponent convertBenefitsComponent(org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitsComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EligibilityResponse.BenefitsComponent tgt = new org.hl7.fhir.r4.model.EligibilityResponse.BenefitsComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasSubCategory()) + tgt.setSubCategory(convertCodeableConcept(src.getSubCategory())); + if (src.hasExcluded()) + tgt.setExcluded(src.getExcluded()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasNetwork()) + tgt.setNetwork(convertCodeableConcept(src.getNetwork())); + if (src.hasUnit()) + tgt.setUnit(convertCodeableConcept(src.getUnit())); + if (src.hasTerm()) + tgt.setTerm(convertCodeableConcept(src.getTerm())); + for (org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitComponent t : src.getFinancial()) + tgt.addFinancial(convertBenefitComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitsComponent convertBenefitsComponent(org.hl7.fhir.r4.model.EligibilityResponse.BenefitsComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitsComponent tgt = new org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitsComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasSubCategory()) + tgt.setSubCategory(convertCodeableConcept(src.getSubCategory())); + if (src.hasExcluded()) + tgt.setExcluded(src.getExcluded()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasNetwork()) + tgt.setNetwork(convertCodeableConcept(src.getNetwork())); + if (src.hasUnit()) + tgt.setUnit(convertCodeableConcept(src.getUnit())); + if (src.hasTerm()) + tgt.setTerm(convertCodeableConcept(src.getTerm())); + for (org.hl7.fhir.r4.model.EligibilityResponse.BenefitComponent t : src.getFinancial()) + tgt.addFinancial(convertBenefitComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.EligibilityResponse.BenefitComponent convertBenefitComponent(org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EligibilityResponse.BenefitComponent tgt = new org.hl7.fhir.r4.model.EligibilityResponse.BenefitComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasAllowed()) + tgt.setAllowed(convertType(src.getAllowed())); + if (src.hasUsed()) + tgt.setUsed(convertType(src.getUsed())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitComponent convertBenefitComponent(org.hl7.fhir.r4.model.EligibilityResponse.BenefitComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitComponent tgt = new org.hl7.fhir.dstu3.model.EligibilityResponse.BenefitComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasAllowed()) + tgt.setAllowed(convertType(src.getAllowed())); + if (src.hasUsed()) + tgt.setUsed(convertType(src.getUsed())); + return tgt; + } + + public static org.hl7.fhir.r4.model.EligibilityResponse.ErrorsComponent convertErrorsComponent(org.hl7.fhir.dstu3.model.EligibilityResponse.ErrorsComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EligibilityResponse.ErrorsComponent tgt = new org.hl7.fhir.r4.model.EligibilityResponse.ErrorsComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EligibilityResponse.ErrorsComponent convertErrorsComponent(org.hl7.fhir.r4.model.EligibilityResponse.ErrorsComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EligibilityResponse.ErrorsComponent tgt = new org.hl7.fhir.dstu3.model.EligibilityResponse.ErrorsComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Encounter convertEncounter(org.hl7.fhir.dstu3.model.Encounter src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Encounter tgt = new org.hl7.fhir.r4.model.Encounter(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEncounterStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.Encounter.StatusHistoryComponent t : src.getStatusHistory()) + tgt.addStatusHistory(convertStatusHistoryComponent(t)); + if (src.hasClass_()) + tgt.setClass_(convertCoding(src.getClass_())); + for (org.hl7.fhir.dstu3.model.Encounter.ClassHistoryComponent t : src.getClassHistory()) + tgt.addClassHistory(convertClassHistoryComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasPriority()) + tgt.setPriority(convertCodeableConcept(src.getPriority())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEpisodeOfCare()) + tgt.addEpisodeOfCare(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getIncomingReferral()) + tgt.addIncomingReferral(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertEncounterParticipantComponent(t)); + if (src.hasAppointment()) + tgt.setAppointment(convertReference(src.getAppointment())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasLength()) + tgt.setLength(convertDuration(src.getLength())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Encounter.DiagnosisComponent t : src.getDiagnosis()) + tgt.addDiagnosis(convertDiagnosisComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAccount()) + tgt.addAccount(convertReference(t)); + if (src.hasHospitalization()) + tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); + for (org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent t : src.getLocation()) + tgt.addLocation(convertEncounterLocationComponent(t)); + if (src.hasServiceProvider()) + tgt.setServiceProvider(convertReference(src.getServiceProvider())); + if (src.hasPartOf()) + tgt.setPartOf(convertReference(src.getPartOf())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Encounter convertEncounter(org.hl7.fhir.r4.model.Encounter src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Encounter tgt = new org.hl7.fhir.dstu3.model.Encounter(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEncounterStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.Encounter.StatusHistoryComponent t : src.getStatusHistory()) + tgt.addStatusHistory(convertStatusHistoryComponent(t)); + if (src.hasClass_()) + tgt.setClass_(convertCoding(src.getClass_())); + for (org.hl7.fhir.r4.model.Encounter.ClassHistoryComponent t : src.getClassHistory()) + tgt.addClassHistory(convertClassHistoryComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasPriority()) + tgt.setPriority(convertCodeableConcept(src.getPriority())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.r4.model.Reference t : src.getEpisodeOfCare()) + tgt.addEpisodeOfCare(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getIncomingReferral()) + tgt.addIncomingReferral(convertReference(t)); + for (org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertEncounterParticipantComponent(t)); + if (src.hasAppointment()) + tgt.setAppointment(convertReference(src.getAppointment())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasLength()) + tgt.setLength(convertDuration(src.getLength())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Encounter.DiagnosisComponent t : src.getDiagnosis()) + tgt.addDiagnosis(convertDiagnosisComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getAccount()) + tgt.addAccount(convertReference(t)); + if (src.hasHospitalization()) + tgt.setHospitalization(convertEncounterHospitalizationComponent(src.getHospitalization())); + for (org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent t : src.getLocation()) + tgt.addLocation(convertEncounterLocationComponent(t)); + if (src.hasServiceProvider()) + tgt.setServiceProvider(convertReference(src.getServiceProvider())); + if (src.hasPartOf()) + tgt.setPartOf(convertReference(src.getPartOf())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Encounter.EncounterStatus convertEncounterStatus(org.hl7.fhir.dstu3.model.Encounter.EncounterStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.PLANNED; + case ARRIVED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.ARRIVED; + case TRIAGED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.TRIAGED; + case INPROGRESS: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.INPROGRESS; + case ONLEAVE: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.ONLEAVE; + case FINISHED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.FINISHED; + case CANCELLED: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.Encounter.EncounterStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Encounter.EncounterStatus convertEncounterStatus(org.hl7.fhir.r4.model.Encounter.EncounterStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.PLANNED; + case ARRIVED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.ARRIVED; + case TRIAGED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.TRIAGED; + case INPROGRESS: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.INPROGRESS; + case ONLEAVE: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.ONLEAVE; + case FINISHED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.FINISHED; + case CANCELLED: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Encounter.EncounterStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Encounter.StatusHistoryComponent convertStatusHistoryComponent(org.hl7.fhir.dstu3.model.Encounter.StatusHistoryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Encounter.StatusHistoryComponent tgt = new org.hl7.fhir.r4.model.Encounter.StatusHistoryComponent(); + copyElement(src, tgt); + if (src.hasStatus()) + tgt.setStatus(convertEncounterStatus(src.getStatus())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Encounter.StatusHistoryComponent convertStatusHistoryComponent(org.hl7.fhir.r4.model.Encounter.StatusHistoryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Encounter.StatusHistoryComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.StatusHistoryComponent(); + copyElement(src, tgt); + if (src.hasStatus()) + tgt.setStatus(convertEncounterStatus(src.getStatus())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Encounter.ClassHistoryComponent convertClassHistoryComponent(org.hl7.fhir.dstu3.model.Encounter.ClassHistoryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Encounter.ClassHistoryComponent tgt = new org.hl7.fhir.r4.model.Encounter.ClassHistoryComponent(); + copyElement(src, tgt); + if (src.hasClass_()) + tgt.setClass_(convertCoding(src.getClass_())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Encounter.ClassHistoryComponent convertClassHistoryComponent(org.hl7.fhir.r4.model.Encounter.ClassHistoryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Encounter.ClassHistoryComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.ClassHistoryComponent(); + copyElement(src, tgt); + if (src.hasClass_()) + tgt.setClass_(convertCoding(src.getClass_())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasIndividual()) + tgt.setIndividual(convertReference(src.getIndividual())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent convertEncounterParticipantComponent(org.hl7.fhir.r4.model.Encounter.EncounterParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterParticipantComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasIndividual()) + tgt.setIndividual(convertReference(src.getIndividual())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Encounter.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.dstu3.model.Encounter.DiagnosisComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Encounter.DiagnosisComponent tgt = new org.hl7.fhir.r4.model.Encounter.DiagnosisComponent(); + copyElement(src, tgt); + if (src.hasCondition()) + tgt.setCondition(convertReference(src.getCondition())); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Encounter.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.r4.model.Encounter.DiagnosisComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Encounter.DiagnosisComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.DiagnosisComponent(); + copyElement(src, tgt); + if (src.hasCondition()) + tgt.setCondition(convertReference(src.getCondition())); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent(); + copyElement(src, tgt); + if (src.hasPreAdmissionIdentifier()) + tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); + if (src.hasOrigin()) + tgt.setOrigin(convertReference(src.getOrigin())); + if (src.hasAdmitSource()) + tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); + if (src.hasReAdmission()) + tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getDietPreference()) + tgt.addDietPreference(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialCourtesy()) + tgt.addSpecialCourtesy(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialArrangement()) + tgt.addSpecialArrangement(convertCodeableConcept(t)); + if (src.hasDestination()) + tgt.setDestination(convertReference(src.getDestination())); + if (src.hasDischargeDisposition()) + tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent convertEncounterHospitalizationComponent(org.hl7.fhir.r4.model.Encounter.EncounterHospitalizationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterHospitalizationComponent(); + copyElement(src, tgt); + if (src.hasPreAdmissionIdentifier()) + tgt.setPreAdmissionIdentifier(convertIdentifier(src.getPreAdmissionIdentifier())); + if (src.hasOrigin()) + tgt.setOrigin(convertReference(src.getOrigin())); + if (src.hasAdmitSource()) + tgt.setAdmitSource(convertCodeableConcept(src.getAdmitSource())); + if (src.hasReAdmission()) + tgt.setReAdmission(convertCodeableConcept(src.getReAdmission())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getDietPreference()) + tgt.addDietPreference(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialCourtesy()) + tgt.addSpecialCourtesy(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialArrangement()) + tgt.addSpecialArrangement(convertCodeableConcept(t)); + if (src.hasDestination()) + tgt.setDestination(convertReference(src.getDestination())); + if (src.hasDischargeDisposition()) + tgt.setDischargeDisposition(convertCodeableConcept(src.getDischargeDisposition())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent(); + copyElement(src, tgt); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + if (src.hasStatus()) + tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent convertEncounterLocationComponent(org.hl7.fhir.r4.model.Encounter.EncounterLocationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent tgt = new org.hl7.fhir.dstu3.model.Encounter.EncounterLocationComponent(); + copyElement(src, tgt); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + if (src.hasStatus()) + tgt.setStatus(convertEncounterLocationStatus(src.getStatus())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.PLANNED; + case ACTIVE: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.ACTIVE; + case RESERVED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.RESERVED; + case COMPLETED: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.COMPLETED; + default: return org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus convertEncounterLocationStatus(org.hl7.fhir.r4.model.Encounter.EncounterLocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.PLANNED; + case ACTIVE: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.ACTIVE; + case RESERVED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.RESERVED; + case COMPLETED: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.COMPLETED; + default: return org.hl7.fhir.dstu3.model.Encounter.EncounterLocationStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Endpoint convertEndpoint(org.hl7.fhir.dstu3.model.Endpoint src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Endpoint tgt = new org.hl7.fhir.r4.model.Endpoint(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEndpointStatus(src.getStatus())); + if (src.hasConnectionType()) + tgt.setConnectionType(convertCoding(src.getConnectionType())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasManagingOrganization()) + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPayloadType()) + tgt.addPayloadType(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getPayloadMimeType()) + tgt.addPayloadMimeType(t.getValue()); + if (src.hasAddress()) + tgt.setAddress(src.getAddress()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getHeader()) + tgt.addHeader(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Endpoint convertEndpoint(org.hl7.fhir.r4.model.Endpoint src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Endpoint tgt = new org.hl7.fhir.dstu3.model.Endpoint(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEndpointStatus(src.getStatus())); + if (src.hasConnectionType()) + tgt.setConnectionType(convertCoding(src.getConnectionType())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasManagingOrganization()) + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPayloadType()) + tgt.addPayloadType(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeType t : src.getPayloadMimeType()) + tgt.addPayloadMimeType(t.getValue()); + if (src.hasAddress()) + tgt.setAddress(src.getAddress()); + for (org.hl7.fhir.r4.model.StringType t : src.getHeader()) + tgt.addHeader(t.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Endpoint.EndpointStatus convertEndpointStatus(org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.SUSPENDED; + case ERROR: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.ERROR; + case OFF: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.OFF; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.ENTEREDINERROR; + case TEST: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.TEST; + default: return org.hl7.fhir.r4.model.Endpoint.EndpointStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus convertEndpointStatus(org.hl7.fhir.r4.model.Endpoint.EndpointStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.SUSPENDED; + case ERROR: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.ERROR; + case OFF: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.OFF; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.ENTEREDINERROR; + case TEST: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.TEST; + default: return org.hl7.fhir.dstu3.model.Endpoint.EndpointStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.dstu3.model.EnrollmentRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EnrollmentRequest tgt = new org.hl7.fhir.r4.model.EnrollmentRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEnrollmentRequestStatus(src.getStatus())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasSubject()) + tgt.setCandidate(convertReference(src.getSubject())); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EnrollmentRequest convertEnrollmentRequest(org.hl7.fhir.r4.model.EnrollmentRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EnrollmentRequest tgt = new org.hl7.fhir.dstu3.model.EnrollmentRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEnrollmentRequestStatus(src.getStatus())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasCandidate()) + tgt.setSubject(convertReference(src.getCandidate())); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + return tgt; + } + + private static org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus convertEnrollmentRequestStatus(org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus convertEnrollmentRequestStatus(org.hl7.fhir.r4.model.EnrollmentRequest.EnrollmentRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.EnrollmentRequest.EnrollmentRequestStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.dstu3.model.EnrollmentResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EnrollmentResponse tgt = new org.hl7.fhir.r4.model.EnrollmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEnrollmentResponseStatus(src.getStatus())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasRequestProvider()) + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + if (src.hasRequestOrganization()) + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EnrollmentResponse convertEnrollmentResponse(org.hl7.fhir.r4.model.EnrollmentResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EnrollmentResponse tgt = new org.hl7.fhir.dstu3.model.EnrollmentResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEnrollmentResponseStatus(src.getStatus())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasRequestProvider()) + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + if (src.hasRequestOrganization()) + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + return tgt; + } + + private static org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus convertEnrollmentResponseStatus(org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus convertEnrollmentResponseStatus(org.hl7.fhir.r4.model.EnrollmentResponse.EnrollmentResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.EnrollmentResponse.EnrollmentResponseStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.dstu3.model.EpisodeOfCare src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EpisodeOfCare tgt = new org.hl7.fhir.r4.model.EpisodeOfCare(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) + tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.EpisodeOfCare.DiagnosisComponent t : src.getDiagnosis()) + tgt.addDiagnosis(convertDiagnosisComponent(t)); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasManagingOrganization()) + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReferralRequest()) + tgt.addReferralRequest(convertReference(t)); + if (src.hasCareManager()) + tgt.setCareManager(convertReference(src.getCareManager())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getTeam()) + tgt.addTeam(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAccount()) + tgt.addAccount(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EpisodeOfCare convertEpisodeOfCare(org.hl7.fhir.r4.model.EpisodeOfCare src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EpisodeOfCare tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent t : src.getStatusHistory()) + tgt.addStatusHistory(convertEpisodeOfCareStatusHistoryComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.EpisodeOfCare.DiagnosisComponent t : src.getDiagnosis()) + tgt.addDiagnosis(convertDiagnosisComponent(t)); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasManagingOrganization()) + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.Reference t : src.getReferralRequest()) + tgt.addReferralRequest(convertReference(t)); + if (src.hasCareManager()) + tgt.setCareManager(convertReference(src.getCareManager())); + for (org.hl7.fhir.r4.model.Reference t : src.getTeam()) + tgt.addTeam(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getAccount()) + tgt.addAccount(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; + case WAITLIST: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; + case ACTIVE: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; + case ONHOLD: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; + case FINISHED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; + case CANCELLED: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus convertEpisodeOfCareStatus(org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PLANNED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.PLANNED; + case WAITLIST: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.WAITLIST; + case ACTIVE: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ACTIVE; + case ONHOLD: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ONHOLD; + case FINISHED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.FINISHED; + case CANCELLED: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); + copyElement(src, tgt); + if (src.hasStatus()) + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent convertEpisodeOfCareStatusHistoryComponent(org.hl7.fhir.r4.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare.EpisodeOfCareStatusHistoryComponent(); + copyElement(src, tgt); + if (src.hasStatus()) + tgt.setStatus(convertEpisodeOfCareStatus(src.getStatus())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.r4.model.EpisodeOfCare.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.dstu3.model.EpisodeOfCare.DiagnosisComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.EpisodeOfCare.DiagnosisComponent tgt = new org.hl7.fhir.r4.model.EpisodeOfCare.DiagnosisComponent(); + copyElement(src, tgt); + if (src.hasCondition()) + tgt.setCondition(convertReference(src.getCondition())); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.EpisodeOfCare.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.r4.model.EpisodeOfCare.DiagnosisComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.EpisodeOfCare.DiagnosisComponent tgt = new org.hl7.fhir.dstu3.model.EpisodeOfCare.DiagnosisComponent(); + copyElement(src, tgt); + if (src.hasCondition()) + tgt.setCondition(convertReference(src.getCondition())); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasRank()) + tgt.setRank(src.getRank()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExpansionProfile convertExpansionProfile(org.hl7.fhir.dstu3.model.ExpansionProfile src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExpansionProfile tgt = new org.hl7.fhir.r4.model.ExpansionProfile(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileFixedVersionComponent t : src.getFixedVersion()) + tgt.addFixedVersion(convertExpansionProfileFixedVersionComponent(t)); + if (src.hasExcludedSystem()) + tgt.setExcludedSystem(convertExpansionProfileExcludedSystemComponent(src.getExcludedSystem())); + if (src.hasIncludeDesignations()) + tgt.setIncludeDesignations(src.getIncludeDesignations()); + if (src.hasDesignation()) + tgt.setDesignation(convertExpansionProfileDesignationComponent(src.getDesignation())); + if (src.hasIncludeDefinition()) + tgt.setIncludeDefinition(src.getIncludeDefinition()); + if (src.hasActiveOnly()) + tgt.setActiveOnly(src.getActiveOnly()); + if (src.hasExcludeNested()) + tgt.setExcludeNested(src.getExcludeNested()); + if (src.hasExcludeNotForUI()) + tgt.setExcludeNotForUI(src.getExcludeNotForUI()); + if (src.hasExcludePostCoordinated()) + tgt.setExcludePostCoordinated(src.getExcludePostCoordinated()); + if (src.hasDisplayLanguage()) + tgt.setDisplayLanguage(src.getDisplayLanguage()); + if (src.hasLimitedExpansion()) + tgt.setLimitedExpansion(src.getLimitedExpansion()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExpansionProfile convertExpansionProfile(org.hl7.fhir.r4.model.ExpansionProfile src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExpansionProfile tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileFixedVersionComponent t : src.getFixedVersion()) + tgt.addFixedVersion(convertExpansionProfileFixedVersionComponent(t)); + if (src.hasExcludedSystem()) + tgt.setExcludedSystem(convertExpansionProfileExcludedSystemComponent(src.getExcludedSystem())); + if (src.hasIncludeDesignations()) + tgt.setIncludeDesignations(src.getIncludeDesignations()); + if (src.hasDesignation()) + tgt.setDesignation(convertExpansionProfileDesignationComponent(src.getDesignation())); + if (src.hasIncludeDefinition()) + tgt.setIncludeDefinition(src.getIncludeDefinition()); + if (src.hasActiveOnly()) + tgt.setActiveOnly(src.getActiveOnly()); + if (src.hasExcludeNested()) + tgt.setExcludeNested(src.getExcludeNested()); + if (src.hasExcludeNotForUI()) + tgt.setExcludeNotForUI(src.getExcludeNotForUI()); + if (src.hasExcludePostCoordinated()) + tgt.setExcludePostCoordinated(src.getExcludePostCoordinated()); + if (src.hasDisplayLanguage()) + tgt.setDisplayLanguage(src.getDisplayLanguage()); + if (src.hasLimitedExpansion()) + tgt.setLimitedExpansion(src.getLimitedExpansion()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileFixedVersionComponent convertExpansionProfileFixedVersionComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileFixedVersionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileFixedVersionComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileFixedVersionComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasMode()) + tgt.setMode(convertSystemVersionProcessingMode(src.getMode())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileFixedVersionComponent convertExpansionProfileFixedVersionComponent(org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileFixedVersionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileFixedVersionComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileFixedVersionComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasMode()) + tgt.setMode(convertSystemVersionProcessingMode(src.getMode())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode convertSystemVersionProcessingMode(org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DEFAULT: return org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode.DEFAULT; + case CHECK: return org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode.CHECK; + case OVERRIDE: return org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode.OVERRIDE; + default: return org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode convertSystemVersionProcessingMode(org.hl7.fhir.r4.model.ExpansionProfile.SystemVersionProcessingMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DEFAULT: return org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode.DEFAULT; + case CHECK: return org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode.CHECK; + case OVERRIDE: return org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode.OVERRIDE; + default: return org.hl7.fhir.dstu3.model.ExpansionProfile.SystemVersionProcessingMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent convertExpansionProfileExcludedSystemComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent convertExpansionProfileExcludedSystemComponent(org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileExcludedSystemComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileDesignationComponent convertExpansionProfileDesignationComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileDesignationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileDesignationComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileDesignationComponent(); + copyElement(src, tgt); + if (src.hasInclude()) + tgt.setInclude(convertDesignationIncludeComponent(src.getInclude())); + if (src.hasExclude()) + tgt.setExclude(convertDesignationExcludeComponent(src.getExclude())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileDesignationComponent convertExpansionProfileDesignationComponent(org.hl7.fhir.r4.model.ExpansionProfile.ExpansionProfileDesignationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.ExpansionProfileDesignationComponent(); + copyElement(src, tgt); + if (src.hasInclude()) + tgt.setInclude(convertDesignationIncludeComponent(src.getInclude())); + if (src.hasExclude()) + tgt.setExclude(convertDesignationExcludeComponent(src.getExclude())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeComponent convertDesignationIncludeComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertDesignationIncludeDesignationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeComponent convertDesignationIncludeComponent(org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertDesignationIncludeDesignationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeDesignationComponent convertDesignationIncludeDesignationComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeDesignationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeDesignationComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasUse()) + tgt.setUse(convertCoding(src.getUse())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeDesignationComponent convertDesignationIncludeDesignationComponent(org.hl7.fhir.r4.model.ExpansionProfile.DesignationIncludeDesignationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationIncludeDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasUse()) + tgt.setUse(convertCoding(src.getUse())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeComponent convertDesignationExcludeComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertDesignationExcludeDesignationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeComponent convertDesignationExcludeComponent(org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertDesignationExcludeDesignationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeDesignationComponent convertDesignationExcludeDesignationComponent(org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeDesignationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeDesignationComponent tgt = new org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasUse()) + tgt.setUse(convertCoding(src.getUse())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeDesignationComponent convertDesignationExcludeDesignationComponent(org.hl7.fhir.r4.model.ExpansionProfile.DesignationExcludeDesignationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ExpansionProfile.DesignationExcludeDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasUse()) + tgt.setUse(convertCoding(src.getUse())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit convertExplanationOfBenefit(org.hl7.fhir.dstu3.model.ExplanationOfBenefit src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertExplanationOfBenefitStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubType()) + tgt.addSubType(convertCodeableConcept(t)); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasBillablePeriod()) + tgt.setBillablePeriod(convertPeriod(src.getBillablePeriod())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasEnterer()) + tgt.setEnterer(convertReference(src.getEnterer())); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasReferral()) + tgt.setReferral(convertReference(src.getReferral())); + if (src.hasFacility()) + tgt.setFacility(convertReference(src.getFacility())); + if (src.hasClaim()) + tgt.setClaim(convertReference(src.getClaim())); + if (src.hasClaimResponse()) + tgt.setClaimResponse(convertReference(src.getClaimResponse())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.RelatedClaimComponent t : src.getRelated()) + tgt.addRelated(convertRelatedClaimComponent(t)); + if (src.hasPrescription()) + tgt.setPrescription(convertReference(src.getPrescription())); + if (src.hasOriginalPrescription()) + tgt.setOriginalPrescription(convertReference(src.getOriginalPrescription())); + if (src.hasPayee()) + tgt.setPayee(convertPayeeComponent(src.getPayee())); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SupportingInformationComponent t : src.getInformation()) + tgt.addInformation(convertSupportingInformationComponent(t)); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.CareTeamComponent t : src.getCareTeam()) + tgt.addCareTeam(convertCareTeamComponent(t)); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DiagnosisComponent t : src.getDiagnosis()) + tgt.addDiagnosis(convertDiagnosisComponent(t)); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ProcedureComponent t : src.getProcedure()) + tgt.addProcedure(convertProcedureComponent(t)); + if (src.hasPrecedence()) + tgt.setPrecedence(src.getPrecedence()); + if (src.hasInsurance()) + tgt.setInsurance(convertInsuranceComponent(src.getInsurance())); + if (src.hasAccident()) + tgt.setAccident(convertAccidentComponent(src.getAccident())); + if (src.hasEmploymentImpacted()) + tgt.setEmploymentImpacted(convertPeriod(src.getEmploymentImpacted())); + if (src.hasHospitalization()) + tgt.setHospitalization(convertPeriod(src.getHospitalization())); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ItemComponent t : src.getItem()) + tgt.addItem(convertItemComponent(t)); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemComponent t : src.getAddItem()) + tgt.addAddItem(convertAddedItemComponent(t)); + if (src.hasTotalCost()) + tgt.setTotalCost(convertMoney(src.getTotalCost())); + if (src.hasUnallocDeductable()) + tgt.setUnallocDeductable(convertMoney(src.getUnallocDeductable())); + if (src.hasTotalBenefit()) + tgt.setTotalBenefit(convertMoney(src.getTotalBenefit())); + if (src.hasPayment()) + tgt.setPayment(convertPaymentComponent(src.getPayment())); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.NoteComponent t : src.getProcessNote()) + tgt.addProcessNote(convertNoteComponent(t)); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitBalanceComponent t : src.getBenefitBalance()) + tgt.addBenefitBalance(convertBenefitBalanceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit convertExplanationOfBenefit(org.hl7.fhir.r4.model.ExplanationOfBenefit src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertExplanationOfBenefitStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubType()) + tgt.addSubType(convertCodeableConcept(t)); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasBillablePeriod()) + tgt.setBillablePeriod(convertPeriod(src.getBillablePeriod())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasEnterer()) + tgt.setEnterer(convertReference(src.getEnterer())); + if (src.hasInsurer()) + tgt.setInsurer(convertReference(src.getInsurer())); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasReferral()) + tgt.setReferral(convertReference(src.getReferral())); + if (src.hasFacility()) + tgt.setFacility(convertReference(src.getFacility())); + if (src.hasClaim()) + tgt.setClaim(convertReference(src.getClaim())); + if (src.hasClaimResponse()) + tgt.setClaimResponse(convertReference(src.getClaimResponse())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.RelatedClaimComponent t : src.getRelated()) + tgt.addRelated(convertRelatedClaimComponent(t)); + if (src.hasPrescription()) + tgt.setPrescription(convertReference(src.getPrescription())); + if (src.hasOriginalPrescription()) + tgt.setOriginalPrescription(convertReference(src.getOriginalPrescription())); + if (src.hasPayee()) + tgt.setPayee(convertPayeeComponent(src.getPayee())); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.SupportingInformationComponent t : src.getInformation()) + tgt.addInformation(convertSupportingInformationComponent(t)); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.CareTeamComponent t : src.getCareTeam()) + tgt.addCareTeam(convertCareTeamComponent(t)); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.DiagnosisComponent t : src.getDiagnosis()) + tgt.addDiagnosis(convertDiagnosisComponent(t)); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.ProcedureComponent t : src.getProcedure()) + tgt.addProcedure(convertProcedureComponent(t)); + if (src.hasPrecedence()) + tgt.setPrecedence(src.getPrecedence()); + if (src.hasInsurance()) + tgt.setInsurance(convertInsuranceComponent(src.getInsurance())); + if (src.hasAccident()) + tgt.setAccident(convertAccidentComponent(src.getAccident())); + if (src.hasEmploymentImpacted()) + tgt.setEmploymentImpacted(convertPeriod(src.getEmploymentImpacted())); + if (src.hasHospitalization()) + tgt.setHospitalization(convertPeriod(src.getHospitalization())); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.ItemComponent t : src.getItem()) + tgt.addItem(convertItemComponent(t)); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemComponent t : src.getAddItem()) + tgt.addAddItem(convertAddedItemComponent(t)); + if (src.hasTotalCost()) + tgt.setTotalCost(convertMoney(src.getTotalCost())); + if (src.hasUnallocDeductable()) + tgt.setUnallocDeductable(convertMoney(src.getUnallocDeductable())); + if (src.hasTotalBenefit()) + tgt.setTotalBenefit(convertMoney(src.getTotalBenefit())); + if (src.hasPayment()) + tgt.setPayment(convertPaymentComponent(src.getPayment())); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.NoteComponent t : src.getProcessNote()) + tgt.addProcessNote(convertNoteComponent(t)); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitBalanceComponent t : src.getBenefitBalance()) + tgt.addBenefitBalance(convertBenefitBalanceComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus convertExplanationOfBenefitStatus(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus convertExplanationOfBenefitStatus(org.hl7.fhir.r4.model.ExplanationOfBenefit.ExplanationOfBenefitStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ExplanationOfBenefitStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.RelatedClaimComponent convertRelatedClaimComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.RelatedClaimComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.RelatedClaimComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.RelatedClaimComponent(); + copyElement(src, tgt); + if (src.hasClaim()) + tgt.setClaim(convertReference(src.getClaim())); + if (src.hasRelationship()) + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + if (src.hasReference()) + tgt.setReference(convertIdentifier(src.getReference())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.RelatedClaimComponent convertRelatedClaimComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.RelatedClaimComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.RelatedClaimComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.RelatedClaimComponent(); + copyElement(src, tgt); + if (src.hasClaim()) + tgt.setClaim(convertReference(src.getClaim())); + if (src.hasRelationship()) + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + if (src.hasReference()) + tgt.setReference(convertIdentifier(src.getReference())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.PayeeComponent convertPayeeComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PayeeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.PayeeComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.PayeeComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasResourceType()) + tgt.setResource(convertCoding(src.getResourceType().getCodingFirstRep())); + if (src.hasParty()) + tgt.setParty(convertReference(src.getParty())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PayeeComponent convertPayeeComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.PayeeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PayeeComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PayeeComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasParty()) + tgt.setParty(convertReference(src.getParty())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.SupportingInformationComponent convertSupportingInformationComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SupportingInformationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.SupportingInformationComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.SupportingInformationComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasReason()) + tgt.setReason(convertCoding(src.getReason())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SupportingInformationComponent convertSupportingInformationComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.SupportingInformationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SupportingInformationComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SupportingInformationComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasReason()) + tgt.setReason(convertCoding(src.getReason())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.CareTeamComponent convertCareTeamComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.CareTeamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.CareTeamComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.CareTeamComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasResponsible()) + tgt.setResponsible(src.getResponsible()); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasQualification()) + tgt.setQualification(convertCodeableConcept(src.getQualification())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.CareTeamComponent convertCareTeamComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.CareTeamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.CareTeamComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.CareTeamComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasResponsible()) + tgt.setResponsible(src.getResponsible()); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasQualification()) + tgt.setQualification(convertCodeableConcept(src.getQualification())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DiagnosisComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.DiagnosisComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.DiagnosisComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasDiagnosis()) + tgt.setDiagnosis(convertType(src.getDiagnosis())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasPackageCode()) + tgt.setPackageCode(convertCodeableConcept(src.getPackageCode())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DiagnosisComponent convertDiagnosisComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.DiagnosisComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DiagnosisComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DiagnosisComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasDiagnosis()) + tgt.setDiagnosis(convertType(src.getDiagnosis())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasPackageCode()) + tgt.setPackageCode(convertCodeableConcept(src.getPackageCode())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.ProcedureComponent convertProcedureComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ProcedureComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.ProcedureComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.ProcedureComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasProcedure()) + tgt.setProcedure(convertType(src.getProcedure())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ProcedureComponent convertProcedureComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.ProcedureComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ProcedureComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ProcedureComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasProcedure()) + tgt.setProcedure(convertType(src.getProcedure())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.InsuranceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.InsuranceComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.InsuranceComponent(); + copyElement(src, tgt); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + for (org.hl7.fhir.dstu3.model.StringType t : src.getPreAuthRef()) + tgt.addPreAuthRef(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.InsuranceComponent convertInsuranceComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.InsuranceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.InsuranceComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.InsuranceComponent(); + copyElement(src, tgt); + if (src.hasCoverage()) + tgt.setCoverage(convertReference(src.getCoverage())); + for (org.hl7.fhir.r4.model.StringType t : src.getPreAuthRef()) + tgt.addPreAuthRef(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.AccidentComponent convertAccidentComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AccidentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.AccidentComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.AccidentComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasLocation()) + tgt.setLocation(convertType(src.getLocation())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AccidentComponent convertAccidentComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.AccidentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AccidentComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AccidentComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasLocation()) + tgt.setLocation(convertType(src.getLocation())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.ItemComponent convertItemComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.ItemComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.ItemComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getCareTeamLinkId()) + tgt.addCareTeamLinkId(t.getValue()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getDiagnosisLinkId()) + tgt.addDiagnosisLinkId(t.getValue()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getProcedureLinkId()) + tgt.addProcedureLinkId(t.getValue()); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getInformationLinkId()) + tgt.addInformationLinkId(t.getValue()); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasServiced()) + tgt.setServiced(convertType(src.getServiced())); + if (src.hasLocation()) + tgt.setLocation(convertType(src.getLocation())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSubSite()) + tgt.addSubSite(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEncounter()) + tgt.addEncounter(convertReference(t)); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DetailComponent t : src.getDetail()) + tgt.addDetail(convertDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ItemComponent convertItemComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.ItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ItemComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.ItemComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getCareTeamLinkId()) + tgt.addCareTeamLinkId(t.getValue()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getDiagnosisLinkId()) + tgt.addDiagnosisLinkId(t.getValue()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getProcedureLinkId()) + tgt.addProcedureLinkId(t.getValue()); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getInformationLinkId()) + tgt.addInformationLinkId(t.getValue()); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasServiced()) + tgt.setServiced(convertType(src.getServiced())); + if (src.hasLocation()) + tgt.setLocation(convertType(src.getLocation())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSubSite()) + tgt.addSubSite(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getEncounter()) + tgt.addEncounter(convertReference(t)); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.DetailComponent t : src.getDetail()) + tgt.addDetail(convertDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent convertAdjudicationComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + if (src.hasAmount()) + tgt.setAmount(convertMoney(src.getAmount())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent convertAdjudicationComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + if (src.hasAmount()) + tgt.setAmount(convertMoney(src.getAmount())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.DetailComponent convertDetailComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.DetailComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.DetailComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SubDetailComponent t : src.getSubDetail()) + tgt.addSubDetail(convertSubDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DetailComponent convertDetailComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.DetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DetailComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.DetailComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.SubDetailComponent t : src.getSubDetail()) + tgt.addSubDetail(convertSubDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SubDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.SubDetailComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.SubDetailComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SubDetailComponent convertSubDetailComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.SubDetailComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SubDetailComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.SubDetailComponent(); + copyElement(src, tgt); + if (src.hasSequence()) + tgt.setSequence(src.getSequence()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasRevenue()) + tgt.setRevenue(convertCodeableConcept(src.getRevenue())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasService()) + tgt.setService(convertCodeableConcept(src.getService())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) + tgt.addModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProgramCode()) + tgt.addProgramCode(convertCodeableConcept(t)); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasUnitPrice()) + tgt.setUnitPrice(convertMoney(src.getUnitPrice())); + if (src.hasFactor()) + tgt.setFactor(src.getFactor()); + if (src.hasNet()) + tgt.setNet(convertMoney(src.getNet())); + for (org.hl7.fhir.r4.model.Reference t : src.getUdi()) + tgt.addUdi(convertReference(t)); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) + tgt.addNoteNumber(t.getValue()); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) + tgt.addAdjudication(convertAdjudicationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemComponent convertAddedItemComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemComponent(); + copyElement(src, tgt); +// for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getSequenceLinkId()) +// tgt.addSequenceLinkId(t.getValue()); +// if (src.hasRevenue()) +// tgt.setRevenue(convertCodeableConcept(src.getRevenue())); +// if (src.hasCategory()) +// tgt.setCategory(convertCodeableConcept(src.getCategory())); +// if (src.hasService()) +// tgt.setService(convertCodeableConcept(src.getService())); +// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) +// tgt.addModifier(convertCodeableConcept(t)); +// if (src.hasFee()) +// tgt.setFee(convertMoney(src.getFee())); +// for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) +// tgt.addNoteNumber(t.getValue()); +// for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) +// tgt.addAdjudication(convertAdjudicationComponent(t)); +// for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemsDetailComponent t : src.getDetail()) +// tgt.addDetail(convertAddedItemsDetailComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemComponent convertAddedItemComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.PositiveIntType t : src.getSequenceLinkId()) + tgt.addSequenceLinkId(t.getValue()); +// if (src.hasRevenue()) +// tgt.setRevenue(convertCodeableConcept(src.getRevenue())); +// if (src.hasCategory()) +// tgt.setCategory(convertCodeableConcept(src.getCategory())); +// if (src.hasService()) +// tgt.setService(convertCodeableConcept(src.getService())); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) +// tgt.addModifier(convertCodeableConcept(t)); +// if (src.hasFee()) +// tgt.setFee(convertMoney(src.getFee())); +// for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) +// tgt.addNoteNumber(t.getValue()); +// for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) +// tgt.addAdjudication(convertAdjudicationComponent(t)); +// for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemsDetailComponent t : src.getDetail()) +// tgt.addDetail(convertAddedItemsDetailComponent(t)); + return tgt; + } + +// public static org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemsDetailComponent convertAddedItemsDetailComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemsDetailComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemsDetailComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemsDetailComponent(); +// copyElement(src, tgt); +// if (src.hasRevenue()) +// tgt.setRevenue(convertCodeableConcept(src.getRevenue())); +// if (src.hasCategory()) +// tgt.setCategory(convertCodeableConcept(src.getCategory())); +// if (src.hasService()) +// tgt.setService(convertCodeableConcept(src.getService())); +// for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getModifier()) +// tgt.addModifier(convertCodeableConcept(t)); +// if (src.hasFee()) +// tgt.setFee(convertMoney(src.getFee())); +// for (org.hl7.fhir.dstu3.model.PositiveIntType t : src.getNoteNumber()) +// tgt.addNoteNumber(t.getValue()); +// for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) +// tgt.addAdjudication(convertAdjudicationComponent(t)); +// return tgt; +// } + +// public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemsDetailComponent convertAddedItemsDetailComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.AddedItemsDetailComponent src) throws FHIRException { +// if (src == null) +// return null; +// org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemsDetailComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.AddedItemsDetailComponent(); +// copyElement(src, tgt); +// if (src.hasRevenue()) +// tgt.setRevenue(convertCodeableConcept(src.getRevenue())); +// if (src.hasCategory()) +// tgt.setCategory(convertCodeableConcept(src.getCategory())); +// if (src.hasService()) +// tgt.setService(convertCodeableConcept(src.getService())); +// for (org.hl7.fhir.r4.model.CodeableConcept t : src.getModifier()) +// tgt.addModifier(convertCodeableConcept(t)); +// if (src.hasFee()) +// tgt.setFee(convertMoney(src.getFee())); +// for (org.hl7.fhir.r4.model.PositiveIntType t : src.getNoteNumber()) +// tgt.addNoteNumber(t.getValue()); +// for (org.hl7.fhir.r4.model.ExplanationOfBenefit.AdjudicationComponent t : src.getAdjudication()) +// tgt.addAdjudication(convertAdjudicationComponent(t)); +// return tgt; +// } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.PaymentComponent convertPaymentComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PaymentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.PaymentComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.PaymentComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasAdjustment()) + tgt.setAdjustment(convertMoney(src.getAdjustment())); + if (src.hasAdjustmentReason()) + tgt.setAdjustmentReason(convertCodeableConcept(src.getAdjustmentReason())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAmount()) + tgt.setAmount(convertMoney(src.getAmount())); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PaymentComponent convertPaymentComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.PaymentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PaymentComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.PaymentComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasAdjustment()) + tgt.setAdjustment(convertMoney(src.getAdjustment())); + if (src.hasAdjustmentReason()) + tgt.setAdjustmentReason(convertCodeableConcept(src.getAdjustmentReason())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAmount()) + tgt.setAmount(convertMoney(src.getAmount())); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.NoteComponent convertNoteComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.NoteComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.NoteComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.NoteComponent(); + copyElement(src, tgt); + if (src.hasNumber()) + tgt.setNumber(src.getNumber()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasLanguage()) + tgt.setLanguage(convertCodeableConcept(src.getLanguage())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.NoteComponent convertNoteComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.NoteComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.NoteComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.NoteComponent(); + copyElement(src, tgt); + if (src.hasNumber()) + tgt.setNumber(src.getNumber()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasLanguage()) + tgt.setLanguage(convertCodeableConcept(src.getLanguage())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitBalanceComponent convertBenefitBalanceComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitBalanceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitBalanceComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitBalanceComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasSubCategory()) + tgt.setSubCategory(convertCodeableConcept(src.getSubCategory())); + if (src.hasExcluded()) + tgt.setExcluded(src.getExcluded()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasNetwork()) + tgt.setNetwork(convertCodeableConcept(src.getNetwork())); + if (src.hasUnit()) + tgt.setUnit(convertCodeableConcept(src.getUnit())); + if (src.hasTerm()) + tgt.setTerm(convertCodeableConcept(src.getTerm())); + for (org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitComponent t : src.getFinancial()) + tgt.addFinancial(convertBenefitComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitBalanceComponent convertBenefitBalanceComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitBalanceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitBalanceComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitBalanceComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasSubCategory()) + tgt.setSubCategory(convertCodeableConcept(src.getSubCategory())); + if (src.hasExcluded()) + tgt.setExcluded(src.getExcluded()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasNetwork()) + tgt.setNetwork(convertCodeableConcept(src.getNetwork())); + if (src.hasUnit()) + tgt.setUnit(convertCodeableConcept(src.getUnit())); + if (src.hasTerm()) + tgt.setTerm(convertCodeableConcept(src.getTerm())); + for (org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitComponent t : src.getFinancial()) + tgt.addFinancial(convertBenefitComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitComponent convertBenefitComponent(org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitComponent tgt = new org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasAllowed()) + tgt.setAllowed(convertType(src.getAllowed())); + if (src.hasUsed()) + tgt.setUsed(convertType(src.getUsed())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitComponent convertBenefitComponent(org.hl7.fhir.r4.model.ExplanationOfBenefit.BenefitComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitComponent tgt = new org.hl7.fhir.dstu3.model.ExplanationOfBenefit.BenefitComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasAllowed()) + tgt.setAllowed(convertType(src.getAllowed())); + if (src.hasUsed()) + tgt.setUsed(convertType(src.getUsed())); + return tgt; + } + + public static org.hl7.fhir.r4.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.dstu3.model.FamilyMemberHistory src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.FamilyMemberHistory tgt = new org.hl7.fhir.r4.model.FamilyMemberHistory(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); + if (src.hasNotDoneReason()) + tgt.setDataAbsentReason(convertCodeableConcept(src.getNotDoneReason())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasRelationship()) + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasBorn()) + tgt.setBorn(convertType(src.getBorn())); + if (src.hasAge()) + tgt.setAge(convertType(src.getAge())); + if (src.hasEstimatedAge()) + tgt.setEstimatedAge(src.getEstimatedAge()); + if (src.hasDeceased()) + tgt.setDeceased(convertType(src.getDeceased())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) + tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.FamilyMemberHistory convertFamilyMemberHistory(org.hl7.fhir.r4.model.FamilyMemberHistory src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.FamilyMemberHistory tgt = new org.hl7.fhir.dstu3.model.FamilyMemberHistory(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertFamilyHistoryStatus(src.getStatus())); + if (src.hasDataAbsentReason()) + tgt.setNotDoneReason(convertCodeableConcept(src.getDataAbsentReason())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasRelationship()) + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasBorn()) + tgt.setBorn(convertType(src.getBorn())); + if (src.hasAge()) + tgt.setAge(convertType(src.getAge())); + if (src.hasEstimatedAge()) + tgt.setEstimatedAge(src.getEstimatedAge()); + if (src.hasDeceased()) + tgt.setDeceased(convertType(src.getDeceased())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent t : src.getCondition()) + tgt.addCondition(convertFamilyMemberHistoryConditionComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PARTIAL: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; + case COMPLETED: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; + case HEALTHUNKNOWN: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; + default: return org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus convertFamilyHistoryStatus(org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyHistoryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PARTIAL: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.PARTIAL; + case COMPLETED: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.ENTEREDINERROR; + case HEALTHUNKNOWN: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.HEALTHUNKNOWN; + default: return org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyHistoryStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MALE: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.MALE; + case FEMALE: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.FEMALE; + case OTHER: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.OTHER; + case UNKNOWN: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.UNKNOWN; + default: return org.hl7.fhir.r4.model.Enumerations.AdministrativeGender.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender convertAdministrativeGender(org.hl7.fhir.r4.model.Enumerations.AdministrativeGender src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MALE: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.MALE; + case FEMALE: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.FEMALE; + case OTHER: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.OTHER; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Enumerations.AdministrativeGender.NULL; + } +} + + public static org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasOnset()) + tgt.setOnset(convertType(src.getOnset())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent convertFamilyMemberHistoryConditionComponent(org.hl7.fhir.r4.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent tgt = new org.hl7.fhir.dstu3.model.FamilyMemberHistory.FamilyMemberHistoryConditionComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasOnset()) + tgt.setOnset(convertType(src.getOnset())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Flag convertFlag(org.hl7.fhir.dstu3.model.Flag src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Flag tgt = new org.hl7.fhir.r4.model.Flag(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertFlagStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Flag convertFlag(org.hl7.fhir.r4.model.Flag src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Flag tgt = new org.hl7.fhir.dstu3.model.Flag(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertFlagStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.dstu3.model.Flag.FlagStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Flag.FlagStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.r4.model.Flag.FlagStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Flag.FlagStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Flag.FlagStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Flag.FlagStatus convertFlagStatus(org.hl7.fhir.r4.model.Flag.FlagStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Flag.FlagStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Goal convertGoal(org.hl7.fhir.dstu3.model.Goal src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Goal tgt = new org.hl7.fhir.r4.model.Goal(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertGoalStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasPriority()) + tgt.setPriority(convertCodeableConcept(src.getPriority())); + if (src.hasDescription()) + tgt.setDescription(convertCodeableConcept(src.getDescription())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasStart()) + tgt.setStart(convertType(src.getStart())); + if (src.hasTarget()) + tgt.setTarget(convertGoalTargetComponent(src.getTarget())); + if (src.hasStatusDate()) + tgt.setStatusDate(src.getStatusDate()); + if (src.hasStatusReason()) + tgt.setStatusReason(src.getStatusReason()); + if (src.hasExpressedBy()) + tgt.setExpressedBy(convertReference(src.getExpressedBy())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAddresses()) + tgt.addAddresses(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getOutcomeCode()) + tgt.addOutcomeCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getOutcomeReference()) + tgt.addOutcomeReference(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Goal convertGoal(org.hl7.fhir.r4.model.Goal src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Goal tgt = new org.hl7.fhir.dstu3.model.Goal(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertGoalStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasPriority()) + tgt.setPriority(convertCodeableConcept(src.getPriority())); + if (src.hasDescription()) + tgt.setDescription(convertCodeableConcept(src.getDescription())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasStart()) + tgt.setStart(convertType(src.getStart())); + if (src.hasTarget()) + tgt.setTarget(convertGoalTargetComponent(src.getTarget())); + if (src.hasStatusDate()) + tgt.setStatusDate(src.getStatusDate()); + if (src.hasStatusReason()) + tgt.setStatusReason(src.getStatusReason()); + if (src.hasExpressedBy()) + tgt.setExpressedBy(convertReference(src.getExpressedBy())); + for (org.hl7.fhir.r4.model.Reference t : src.getAddresses()) + tgt.addAddresses(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getOutcomeCode()) + tgt.addOutcomeCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getOutcomeReference()) + tgt.addOutcomeReference(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Goal.GoalStatus convertGoalStatus(org.hl7.fhir.dstu3.model.Goal.GoalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.r4.model.Goal.GoalStatus.PROPOSED; + case ACCEPTED: return org.hl7.fhir.r4.model.Goal.GoalStatus.ACCEPTED; + case PLANNED: return org.hl7.fhir.r4.model.Goal.GoalStatus.PLANNED; + case INPROGRESS: return org.hl7.fhir.r4.model.Goal.GoalStatus.INPROGRESS; + case ONTARGET: return org.hl7.fhir.r4.model.Goal.GoalStatus.ONTARGET; + case AHEADOFTARGET: return org.hl7.fhir.r4.model.Goal.GoalStatus.AHEADOFTARGET; + case BEHINDTARGET: return org.hl7.fhir.r4.model.Goal.GoalStatus.BEHINDTARGET; + case SUSTAINING: return org.hl7.fhir.r4.model.Goal.GoalStatus.SUSTAINING; + case ACHIEVED: return org.hl7.fhir.r4.model.Goal.GoalStatus.ACHIEVED; + case ONHOLD: return org.hl7.fhir.r4.model.Goal.GoalStatus.ONHOLD; + case CANCELLED: return org.hl7.fhir.r4.model.Goal.GoalStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Goal.GoalStatus.ENTEREDINERROR; + case REJECTED: return org.hl7.fhir.r4.model.Goal.GoalStatus.REJECTED; + default: return org.hl7.fhir.r4.model.Goal.GoalStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Goal.GoalStatus convertGoalStatus(org.hl7.fhir.r4.model.Goal.GoalStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.PROPOSED; + case ACCEPTED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.ACCEPTED; + case PLANNED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.PLANNED; + case INPROGRESS: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.INPROGRESS; + case ONTARGET: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.ONTARGET; + case AHEADOFTARGET: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.AHEADOFTARGET; + case BEHINDTARGET: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.BEHINDTARGET; + case SUSTAINING: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.SUSTAINING; + case ACHIEVED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.ACHIEVED; + case ONHOLD: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.ONHOLD; + case CANCELLED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.ENTEREDINERROR; + case REJECTED: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.REJECTED; + default: return org.hl7.fhir.dstu3.model.Goal.GoalStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Goal.GoalTargetComponent convertGoalTargetComponent(org.hl7.fhir.dstu3.model.Goal.GoalTargetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Goal.GoalTargetComponent tgt = new org.hl7.fhir.r4.model.Goal.GoalTargetComponent(); + copyElement(src, tgt); + if (src.hasMeasure()) + tgt.setMeasure(convertCodeableConcept(src.getMeasure())); + if (src.hasDetail()) + tgt.setDetail(convertType(src.getDetail())); + if (src.hasDue()) + tgt.setDue(convertType(src.getDue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Goal.GoalTargetComponent convertGoalTargetComponent(org.hl7.fhir.r4.model.Goal.GoalTargetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Goal.GoalTargetComponent tgt = new org.hl7.fhir.dstu3.model.Goal.GoalTargetComponent(); + copyElement(src, tgt); + if (src.hasMeasure()) + tgt.setMeasure(convertCodeableConcept(src.getMeasure())); + if (src.hasDetail()) + tgt.setDetail(convertType(src.getDetail())); + if (src.hasDue()) + tgt.setDue(convertType(src.getDue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.GraphDefinition convertGraphDefinition(org.hl7.fhir.dstu3.model.GraphDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.GraphDefinition tgt = new org.hl7.fhir.r4.model.GraphDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasProfile()) + tgt.setProfile(src.getProfile()); + for (org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent t : src.getLink()) + tgt.addLink(convertGraphDefinitionLinkComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.GraphDefinition convertGraphDefinition(org.hl7.fhir.r4.model.GraphDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.GraphDefinition tgt = new org.hl7.fhir.dstu3.model.GraphDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasProfile()) + tgt.setProfile(src.getProfile()); + for (org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent t : src.getLink()) + tgt.addLink(convertGraphDefinitionLinkComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent convertGraphDefinitionLinkComponent(org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent tgt = new org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent(); + copyElement(src, tgt); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasSliceName()) + tgt.setSliceName(src.getSliceName()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetComponent t : src.getTarget()) + tgt.addTarget(convertGraphDefinitionLinkTargetComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent convertGraphDefinitionLinkComponent(org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent tgt = new org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent(); + copyElement(src, tgt); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasSliceName()) + tgt.setSliceName(src.getSliceName()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetComponent t : src.getTarget()) + tgt.addTarget(convertGraphDefinitionLinkTargetComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetComponent convertGraphDefinitionLinkTargetComponent(org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetComponent tgt = new org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(src.getProfile()); + for (org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent t : src.getCompartment()) + tgt.addCompartment(convertGraphDefinitionLinkTargetCompartmentComponent(t)); + for (org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkComponent t : src.getLink()) + tgt.addLink(convertGraphDefinitionLinkComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetComponent convertGraphDefinitionLinkTargetComponent(org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetComponent tgt = new org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(src.getProfile()); + for (org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent t : src.getCompartment()) + tgt.addCompartment(convertGraphDefinitionLinkTargetCompartmentComponent(t)); + for (org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkComponent t : src.getLink()) + tgt.addLink(convertGraphDefinitionLinkComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent convertGraphDefinitionLinkTargetCompartmentComponent(org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent tgt = new org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCompartmentCode(src.getCode())); + if (src.hasRule()) + tgt.setRule(convertGraphCompartmentRule(src.getRule())); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent convertGraphDefinitionLinkTargetCompartmentComponent(org.hl7.fhir.r4.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent tgt = new org.hl7.fhir.dstu3.model.GraphDefinition.GraphDefinitionLinkTargetCompartmentComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCompartmentCode(src.getCode())); + if (src.hasRule()) + tgt.setRule(convertGraphCompartmentRule(src.getRule())); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + private static org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode convertCompartmentCode(org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.PATIENT; + case ENCOUNTER: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.ENCOUNTER; + case RELATEDPERSON: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.RELATEDPERSON; + case PRACTITIONER: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.PRACTITIONER; + case DEVICE: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.DEVICE; + default: return org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode convertCompartmentCode(org.hl7.fhir.r4.model.GraphDefinition.CompartmentCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.PATIENT; + case ENCOUNTER: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.ENCOUNTER; + case RELATEDPERSON: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.RELATEDPERSON; + case PRACTITIONER: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.PRACTITIONER; + case DEVICE: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.DEVICE; + default: return org.hl7.fhir.dstu3.model.GraphDefinition.CompartmentCode.NULL; + } +} + + private static org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule convertGraphCompartmentRule(org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IDENTICAL: return org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule.IDENTICAL; + case MATCHING: return org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule.MATCHING; + case DIFFERENT: return org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule.DIFFERENT; + case CUSTOM: return org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule.CUSTOM; + default: return org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule convertGraphCompartmentRule(org.hl7.fhir.r4.model.GraphDefinition.GraphCompartmentRule src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IDENTICAL: return org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule.IDENTICAL; + case MATCHING: return org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule.MATCHING; + case DIFFERENT: return org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule.DIFFERENT; + case CUSTOM: return org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule.CUSTOM; + default: return org.hl7.fhir.dstu3.model.GraphDefinition.GraphCompartmentRule.NULL; + } +} + + public static org.hl7.fhir.r4.model.Group convertGroup(org.hl7.fhir.dstu3.model.Group src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Group tgt = new org.hl7.fhir.r4.model.Group(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasType()) + tgt.setType(convertGroupType(src.getType())); + if (src.hasActual()) + tgt.setActual(src.getActual()); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasQuantity()) + tgt.setQuantity(src.getQuantity()); + for (org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) + tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); + for (org.hl7.fhir.dstu3.model.Group.GroupMemberComponent t : src.getMember()) + tgt.addMember(convertGroupMemberComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Group convertGroup(org.hl7.fhir.r4.model.Group src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Group tgt = new org.hl7.fhir.dstu3.model.Group(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasType()) + tgt.setType(convertGroupType(src.getType())); + if (src.hasActual()) + tgt.setActual(src.getActual()); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasQuantity()) + tgt.setQuantity(src.getQuantity()); + for (org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent t : src.getCharacteristic()) + tgt.addCharacteristic(convertGroupCharacteristicComponent(t)); + for (org.hl7.fhir.r4.model.Group.GroupMemberComponent t : src.getMember()) + tgt.addMember(convertGroupMemberComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Group.GroupType convertGroupType(org.hl7.fhir.dstu3.model.Group.GroupType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSON: return org.hl7.fhir.r4.model.Group.GroupType.PERSON; + case ANIMAL: return org.hl7.fhir.r4.model.Group.GroupType.ANIMAL; + case PRACTITIONER: return org.hl7.fhir.r4.model.Group.GroupType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.r4.model.Group.GroupType.DEVICE; + case MEDICATION: return org.hl7.fhir.r4.model.Group.GroupType.MEDICATION; + case SUBSTANCE: return org.hl7.fhir.r4.model.Group.GroupType.SUBSTANCE; + default: return org.hl7.fhir.r4.model.Group.GroupType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Group.GroupType convertGroupType(org.hl7.fhir.r4.model.Group.GroupType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PERSON: return org.hl7.fhir.dstu3.model.Group.GroupType.PERSON; + case ANIMAL: return org.hl7.fhir.dstu3.model.Group.GroupType.ANIMAL; + case PRACTITIONER: return org.hl7.fhir.dstu3.model.Group.GroupType.PRACTITIONER; + case DEVICE: return org.hl7.fhir.dstu3.model.Group.GroupType.DEVICE; + case MEDICATION: return org.hl7.fhir.dstu3.model.Group.GroupType.MEDICATION; + case SUBSTANCE: return org.hl7.fhir.dstu3.model.Group.GroupType.SUBSTANCE; + default: return org.hl7.fhir.dstu3.model.Group.GroupType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasExclude()) + tgt.setExclude(src.getExclude()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent convertGroupCharacteristicComponent(org.hl7.fhir.r4.model.Group.GroupCharacteristicComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent tgt = new org.hl7.fhir.dstu3.model.Group.GroupCharacteristicComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasExclude()) + tgt.setExclude(src.getExclude()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.dstu3.model.Group.GroupMemberComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.r4.model.Group.GroupMemberComponent(); + copyElement(src, tgt); + if (src.hasEntity()) + tgt.setEntity(convertReference(src.getEntity())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasInactive()) + tgt.setInactive(src.getInactive()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Group.GroupMemberComponent convertGroupMemberComponent(org.hl7.fhir.r4.model.Group.GroupMemberComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Group.GroupMemberComponent tgt = new org.hl7.fhir.dstu3.model.Group.GroupMemberComponent(); + copyElement(src, tgt); + if (src.hasEntity()) + tgt.setEntity(convertReference(src.getEntity())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasInactive()) + tgt.setInactive(src.getInactive()); + return tgt; + } + + public static org.hl7.fhir.r4.model.GuidanceResponse convertGuidanceResponse(org.hl7.fhir.dstu3.model.GuidanceResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.GuidanceResponse tgt = new org.hl7.fhir.r4.model.GuidanceResponse(); + copyDomainResource(src, tgt); + if (src.hasRequestId()) + tgt.setRequestId(src.getRequestId()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasModule()) + tgt.setModule(convertReference(src.getModule())); + if (src.hasStatus()) + tgt.setStatus(convertGuidanceResponseStatus(src.getStatus())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrenceDateTime()) + tgt.setOccurrenceDateTime(src.getOccurrenceDateTime()); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + if (src.hasReason()) + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEvaluationMessage()) + tgt.addEvaluationMessage(convertReference(t)); + if (src.hasOutputParameters()) + tgt.setOutputParameters(convertReference(src.getOutputParameters())); + if (src.hasResult()) + tgt.setResult(convertReference(src.getResult())); + for (org.hl7.fhir.dstu3.model.DataRequirement t : src.getDataRequirement()) + tgt.addDataRequirement(convertDataRequirement(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.GuidanceResponse convertGuidanceResponse(org.hl7.fhir.r4.model.GuidanceResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.GuidanceResponse tgt = new org.hl7.fhir.dstu3.model.GuidanceResponse(); + copyDomainResource(src, tgt); + if (src.hasRequestId()) + tgt.setRequestId(src.getRequestId()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasModule()) + tgt.setModule(convertReference(src.getModule())); + if (src.hasStatus()) + tgt.setStatus(convertGuidanceResponseStatus(src.getStatus())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrenceDateTime()) + tgt.setOccurrenceDateTime(src.getOccurrenceDateTime()); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + if (src.hasReason()) + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getEvaluationMessage()) + tgt.addEvaluationMessage(convertReference(t)); + if (src.hasOutputParameters()) + tgt.setOutputParameters(convertReference(src.getOutputParameters())); + if (src.hasResult()) + tgt.setResult(convertReference(src.getResult())); + for (org.hl7.fhir.r4.model.DataRequirement t : src.getDataRequirement()) + tgt.addDataRequirement(convertDataRequirement(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus convertGuidanceResponseStatus(org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SUCCESS: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.SUCCESS; + case DATAREQUESTED: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.DATAREQUESTED; + case DATAREQUIRED: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.DATAREQUIRED; + case INPROGRESS: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.INPROGRESS; + case FAILURE: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.FAILURE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus convertGuidanceResponseStatus(org.hl7.fhir.r4.model.GuidanceResponse.GuidanceResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SUCCESS: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.SUCCESS; + case DATAREQUESTED: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.DATAREQUESTED; + case DATAREQUIRED: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.DATAREQUIRED; + case INPROGRESS: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.INPROGRESS; + case FAILURE: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.FAILURE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.GuidanceResponse.GuidanceResponseStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.HealthcareService convertHealthcareService(org.hl7.fhir.dstu3.model.HealthcareService src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.HealthcareService tgt = new org.hl7.fhir.r4.model.HealthcareService(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasProvidedBy()) + tgt.setProvidedBy(convertReference(src.getProvidedBy())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getLocation()) + tgt.addLocation(convertReference(t)); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasExtraDetails()) + tgt.setExtraDetails(src.getExtraDetails()); + if (src.hasPhoto()) + tgt.setPhoto(convertAttachment(src.getPhoto())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getCoverageArea()) + tgt.addCoverageArea(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceProvisionCode()) + tgt.addServiceProvisionCode(convertCodeableConcept(t)); + if (src.hasEligibility()) + tgt.setEligibility(convertCodeableConcept(src.getEligibility())); + if (src.hasEligibilityNote()) + tgt.setEligibilityNote(src.getEligibilityNote()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getProgramName()) + tgt.addProgramName(t.getValue()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCharacteristic()) + tgt.addCharacteristic(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReferralMethod()) + tgt.addReferralMethod(convertCodeableConcept(t)); + if (src.hasAppointmentRequired()) + tgt.setAppointmentRequired(src.getAppointmentRequired()); + for (org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) + tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); + for (org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) + tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); + if (src.hasAvailabilityExceptions()) + tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.HealthcareService convertHealthcareService(org.hl7.fhir.r4.model.HealthcareService src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.HealthcareService tgt = new org.hl7.fhir.dstu3.model.HealthcareService(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasProvidedBy()) + tgt.setProvidedBy(convertReference(src.getProvidedBy())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getLocation()) + tgt.addLocation(convertReference(t)); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasExtraDetails()) + tgt.setExtraDetails(src.getExtraDetails()); + if (src.hasPhoto()) + tgt.setPhoto(convertAttachment(src.getPhoto())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getCoverageArea()) + tgt.addCoverageArea(convertReference(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceProvisionCode()) + tgt.addServiceProvisionCode(convertCodeableConcept(t)); + if (src.hasEligibility()) + tgt.setEligibility(convertCodeableConcept(src.getEligibility())); + if (src.hasEligibilityNote()) + tgt.setEligibilityNote(src.getEligibilityNote()); + for (org.hl7.fhir.r4.model.StringType t : src.getProgramName()) + tgt.addProgramName(t.getValue()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCharacteristic()) + tgt.addCharacteristic(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReferralMethod()) + tgt.addReferralMethod(convertCodeableConcept(t)); + if (src.hasAppointmentRequired()) + tgt.setAppointmentRequired(src.getAppointmentRequired()); + for (org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent t : src.getAvailableTime()) + tgt.addAvailableTime(convertHealthcareServiceAvailableTimeComponent(t)); + for (org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent t : src.getNotAvailable()) + tgt.addNotAvailable(convertHealthcareServiceNotAvailableComponent(t)); + if (src.hasAvailabilityExceptions()) + tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); + for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getDaysOfWeek()) + tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); + if (src.hasAllDay()) + tgt.setAllDay(src.getAllDay()); + if (src.hasAvailableStartTime()) + tgt.setAvailableStartTime(src.getAvailableStartTime()); + if (src.hasAvailableEndTime()) + tgt.setAvailableEndTime(src.getAvailableEndTime()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent convertHealthcareServiceAvailableTimeComponent(org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceAvailableTimeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent tgt = new org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceAvailableTimeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Enumeration t : src.getDaysOfWeek()) + tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); + if (src.hasAllDay()) + tgt.setAllDay(src.getAllDay()); + if (src.hasAvailableStartTime()) + tgt.setAvailableStartTime(src.getAvailableStartTime()); + if (src.hasAvailableEndTime()) + tgt.setAvailableEndTime(src.getAvailableEndTime()); + return tgt; + } + + private static org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MON: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.MON; + case TUE: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.TUE; + case WED: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.WED; + case THU: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.THU; + case FRI: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.FRI; + case SAT: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.SAT; + case SUN: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.SUN; + default: return org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.r4.model.HealthcareService.DaysOfWeek src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MON: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.MON; + case TUE: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.TUE; + case WED: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.WED; + case THU: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.THU; + case FRI: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.FRI; + case SAT: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.SAT; + case SUN: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.SUN; + default: return org.hl7.fhir.dstu3.model.HealthcareService.DaysOfWeek.NULL; + } +} + + public static org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasDuring()) + tgt.setDuring(convertPeriod(src.getDuring())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent convertHealthcareServiceNotAvailableComponent(org.hl7.fhir.r4.model.HealthcareService.HealthcareServiceNotAvailableComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent tgt = new org.hl7.fhir.dstu3.model.HealthcareService.HealthcareServiceNotAvailableComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasDuring()) + tgt.setDuring(convertPeriod(src.getDuring())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImagingManifest convertImagingManifest(org.hl7.fhir.dstu3.model.ImagingManifest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImagingManifest tgt = new org.hl7.fhir.r4.model.ImagingManifest(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasAuthoringTime()) + tgt.setAuthoringTime(src.getAuthoringTime()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.ImagingManifest.StudyComponent t : src.getStudy()) + tgt.addStudy(convertStudyComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImagingManifest convertImagingManifest(org.hl7.fhir.r4.model.ImagingManifest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImagingManifest tgt = new org.hl7.fhir.dstu3.model.ImagingManifest(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasAuthoringTime()) + tgt.setAuthoringTime(src.getAuthoringTime()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.ImagingManifest.StudyComponent t : src.getStudy()) + tgt.addStudy(convertStudyComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImagingManifest.StudyComponent convertStudyComponent(org.hl7.fhir.dstu3.model.ImagingManifest.StudyComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImagingManifest.StudyComponent tgt = new org.hl7.fhir.r4.model.ImagingManifest.StudyComponent(); + copyElement(src, tgt); + if (src.hasUid()) + tgt.setUid(src.getUid()); + if (src.hasImagingStudy()) + tgt.setImagingStudy(convertReference(src.getImagingStudy())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + for (org.hl7.fhir.dstu3.model.ImagingManifest.SeriesComponent t : src.getSeries()) + tgt.addSeries(convertSeriesComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImagingManifest.StudyComponent convertStudyComponent(org.hl7.fhir.r4.model.ImagingManifest.StudyComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImagingManifest.StudyComponent tgt = new org.hl7.fhir.dstu3.model.ImagingManifest.StudyComponent(); + copyElement(src, tgt); + if (src.hasUid()) + tgt.setUid(src.getUid()); + if (src.hasImagingStudy()) + tgt.setImagingStudy(convertReference(src.getImagingStudy())); + for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + for (org.hl7.fhir.r4.model.ImagingManifest.SeriesComponent t : src.getSeries()) + tgt.addSeries(convertSeriesComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImagingManifest.SeriesComponent convertSeriesComponent(org.hl7.fhir.dstu3.model.ImagingManifest.SeriesComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImagingManifest.SeriesComponent tgt = new org.hl7.fhir.r4.model.ImagingManifest.SeriesComponent(); + copyElement(src, tgt); + if (src.hasUid()) + tgt.setUid(src.getUid()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + for (org.hl7.fhir.dstu3.model.ImagingManifest.InstanceComponent t : src.getInstance()) + tgt.addInstance(convertInstanceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImagingManifest.SeriesComponent convertSeriesComponent(org.hl7.fhir.r4.model.ImagingManifest.SeriesComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImagingManifest.SeriesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingManifest.SeriesComponent(); + copyElement(src, tgt); + if (src.hasUid()) + tgt.setUid(src.getUid()); + for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + for (org.hl7.fhir.r4.model.ImagingManifest.InstanceComponent t : src.getInstance()) + tgt.addInstance(convertInstanceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImagingManifest.InstanceComponent convertInstanceComponent(org.hl7.fhir.dstu3.model.ImagingManifest.InstanceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImagingManifest.InstanceComponent tgt = new org.hl7.fhir.r4.model.ImagingManifest.InstanceComponent(); + copyElement(src, tgt); + if (src.hasSopClass()) + tgt.setSopClass(src.getSopClass()); + if (src.hasUid()) + tgt.setUid(src.getUid()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImagingManifest.InstanceComponent convertInstanceComponent(org.hl7.fhir.r4.model.ImagingManifest.InstanceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImagingManifest.InstanceComponent tgt = new org.hl7.fhir.dstu3.model.ImagingManifest.InstanceComponent(); + copyElement(src, tgt); + if (src.hasSopClass()) + tgt.setSopClass(src.getSopClass()); + if (src.hasUid()) + tgt.setUid(src.getUid()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImagingStudy convertImagingStudy(org.hl7.fhir.dstu3.model.ImagingStudy src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImagingStudy tgt = new org.hl7.fhir.r4.model.ImagingStudy(); + copyDomainResource(src, tgt); + if (src.hasUid()) + tgt.setUid(src.getUid()); + if (src.hasAccession()) + tgt.setAccession(convertIdentifier(src.getAccession())); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasAvailability()) + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + for (org.hl7.fhir.dstu3.model.Coding t : src.getModalityList()) + tgt.addModalityList(convertCoding(t)); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasStarted()) + tgt.setStarted(src.getStarted()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasReferrer()) + tgt.setReferrer(convertReference(src.getReferrer())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getInterpreter()) + tgt.addInterpreter(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + if (src.hasNumberOfSeries()) + tgt.setNumberOfSeries(src.getNumberOfSeries()); + if (src.hasNumberOfInstances()) + tgt.setNumberOfInstances(src.getNumberOfInstances()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProcedureReference()) + tgt.addProcedureReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getProcedureCode()) + tgt.addProcedureCode(convertCodeableConcept(t)); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) + tgt.addSeries(convertImagingStudySeriesComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImagingStudy convertImagingStudy(org.hl7.fhir.r4.model.ImagingStudy src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImagingStudy tgt = new org.hl7.fhir.dstu3.model.ImagingStudy(); + copyDomainResource(src, tgt); + if (src.hasUid()) + tgt.setUid(src.getUid()); + if (src.hasAccession()) + tgt.setAccession(convertIdentifier(src.getAccession())); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasAvailability()) + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + for (org.hl7.fhir.r4.model.Coding t : src.getModalityList()) + tgt.addModalityList(convertCoding(t)); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasStarted()) + tgt.setStarted(src.getStarted()); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasReferrer()) + tgt.setReferrer(convertReference(src.getReferrer())); + for (org.hl7.fhir.r4.model.Reference t : src.getInterpreter()) + tgt.addInterpreter(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + if (src.hasNumberOfSeries()) + tgt.setNumberOfSeries(src.getNumberOfSeries()); + if (src.hasNumberOfInstances()) + tgt.setNumberOfInstances(src.getNumberOfInstances()); + for (org.hl7.fhir.r4.model.Reference t : src.getProcedureReference()) + tgt.addProcedureReference(convertReference(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getProcedureCode()) + tgt.addProcedureCode(convertCodeableConcept(t)); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent t : src.getSeries()) + tgt.addSeries(convertImagingStudySeriesComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ONLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.ONLINE; + case OFFLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.OFFLINE; + case NEARLINE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.NEARLINE; + case UNAVAILABLE: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; + default: return org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability convertInstanceAvailability(org.hl7.fhir.r4.model.ImagingStudy.InstanceAvailability src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ONLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.ONLINE; + case OFFLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.OFFLINE; + case NEARLINE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.NEARLINE; + case UNAVAILABLE: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.UNAVAILABLE; + default: return org.hl7.fhir.dstu3.model.ImagingStudy.InstanceAvailability.NULL; + } +} + + public static org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent(); + copyElement(src, tgt); + if (src.hasUid()) + tgt.setUid(src.getUid()); + if (src.hasNumber()) + tgt.setNumber(src.getNumber()); + if (src.hasModality()) + tgt.setModality(convertCoding(src.getModality())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasNumberOfInstances()) + tgt.setNumberOfInstances(src.getNumberOfInstances()); + if (src.hasAvailability()) + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + if (src.hasBodySite()) + tgt.setBodySite(convertCoding(src.getBodySite())); + if (src.hasLaterality()) + tgt.setLaterality(convertCoding(src.getLaterality())); + if (src.hasStarted()) + tgt.setStarted(src.getStarted()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + for (org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) + tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent convertImagingStudySeriesComponent(org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent tgt = new org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesComponent(); + copyElement(src, tgt); + if (src.hasUid()) + tgt.setUid(src.getUid()); + if (src.hasNumber()) + tgt.setNumber(src.getNumber()); + if (src.hasModality()) + tgt.setModality(convertCoding(src.getModality())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasNumberOfInstances()) + tgt.setNumberOfInstances(src.getNumberOfInstances()); + if (src.hasAvailability()) + tgt.setAvailability(convertInstanceAvailability(src.getAvailability())); + for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + if (src.hasBodySite()) + tgt.setBodySite(convertCoding(src.getBodySite())); + if (src.hasLaterality()) + tgt.setLaterality(convertCoding(src.getLaterality())); + if (src.hasStarted()) + tgt.setStarted(src.getStarted()); + for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + for (org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent t : src.getInstance()) + tgt.addInstance(convertImagingStudySeriesInstanceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); + copyElement(src, tgt); + if (src.hasUid()) + tgt.setUid(src.getUid()); + if (src.hasNumber()) + tgt.setNumber(src.getNumber()); + if (src.hasSopClass()) + tgt.setSopClass(src.getSopClass()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent convertImagingStudySeriesInstanceComponent(org.hl7.fhir.r4.model.ImagingStudy.ImagingStudySeriesInstanceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent tgt = new org.hl7.fhir.dstu3.model.ImagingStudy.ImagingStudySeriesInstanceComponent(); + copyElement(src, tgt); + if (src.hasUid()) + tgt.setUid(src.getUid()); + if (src.hasNumber()) + tgt.setNumber(src.getNumber()); + if (src.hasSopClass()) + tgt.setSopClass(src.getSopClass()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Immunization convertImmunization(org.hl7.fhir.dstu3.model.Immunization src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Immunization tgt = new org.hl7.fhir.r4.model.Immunization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertImmunizationStatus(src.getStatus())); + if (src.hasNotGiven()) + tgt.setNotGiven(src.getNotGiven()); + if (src.hasVaccineCode()) + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPrimarySource()) + tgt.setPrimarySource(src.getPrimarySource()); + if (src.hasReportOrigin()) + tgt.setReportOrigin(convertCodeableConcept(src.getReportOrigin())); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + if (src.hasManufacturer()) + tgt.setManufacturer(convertReference(src.getManufacturer())); + if (src.hasLotNumber()) + tgt.setLotNumber(src.getLotNumber()); + if (src.hasExpirationDate()) + tgt.setExpirationDate(src.getExpirationDate()); + if (src.hasSite()) + tgt.setSite(convertCodeableConcept(src.getSite())); + if (src.hasRoute()) + tgt.setRoute(convertCodeableConcept(src.getRoute())); + if (src.hasDoseQuantity()) + tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); + for (org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent t : src.getPractitioner()) + tgt.addPractitioner(convertImmunizationPractitionerComponent(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + if (src.hasExplanation()) + tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); + for (org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) + tgt.addReaction(convertImmunizationReactionComponent(t)); + for (org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) + tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Immunization convertImmunization(org.hl7.fhir.r4.model.Immunization src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Immunization tgt = new org.hl7.fhir.dstu3.model.Immunization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertImmunizationStatus(src.getStatus())); + if (src.hasNotGiven()) + tgt.setNotGiven(src.getNotGiven()); + if (src.hasVaccineCode()) + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPrimarySource()) + tgt.setPrimarySource(src.getPrimarySource()); + if (src.hasReportOrigin()) + tgt.setReportOrigin(convertCodeableConcept(src.getReportOrigin())); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + if (src.hasManufacturer()) + tgt.setManufacturer(convertReference(src.getManufacturer())); + if (src.hasLotNumber()) + tgt.setLotNumber(src.getLotNumber()); + if (src.hasExpirationDate()) + tgt.setExpirationDate(src.getExpirationDate()); + if (src.hasSite()) + tgt.setSite(convertCodeableConcept(src.getSite())); + if (src.hasRoute()) + tgt.setRoute(convertCodeableConcept(src.getRoute())); + if (src.hasDoseQuantity()) + tgt.setDoseQuantity(convertSimpleQuantity(src.getDoseQuantity())); + for (org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent t : src.getPractitioner()) + tgt.addPractitioner(convertImmunizationPractitionerComponent(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + if (src.hasExplanation()) + tgt.setExplanation(convertImmunizationExplanationComponent(src.getExplanation())); + for (org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent t : src.getReaction()) + tgt.addReaction(convertImmunizationReactionComponent(t)); + for (org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent t : src.getVaccinationProtocol()) + tgt.addVaccinationProtocol(convertImmunizationVaccinationProtocolComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Immunization.ImmunizationStatus convertImmunizationStatus(org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPLETED: return org.hl7.fhir.r4.model.Immunization.ImmunizationStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Immunization.ImmunizationStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Immunization.ImmunizationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus convertImmunizationStatus(org.hl7.fhir.r4.model.Immunization.ImmunizationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPLETED: return org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Immunization.ImmunizationStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent convertImmunizationPractitionerComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent(); + copyElement(src, tgt); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent convertImmunizationPractitionerComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationPractitionerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationPractitionerComponent(); + copyElement(src, tgt); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotGiven()) + tgt.addReasonNotGiven(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent convertImmunizationExplanationComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationExplanationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationExplanationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotGiven()) + tgt.addReasonNotGiven(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDetail()) + tgt.setDetail(convertReference(src.getDetail())); + if (src.hasReported()) + tgt.setReported(src.getReported()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent convertImmunizationReactionComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationReactionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationReactionComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasDetail()) + tgt.setDetail(convertReference(src.getDetail())); + if (src.hasReported()) + tgt.setReported(src.getReported()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent(); + copyElement(src, tgt); + if (src.hasDoseSequence()) + tgt.setDoseSequence(src.getDoseSequence()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAuthority()) + tgt.setAuthority(convertReference(src.getAuthority())); + if (src.hasSeries()) + tgt.setSeries(src.getSeries()); + if (src.hasSeriesDoses()) + tgt.setSeriesDoses(src.getSeriesDoses()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTargetDisease()) + tgt.addTargetDisease(convertCodeableConcept(t)); + if (src.hasDoseStatus()) + tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); + if (src.hasDoseStatusReason()) + tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent convertImmunizationVaccinationProtocolComponent(org.hl7.fhir.r4.model.Immunization.ImmunizationVaccinationProtocolComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent tgt = new org.hl7.fhir.dstu3.model.Immunization.ImmunizationVaccinationProtocolComponent(); + copyElement(src, tgt); + if (src.hasDoseSequence()) + tgt.setDoseSequence(src.getDoseSequence()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAuthority()) + tgt.setAuthority(convertReference(src.getAuthority())); + if (src.hasSeries()) + tgt.setSeries(src.getSeries()); + if (src.hasSeriesDoses()) + tgt.setSeriesDoses(src.getSeriesDoses()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTargetDisease()) + tgt.addTargetDisease(convertCodeableConcept(t)); + if (src.hasDoseStatus()) + tgt.setDoseStatus(convertCodeableConcept(src.getDoseStatus())); + if (src.hasDoseStatusReason()) + tgt.setDoseStatusReason(convertCodeableConcept(src.getDoseStatusReason())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.dstu3.model.ImmunizationRecommendation src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImmunizationRecommendation tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + for (org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) + tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImmunizationRecommendation convertImmunizationRecommendation(org.hl7.fhir.r4.model.ImmunizationRecommendation src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImmunizationRecommendation tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + for (org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent t : src.getRecommendation()) + tgt.addRecommendation(convertImmunizationRecommendationRecommendationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasVaccineCode()) + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + if (src.hasTargetDisease()) + tgt.setTargetDisease(convertCodeableConcept(src.getTargetDisease())); + if (src.hasDoseNumber()) + tgt.setDoseNumber(src.getDoseNumber()); + if (src.hasForecastStatus()) + tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); + for (org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) + tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); + if (src.hasProtocol()) + tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingImmunization()) + tgt.addSupportingImmunization(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingPatientInformation()) + tgt.addSupportingPatientInformation(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent convertImmunizationRecommendationRecommendationComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationComponent(); + copyElement(src, tgt); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasVaccineCode()) + tgt.setVaccineCode(convertCodeableConcept(src.getVaccineCode())); + if (src.hasTargetDisease()) + tgt.setTargetDisease(convertCodeableConcept(src.getTargetDisease())); + if (src.hasDoseNumber()) + tgt.setDoseNumber(src.getDoseNumber()); + if (src.hasForecastStatus()) + tgt.setForecastStatus(convertCodeableConcept(src.getForecastStatus())); + for (org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent t : src.getDateCriterion()) + tgt.addDateCriterion(convertImmunizationRecommendationRecommendationDateCriterionComponent(t)); + if (src.hasProtocol()) + tgt.setProtocol(convertImmunizationRecommendationRecommendationProtocolComponent(src.getProtocol())); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingImmunization()) + tgt.addSupportingImmunization(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingPatientInformation()) + tgt.addSupportingPatientInformation(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent convertImmunizationRecommendationRecommendationDateCriterionComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationDateCriterionComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); + copyElement(src, tgt); + if (src.hasDoseSequence()) + tgt.setDoseSequence(src.getDoseSequence()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAuthority()) + tgt.setAuthority(convertReference(src.getAuthority())); + if (src.hasSeries()) + tgt.setSeries(src.getSeries()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent convertImmunizationRecommendationRecommendationProtocolComponent(org.hl7.fhir.r4.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent tgt = new org.hl7.fhir.dstu3.model.ImmunizationRecommendation.ImmunizationRecommendationRecommendationProtocolComponent(); + copyElement(src, tgt); + if (src.hasDoseSequence()) + tgt.setDoseSequence(src.getDoseSequence()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAuthority()) + tgt.setAuthority(convertReference(src.getAuthority())); + if (src.hasSeries()) + tgt.setSeries(src.getSeries()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.dstu3.model.ImplementationGuide src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImplementationGuide tgt = new org.hl7.fhir.r4.model.ImplementationGuide(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) + tgt.addDependency(convertImplementationGuideDependencyComponent(t)); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) + tgt.addPackage(convertImplementationGuidePackageComponent(t)); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) + tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); + for (org.hl7.fhir.dstu3.model.UriType t : src.getBinary()) + tgt.addBinary(t.getValue()); + if (src.hasPage()) + tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide convertImplementationGuide(org.hl7.fhir.r4.model.ImplementationGuide src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent t : src.getDependency()) + tgt.addDependency(convertImplementationGuideDependencyComponent(t)); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent t : src.getPackage()) + tgt.addPackage(convertImplementationGuidePackageComponent(t)); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent t : src.getGlobal()) + tgt.addGlobal(convertImplementationGuideGlobalComponent(t)); + for (org.hl7.fhir.r4.model.UriType t : src.getBinary()) + tgt.addBinary(t.getValue()); + if (src.hasPage()) + tgt.setPage(convertImplementationGuidePageComponent(src.getPage())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertGuideDependencyType(src.getType())); + if (src.hasUri()) + tgt.setUri(src.getUri()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent convertImplementationGuideDependencyComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideDependencyComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideDependencyComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertGuideDependencyType(src.getType())); + if (src.hasUri()) + tgt.setUri(src.getUri()); + return tgt; + } + + private static org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REFERENCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.REFERENCE; + case INCLUSION: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.INCLUSION; + default: return org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType convertGuideDependencyType(org.hl7.fhir.r4.model.ImplementationGuide.GuideDependencyType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REFERENCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.REFERENCE; + case INCLUSION: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.INCLUSION; + default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuideDependencyType.NULL; + } +} + + public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) + tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent convertImplementationGuidePackageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent t : src.getResource()) + tgt.addResource(convertImplementationGuidePackageResourceComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); + copyElement(src, tgt); + if (src.hasExample()) + tgt.setExample(src.getExample()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAcronym()) + tgt.setAcronym(src.getAcronym()); + if (src.hasSource()) + tgt.setSource(convertType(src.getSource())); + if (src.hasExampleFor()) + tgt.setExampleFor(convertReference(src.getExampleFor())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent convertImplementationGuidePackageResourceComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePackageResourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePackageResourceComponent(); + copyElement(src, tgt); + if (src.hasExample()) + tgt.setExample(src.getExample()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAcronym()) + tgt.setAcronym(src.getAcronym()); + if (src.hasSource()) + tgt.setSource(convertType(src.getSource())); + if (src.hasExampleFor()) + tgt.setExampleFor(convertReference(src.getExampleFor())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent convertImplementationGuideGlobalComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuideGlobalComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuideGlobalComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent(); + copyElement(src, tgt); + if (src.hasSource()) + tgt.setSource(src.getSource()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasKind()) + tgt.setKind(convertGuidePageKind(src.getKind())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getType()) + tgt.addType(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getPackage()) + tgt.addPackage(t.getValue()); + if (src.hasFormat()) + tgt.setFormat(src.getFormat()); + for (org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) + tgt.addPage(convertImplementationGuidePageComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent convertImplementationGuidePageComponent(org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent tgt = new org.hl7.fhir.dstu3.model.ImplementationGuide.ImplementationGuidePageComponent(); + copyElement(src, tgt); + if (src.hasSource()) + tgt.setSource(src.getSource()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasKind()) + tgt.setKind(convertGuidePageKind(src.getKind())); + for (org.hl7.fhir.r4.model.CodeType t : src.getType()) + tgt.addType(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getPackage()) + tgt.addPackage(t.getValue()); + if (src.hasFormat()) + tgt.setFormat(src.getFormat()); + for (org.hl7.fhir.r4.model.ImplementationGuide.ImplementationGuidePageComponent t : src.getPage()) + tgt.addPage(convertImplementationGuidePageComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PAGE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.PAGE; + case EXAMPLE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.EXAMPLE; + case LIST: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.LIST; + case INCLUDE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.INCLUDE; + case DIRECTORY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DIRECTORY; + case DICTIONARY: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.DICTIONARY; + case TOC: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.TOC; + case RESOURCE: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.RESOURCE; + default: return org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind convertGuidePageKind(org.hl7.fhir.r4.model.ImplementationGuide.GuidePageKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PAGE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.PAGE; + case EXAMPLE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.EXAMPLE; + case LIST: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.LIST; + case INCLUDE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.INCLUDE; + case DIRECTORY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DIRECTORY; + case DICTIONARY: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.DICTIONARY; + case TOC: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.TOC; + case RESOURCE: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.RESOURCE; + default: return org.hl7.fhir.dstu3.model.ImplementationGuide.GuidePageKind.NULL; + } +} + + public static org.hl7.fhir.r4.model.Library convertLibrary(org.hl7.fhir.dstu3.model.Library src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Library tgt = new org.hl7.fhir.r4.model.Library(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTopic()) + tgt.addTopic(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Contributor t : src.getContributor()) + tgt.addContributor(convertContributor(t)); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.dstu3.model.ParameterDefinition t : src.getParameter()) + tgt.addParameter(convertParameterDefinition(t)); + for (org.hl7.fhir.dstu3.model.DataRequirement t : src.getDataRequirement()) + tgt.addDataRequirement(convertDataRequirement(t)); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getContent()) + tgt.addContent(convertAttachment(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Library convertLibrary(org.hl7.fhir.r4.model.Library src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Library tgt = new org.hl7.fhir.dstu3.model.Library(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTopic()) + tgt.addTopic(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Contributor t : src.getContributor()) + tgt.addContributor(convertContributor(t)); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.r4.model.ParameterDefinition t : src.getParameter()) + tgt.addParameter(convertParameterDefinition(t)); + for (org.hl7.fhir.r4.model.DataRequirement t : src.getDataRequirement()) + tgt.addDataRequirement(convertDataRequirement(t)); + for (org.hl7.fhir.r4.model.Attachment t : src.getContent()) + tgt.addContent(convertAttachment(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Linkage convertLinkage(org.hl7.fhir.dstu3.model.Linkage src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Linkage tgt = new org.hl7.fhir.r4.model.Linkage(); + copyDomainResource(src, tgt); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + for (org.hl7.fhir.dstu3.model.Linkage.LinkageItemComponent t : src.getItem()) + tgt.addItem(convertLinkageItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Linkage convertLinkage(org.hl7.fhir.r4.model.Linkage src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Linkage tgt = new org.hl7.fhir.dstu3.model.Linkage(); + copyDomainResource(src, tgt); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + for (org.hl7.fhir.r4.model.Linkage.LinkageItemComponent t : src.getItem()) + tgt.addItem(convertLinkageItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Linkage.LinkageItemComponent convertLinkageItemComponent(org.hl7.fhir.dstu3.model.Linkage.LinkageItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Linkage.LinkageItemComponent tgt = new org.hl7.fhir.r4.model.Linkage.LinkageItemComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertLinkageType(src.getType())); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Linkage.LinkageItemComponent convertLinkageItemComponent(org.hl7.fhir.r4.model.Linkage.LinkageItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Linkage.LinkageItemComponent tgt = new org.hl7.fhir.dstu3.model.Linkage.LinkageItemComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertLinkageType(src.getType())); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Linkage.LinkageType convertLinkageType(org.hl7.fhir.dstu3.model.Linkage.LinkageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SOURCE: return org.hl7.fhir.r4.model.Linkage.LinkageType.SOURCE; + case ALTERNATE: return org.hl7.fhir.r4.model.Linkage.LinkageType.ALTERNATE; + case HISTORICAL: return org.hl7.fhir.r4.model.Linkage.LinkageType.HISTORICAL; + default: return org.hl7.fhir.r4.model.Linkage.LinkageType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Linkage.LinkageType convertLinkageType(org.hl7.fhir.r4.model.Linkage.LinkageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SOURCE: return org.hl7.fhir.dstu3.model.Linkage.LinkageType.SOURCE; + case ALTERNATE: return org.hl7.fhir.dstu3.model.Linkage.LinkageType.ALTERNATE; + case HISTORICAL: return org.hl7.fhir.dstu3.model.Linkage.LinkageType.HISTORICAL; + default: return org.hl7.fhir.dstu3.model.Linkage.LinkageType.NULL; + } +} + + public static org.hl7.fhir.r4.model.ListResource convertList(org.hl7.fhir.dstu3.model.ListResource src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ListResource tgt = new org.hl7.fhir.r4.model.ListResource(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertListStatus(src.getStatus())); + if (src.hasMode()) + tgt.setMode(convertListMode(src.getMode())); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasSource()) + tgt.setSource(convertReference(src.getSource())); + if (src.hasOrderedBy()) + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent t : src.getEntry()) + tgt.addEntry(convertListEntryComponent(t)); + if (src.hasEmptyReason()) + tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ListResource convertList(org.hl7.fhir.r4.model.ListResource src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ListResource tgt = new org.hl7.fhir.dstu3.model.ListResource(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertListStatus(src.getStatus())); + if (src.hasMode()) + tgt.setMode(convertListMode(src.getMode())); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasSource()) + tgt.setSource(convertReference(src.getSource())); + if (src.hasOrderedBy()) + tgt.setOrderedBy(convertCodeableConcept(src.getOrderedBy())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.ListResource.ListEntryComponent t : src.getEntry()) + tgt.addEntry(convertListEntryComponent(t)); + if (src.hasEmptyReason()) + tgt.setEmptyReason(convertCodeableConcept(src.getEmptyReason())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ListResource.ListStatus convertListStatus(org.hl7.fhir.dstu3.model.ListResource.ListStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.r4.model.ListResource.ListStatus.CURRENT; + case RETIRED: return org.hl7.fhir.r4.model.ListResource.ListStatus.RETIRED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ListResource.ListStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.ListResource.ListStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ListResource.ListStatus convertListStatus(org.hl7.fhir.r4.model.ListResource.ListStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CURRENT: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.CURRENT; + case RETIRED: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.RETIRED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.ListResource.ListStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.ListResource.ListMode convertListMode(org.hl7.fhir.dstu3.model.ListResource.ListMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case WORKING: return org.hl7.fhir.r4.model.ListResource.ListMode.WORKING; + case SNAPSHOT: return org.hl7.fhir.r4.model.ListResource.ListMode.SNAPSHOT; + case CHANGES: return org.hl7.fhir.r4.model.ListResource.ListMode.CHANGES; + default: return org.hl7.fhir.r4.model.ListResource.ListMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ListResource.ListMode convertListMode(org.hl7.fhir.r4.model.ListResource.ListMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case WORKING: return org.hl7.fhir.dstu3.model.ListResource.ListMode.WORKING; + case SNAPSHOT: return org.hl7.fhir.dstu3.model.ListResource.ListMode.SNAPSHOT; + case CHANGES: return org.hl7.fhir.dstu3.model.ListResource.ListMode.CHANGES; + default: return org.hl7.fhir.dstu3.model.ListResource.ListMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.ListResource.ListEntryComponent convertListEntryComponent(org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ListResource.ListEntryComponent tgt = new org.hl7.fhir.r4.model.ListResource.ListEntryComponent(); + copyElement(src, tgt); + if (src.hasFlag()) + tgt.setFlag(convertCodeableConcept(src.getFlag())); + if (src.hasDeleted()) + tgt.setDeleted(src.getDeleted()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasItem()) + tgt.setItem(convertReference(src.getItem())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent convertListEntryComponent(org.hl7.fhir.r4.model.ListResource.ListEntryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent tgt = new org.hl7.fhir.dstu3.model.ListResource.ListEntryComponent(); + copyElement(src, tgt); + if (src.hasFlag()) + tgt.setFlag(convertCodeableConcept(src.getFlag())); + if (src.hasDeleted()) + tgt.setDeleted(src.getDeleted()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasItem()) + tgt.setItem(convertReference(src.getItem())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Location convertLocation(org.hl7.fhir.dstu3.model.Location src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Location tgt = new org.hl7.fhir.r4.model.Location(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertLocationStatus(src.getStatus())); + if (src.hasOperationalStatus()) + tgt.setOperationalStatus(convertCoding(src.getOperationalStatus())); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasMode()) + tgt.setMode(convertLocationMode(src.getMode())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasAddress()) + tgt.setAddress(convertAddress(src.getAddress())); + if (src.hasPhysicalType()) + tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); + if (src.hasPosition()) + tgt.setPosition(convertLocationPositionComponent(src.getPosition())); + if (src.hasManagingOrganization()) + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + if (src.hasPartOf()) + tgt.setPartOf(convertReference(src.getPartOf())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Location convertLocation(org.hl7.fhir.r4.model.Location src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Location tgt = new org.hl7.fhir.dstu3.model.Location(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertLocationStatus(src.getStatus())); + if (src.hasOperationalStatus()) + tgt.setOperationalStatus(convertCoding(src.getOperationalStatus())); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasMode()) + tgt.setMode(convertLocationMode(src.getMode())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasAddress()) + tgt.setAddress(convertAddress(src.getAddress())); + if (src.hasPhysicalType()) + tgt.setPhysicalType(convertCodeableConcept(src.getPhysicalType())); + if (src.hasPosition()) + tgt.setPosition(convertLocationPositionComponent(src.getPosition())); + if (src.hasManagingOrganization()) + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + if (src.hasPartOf()) + tgt.setPartOf(convertReference(src.getPartOf())); + for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.dstu3.model.Location.LocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Location.LocationStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.Location.LocationStatus.SUSPENDED; + case INACTIVE: return org.hl7.fhir.r4.model.Location.LocationStatus.INACTIVE; + default: return org.hl7.fhir.r4.model.Location.LocationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Location.LocationStatus convertLocationStatus(org.hl7.fhir.r4.model.Location.LocationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Location.LocationStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.Location.LocationStatus.SUSPENDED; + case INACTIVE: return org.hl7.fhir.dstu3.model.Location.LocationStatus.INACTIVE; + default: return org.hl7.fhir.dstu3.model.Location.LocationStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.Location.LocationMode convertLocationMode(org.hl7.fhir.dstu3.model.Location.LocationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.r4.model.Location.LocationMode.INSTANCE; + case KIND: return org.hl7.fhir.r4.model.Location.LocationMode.KIND; + default: return org.hl7.fhir.r4.model.Location.LocationMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Location.LocationMode convertLocationMode(org.hl7.fhir.r4.model.Location.LocationMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INSTANCE: return org.hl7.fhir.dstu3.model.Location.LocationMode.INSTANCE; + case KIND: return org.hl7.fhir.dstu3.model.Location.LocationMode.KIND; + default: return org.hl7.fhir.dstu3.model.Location.LocationMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.dstu3.model.Location.LocationPositionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.r4.model.Location.LocationPositionComponent(); + copyElement(src, tgt); + if (src.hasLongitude()) + tgt.setLongitude(src.getLongitude()); + if (src.hasLatitude()) + tgt.setLatitude(src.getLatitude()); + if (src.hasAltitude()) + tgt.setAltitude(src.getAltitude()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Location.LocationPositionComponent convertLocationPositionComponent(org.hl7.fhir.r4.model.Location.LocationPositionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Location.LocationPositionComponent tgt = new org.hl7.fhir.dstu3.model.Location.LocationPositionComponent(); + copyElement(src, tgt); + if (src.hasLongitude()) + tgt.setLongitude(src.getLongitude()); + if (src.hasLatitude()) + tgt.setLatitude(src.getLatitude()); + if (src.hasAltitude()) + tgt.setAltitude(src.getAltitude()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Measure convertMeasure(org.hl7.fhir.dstu3.model.Measure src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Measure tgt = new org.hl7.fhir.r4.model.Measure(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTopic()) + tgt.addTopic(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Contributor t : src.getContributor()) + tgt.addContributor(convertContributor(t)); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getLibrary()) + tgt.addLibrary(convertReference(t)); + if (src.hasDisclaimer()) + tgt.setDisclaimer(src.getDisclaimer()); + if (src.hasScoring()) + tgt.setScoring(convertCodeableConcept(src.getScoring())); + if (src.hasCompositeScoring()) + tgt.setCompositeScoring(convertCodeableConcept(src.getCompositeScoring())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasRiskAdjustment()) + tgt.setRiskAdjustment(src.getRiskAdjustment()); + if (src.hasRateAggregation()) + tgt.setRateAggregation(src.getRateAggregation()); + if (src.hasRationale()) + tgt.setRationale(src.getRationale()); + if (src.hasClinicalRecommendationStatement()) + tgt.setClinicalRecommendationStatement(src.getClinicalRecommendationStatement()); + if (src.hasImprovementNotation()) + tgt.setImprovementNotation(src.getImprovementNotation()); + for (org.hl7.fhir.dstu3.model.MarkdownType t : src.getDefinition()) + tgt.addDefinition(t.getValue()); + if (src.hasGuidance()) + tgt.setGuidance(src.getGuidance()); + if (src.hasSet()) + tgt.setSet(src.getSet()); + for (org.hl7.fhir.dstu3.model.Measure.MeasureGroupComponent t : src.getGroup()) + tgt.addGroup(convertMeasureGroupComponent(t)); + for (org.hl7.fhir.dstu3.model.Measure.MeasureSupplementalDataComponent t : src.getSupplementalData()) + tgt.addSupplementalData(convertMeasureSupplementalDataComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Measure convertMeasure(org.hl7.fhir.r4.model.Measure src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Measure tgt = new org.hl7.fhir.dstu3.model.Measure(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTopic()) + tgt.addTopic(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Contributor t : src.getContributor()) + tgt.addContributor(convertContributor(t)); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getLibrary()) + tgt.addLibrary(convertReference(t)); + if (src.hasDisclaimer()) + tgt.setDisclaimer(src.getDisclaimer()); + if (src.hasScoring()) + tgt.setScoring(convertCodeableConcept(src.getScoring())); + if (src.hasCompositeScoring()) + tgt.setCompositeScoring(convertCodeableConcept(src.getCompositeScoring())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasRiskAdjustment()) + tgt.setRiskAdjustment(src.getRiskAdjustment()); + if (src.hasRateAggregation()) + tgt.setRateAggregation(src.getRateAggregation()); + if (src.hasRationale()) + tgt.setRationale(src.getRationale()); + if (src.hasClinicalRecommendationStatement()) + tgt.setClinicalRecommendationStatement(src.getClinicalRecommendationStatement()); + if (src.hasImprovementNotation()) + tgt.setImprovementNotation(src.getImprovementNotation()); + for (org.hl7.fhir.r4.model.MarkdownType t : src.getDefinition()) + tgt.addDefinition(t.getValue()); + if (src.hasGuidance()) + tgt.setGuidance(src.getGuidance()); + if (src.hasSet()) + tgt.setSet(src.getSet()); + for (org.hl7.fhir.r4.model.Measure.MeasureGroupComponent t : src.getGroup()) + tgt.addGroup(convertMeasureGroupComponent(t)); + for (org.hl7.fhir.r4.model.Measure.MeasureSupplementalDataComponent t : src.getSupplementalData()) + tgt.addSupplementalData(convertMeasureSupplementalDataComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Measure.MeasureGroupComponent convertMeasureGroupComponent(org.hl7.fhir.dstu3.model.Measure.MeasureGroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Measure.MeasureGroupComponent tgt = new org.hl7.fhir.r4.model.Measure.MeasureGroupComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.Measure.MeasureGroupPopulationComponent t : src.getPopulation()) + tgt.addPopulation(convertMeasureGroupPopulationComponent(t)); + for (org.hl7.fhir.dstu3.model.Measure.MeasureGroupStratifierComponent t : src.getStratifier()) + tgt.addStratifier(convertMeasureGroupStratifierComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Measure.MeasureGroupComponent convertMeasureGroupComponent(org.hl7.fhir.r4.model.Measure.MeasureGroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Measure.MeasureGroupComponent tgt = new org.hl7.fhir.dstu3.model.Measure.MeasureGroupComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.Measure.MeasureGroupPopulationComponent t : src.getPopulation()) + tgt.addPopulation(convertMeasureGroupPopulationComponent(t)); + for (org.hl7.fhir.r4.model.Measure.MeasureGroupStratifierComponent t : src.getStratifier()) + tgt.addStratifier(convertMeasureGroupStratifierComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Measure.MeasureGroupPopulationComponent convertMeasureGroupPopulationComponent(org.hl7.fhir.dstu3.model.Measure.MeasureGroupPopulationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Measure.MeasureGroupPopulationComponent tgt = new org.hl7.fhir.r4.model.Measure.MeasureGroupPopulationComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasCriteria()) + tgt.setCriteria(src.getCriteria()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Measure.MeasureGroupPopulationComponent convertMeasureGroupPopulationComponent(org.hl7.fhir.r4.model.Measure.MeasureGroupPopulationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Measure.MeasureGroupPopulationComponent tgt = new org.hl7.fhir.dstu3.model.Measure.MeasureGroupPopulationComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasCriteria()) + tgt.setCriteria(src.getCriteria()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Measure.MeasureGroupStratifierComponent convertMeasureGroupStratifierComponent(org.hl7.fhir.dstu3.model.Measure.MeasureGroupStratifierComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Measure.MeasureGroupStratifierComponent tgt = new org.hl7.fhir.r4.model.Measure.MeasureGroupStratifierComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasCriteria()) + tgt.setCriteria(src.getCriteria()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Measure.MeasureGroupStratifierComponent convertMeasureGroupStratifierComponent(org.hl7.fhir.r4.model.Measure.MeasureGroupStratifierComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Measure.MeasureGroupStratifierComponent tgt = new org.hl7.fhir.dstu3.model.Measure.MeasureGroupStratifierComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasCriteria()) + tgt.setCriteria(src.getCriteria()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Measure.MeasureSupplementalDataComponent convertMeasureSupplementalDataComponent(org.hl7.fhir.dstu3.model.Measure.MeasureSupplementalDataComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Measure.MeasureSupplementalDataComponent tgt = new org.hl7.fhir.r4.model.Measure.MeasureSupplementalDataComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getUsage()) + tgt.addUsage(convertCodeableConcept(t)); + if (src.hasCriteria()) + tgt.setCriteria(src.getCriteria()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Measure.MeasureSupplementalDataComponent convertMeasureSupplementalDataComponent(org.hl7.fhir.r4.model.Measure.MeasureSupplementalDataComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Measure.MeasureSupplementalDataComponent tgt = new org.hl7.fhir.dstu3.model.Measure.MeasureSupplementalDataComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getUsage()) + tgt.addUsage(convertCodeableConcept(t)); + if (src.hasCriteria()) + tgt.setCriteria(src.getCriteria()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + return tgt; + } + + public static org.hl7.fhir.r4.model.MeasureReport convertMeasureReport(org.hl7.fhir.dstu3.model.MeasureReport src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MeasureReport tgt = new org.hl7.fhir.r4.model.MeasureReport(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertMeasureReportStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertMeasureReportType(src.getType())); + if (src.hasMeasure()) + tgt.setMeasure(convertReference(src.getMeasure())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasReportingOrganization()) + tgt.setReportingOrganization(convertReference(src.getReportingOrganization())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupComponent t : src.getGroup()) + tgt.addGroup(convertMeasureReportGroupComponent(t)); + if (src.hasEvaluatedResources()) + tgt.setEvaluatedResources(convertReference(src.getEvaluatedResources())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MeasureReport convertMeasureReport(org.hl7.fhir.r4.model.MeasureReport src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MeasureReport tgt = new org.hl7.fhir.dstu3.model.MeasureReport(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertMeasureReportStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertMeasureReportType(src.getType())); + if (src.hasMeasure()) + tgt.setMeasure(convertReference(src.getMeasure())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasReportingOrganization()) + tgt.setReportingOrganization(convertReference(src.getReportingOrganization())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupComponent t : src.getGroup()) + tgt.addGroup(convertMeasureReportGroupComponent(t)); + if (src.hasEvaluatedResources()) + tgt.setEvaluatedResources(convertReference(src.getEvaluatedResources())); + return tgt; + } + + private static org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus convertMeasureReportStatus(org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPLETE: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus.COMPLETE; + case PENDING: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus.PENDING; + case ERROR: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus.ERROR; + default: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus convertMeasureReportStatus(org.hl7.fhir.r4.model.MeasureReport.MeasureReportStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPLETE: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus.COMPLETE; + case PENDING: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus.PENDING; + case ERROR: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus.ERROR; + default: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.MeasureReport.MeasureReportType convertMeasureReportType(org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INDIVIDUAL: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportType.INDIVIDUAL; + case PATIENTLIST: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportType.PATIENTLIST; + case SUMMARY: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportType.SUMMARY; + default: return org.hl7.fhir.r4.model.MeasureReport.MeasureReportType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType convertMeasureReportType(org.hl7.fhir.r4.model.MeasureReport.MeasureReportType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INDIVIDUAL: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType.INDIVIDUAL; + case PATIENTLIST: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType.PATIENTLIST; + case SUMMARY: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType.SUMMARY; + default: return org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportType.NULL; + } +} + + public static org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupComponent convertMeasureReportGroupComponent(org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupComponent tgt = new org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupPopulationComponent t : src.getPopulation()) + tgt.addPopulation(convertMeasureReportGroupPopulationComponent(t)); + if (src.hasMeasureScore()) + tgt.setMeasureScore(src.getMeasureScore()); + for (org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupStratifierComponent t : src.getStratifier()) + tgt.addStratifier(convertMeasureReportGroupStratifierComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupComponent convertMeasureReportGroupComponent(org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupComponent tgt = new org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupPopulationComponent t : src.getPopulation()) + tgt.addPopulation(convertMeasureReportGroupPopulationComponent(t)); + if (src.hasMeasureScore()) + tgt.setMeasureScore(src.getMeasureScore()); + for (org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupStratifierComponent t : src.getStratifier()) + tgt.addStratifier(convertMeasureReportGroupStratifierComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupPopulationComponent convertMeasureReportGroupPopulationComponent(org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupPopulationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupPopulationComponent tgt = new org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupPopulationComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + if (src.hasPatients()) + tgt.setPatients(convertReference(src.getPatients())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupPopulationComponent convertMeasureReportGroupPopulationComponent(org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupPopulationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupPopulationComponent tgt = new org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupPopulationComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + if (src.hasPatients()) + tgt.setPatients(convertReference(src.getPatients())); + return tgt; + } + + public static org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupStratifierComponent convertMeasureReportGroupStratifierComponent(org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupStratifierComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupStratifierComponent tgt = new org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupStratifierComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupComponent t : src.getStratum()) + tgt.addStratum(convertStratifierGroupComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupStratifierComponent convertMeasureReportGroupStratifierComponent(org.hl7.fhir.r4.model.MeasureReport.MeasureReportGroupStratifierComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupStratifierComponent tgt = new org.hl7.fhir.dstu3.model.MeasureReport.MeasureReportGroupStratifierComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.r4.model.MeasureReport.StratifierGroupComponent t : src.getStratum()) + tgt.addStratum(convertStratifierGroupComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.MeasureReport.StratifierGroupComponent convertStratifierGroupComponent(org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MeasureReport.StratifierGroupComponent tgt = new org.hl7.fhir.r4.model.MeasureReport.StratifierGroupComponent(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + for (org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupPopulationComponent t : src.getPopulation()) + tgt.addPopulation(convertStratifierGroupPopulationComponent(t)); + if (src.hasMeasureScore()) + tgt.setMeasureScore(src.getMeasureScore()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupComponent convertStratifierGroupComponent(org.hl7.fhir.r4.model.MeasureReport.StratifierGroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupComponent tgt = new org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupComponent(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(src.getValue()); + for (org.hl7.fhir.r4.model.MeasureReport.StratifierGroupPopulationComponent t : src.getPopulation()) + tgt.addPopulation(convertStratifierGroupPopulationComponent(t)); + if (src.hasMeasureScore()) + tgt.setMeasureScore(src.getMeasureScore()); + return tgt; + } + + public static org.hl7.fhir.r4.model.MeasureReport.StratifierGroupPopulationComponent convertStratifierGroupPopulationComponent(org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupPopulationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MeasureReport.StratifierGroupPopulationComponent tgt = new org.hl7.fhir.r4.model.MeasureReport.StratifierGroupPopulationComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + if (src.hasPatients()) + tgt.setPatients(convertReference(src.getPatients())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupPopulationComponent convertStratifierGroupPopulationComponent(org.hl7.fhir.r4.model.MeasureReport.StratifierGroupPopulationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupPopulationComponent tgt = new org.hl7.fhir.dstu3.model.MeasureReport.StratifierGroupPopulationComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasCount()) + tgt.setCount(src.getCount()); + if (src.hasPatients()) + tgt.setPatients(convertReference(src.getPatients())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Media convertMedia(org.hl7.fhir.dstu3.model.Media src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Media tgt = new org.hl7.fhir.r4.model.Media(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasType()) + tgt.setType(convertDigitalMediaType(src.getType())); + if (src.hasSubtype()) + tgt.setSubtype(convertCodeableConcept(src.getSubtype())); + if (src.hasView()) + tgt.setView(convertCodeableConcept(src.getView())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasOperator()) + tgt.setOperator(convertReference(src.getOperator())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + if (src.hasDevice()) + tgt.setDevice(convertReference(src.getDevice())); + if (src.hasHeight()) + tgt.setHeight(src.getHeight()); + if (src.hasWidth()) + tgt.setWidth(src.getWidth()); + if (src.hasFrames()) + tgt.setFrames(src.getFrames()); + if (src.hasDuration()) + tgt.setDuration(src.getDuration()); + if (src.hasContent()) + tgt.setContent(convertAttachment(src.getContent())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Media convertMedia(org.hl7.fhir.r4.model.Media src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Media tgt = new org.hl7.fhir.dstu3.model.Media(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasType()) + tgt.setType(convertDigitalMediaType(src.getType())); + if (src.hasSubtype()) + tgt.setSubtype(convertCodeableConcept(src.getSubtype())); + if (src.hasView()) + tgt.setView(convertCodeableConcept(src.getView())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasOperator()) + tgt.setOperator(convertReference(src.getOperator())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + if (src.hasDevice()) + tgt.setDevice(convertReference(src.getDevice())); + if (src.hasHeight()) + tgt.setHeight(src.getHeight()); + if (src.hasWidth()) + tgt.setWidth(src.getWidth()); + if (src.hasFrames()) + tgt.setFrames(src.getFrames()); + if (src.hasDuration()) + tgt.setDuration(src.getDuration()); + if (src.hasContent()) + tgt.setContent(convertAttachment(src.getContent())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.dstu3.model.Media.DigitalMediaType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHOTO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.PHOTO; + case VIDEO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.VIDEO; + case AUDIO: return org.hl7.fhir.r4.model.Media.DigitalMediaType.AUDIO; + default: return org.hl7.fhir.r4.model.Media.DigitalMediaType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Media.DigitalMediaType convertDigitalMediaType(org.hl7.fhir.r4.model.Media.DigitalMediaType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PHOTO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.PHOTO; + case VIDEO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.VIDEO; + case AUDIO: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.AUDIO; + default: return org.hl7.fhir.dstu3.model.Media.DigitalMediaType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Medication convertMedication(org.hl7.fhir.dstu3.model.Medication src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Medication tgt = new org.hl7.fhir.r4.model.Medication(); + copyDomainResource(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasStatus()) + tgt.setStatus(convertMedicationStatus(src.getStatus())); + if (src.hasIsBrand()) + tgt.setIsBrand(src.getIsBrand()); + if (src.hasIsOverTheCounter()) + tgt.setIsOverTheCounter(src.getIsOverTheCounter()); + if (src.hasManufacturer()) + tgt.setManufacturer(convertReference(src.getManufacturer())); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + for (org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent t : src.getIngredient()) + tgt.addIngredient(convertMedicationIngredientComponent(t)); + if (src.hasPackage()) + tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getImage()) + tgt.addImage(convertAttachment(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Medication convertMedication(org.hl7.fhir.r4.model.Medication src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Medication tgt = new org.hl7.fhir.dstu3.model.Medication(); + copyDomainResource(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasStatus()) + tgt.setStatus(convertMedicationStatus(src.getStatus())); + if (src.hasIsBrand()) + tgt.setIsBrand(src.getIsBrand()); + if (src.hasIsOverTheCounter()) + tgt.setIsOverTheCounter(src.getIsOverTheCounter()); + if (src.hasManufacturer()) + tgt.setManufacturer(convertReference(src.getManufacturer())); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + for (org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent t : src.getIngredient()) + tgt.addIngredient(convertMedicationIngredientComponent(t)); + if (src.hasPackage()) + tgt.setPackage(convertMedicationPackageComponent(src.getPackage())); + for (org.hl7.fhir.r4.model.Attachment t : src.getImage()) + tgt.addImage(convertAttachment(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Medication.MedicationStatus convertMedicationStatus(org.hl7.fhir.dstu3.model.Medication.MedicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Medication.MedicationStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.r4.model.Medication.MedicationStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Medication.MedicationStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Medication.MedicationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Medication.MedicationStatus convertMedicationStatus(org.hl7.fhir.r4.model.Medication.MedicationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Medication.MedicationStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.dstu3.model.Medication.MedicationStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Medication.MedicationStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Medication.MedicationStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent convertMedicationIngredientComponent(org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent(); + copyElement(src, tgt); + if (src.hasItem()) + tgt.setItem(convertType(src.getItem())); + if (src.hasIsActive()) + tgt.setIsActive(src.getIsActive()); + if (src.hasAmount()) + tgt.setAmount(convertRatio(src.getAmount())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent convertMedicationIngredientComponent(org.hl7.fhir.r4.model.Medication.MedicationIngredientComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationIngredientComponent(); + copyElement(src, tgt); + if (src.hasItem()) + tgt.setItem(convertType(src.getItem())); + if (src.hasIsActive()) + tgt.setIsActive(src.getIsActive()); + if (src.hasAmount()) + tgt.setAmount(convertRatio(src.getAmount())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationPackageComponent(); + copyElement(src, tgt); + if (src.hasContainer()) + tgt.setContainer(convertCodeableConcept(src.getContainer())); + for (org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent t : src.getContent()) + tgt.addContent(convertMedicationPackageContentComponent(t)); + for (org.hl7.fhir.dstu3.model.Medication.MedicationPackageBatchComponent t : src.getBatch()) + tgt.addBatch(convertMedicationPackageBatchComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent convertMedicationPackageComponent(org.hl7.fhir.r4.model.Medication.MedicationPackageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationPackageComponent(); + copyElement(src, tgt); + if (src.hasContainer()) + tgt.setContainer(convertCodeableConcept(src.getContainer())); + for (org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent t : src.getContent()) + tgt.addContent(convertMedicationPackageContentComponent(t)); + for (org.hl7.fhir.r4.model.Medication.MedicationPackageBatchComponent t : src.getBatch()) + tgt.addBatch(convertMedicationPackageBatchComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent(); + copyElement(src, tgt); + if (src.hasItem()) + tgt.setItem(convertType(src.getItem())); + if (src.hasAmount()) + tgt.setAmount(convertSimpleQuantity(src.getAmount())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent convertMedicationPackageContentComponent(org.hl7.fhir.r4.model.Medication.MedicationPackageContentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationPackageContentComponent(); + copyElement(src, tgt); + if (src.hasItem()) + tgt.setItem(convertType(src.getItem())); + if (src.hasAmount()) + tgt.setAmount(convertSimpleQuantity(src.getAmount())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Medication.MedicationPackageBatchComponent convertMedicationPackageBatchComponent(org.hl7.fhir.dstu3.model.Medication.MedicationPackageBatchComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Medication.MedicationPackageBatchComponent tgt = new org.hl7.fhir.r4.model.Medication.MedicationPackageBatchComponent(); + copyElement(src, tgt); + if (src.hasLotNumber()) + tgt.setLotNumber(src.getLotNumber()); + if (src.hasExpirationDate()) + tgt.setExpirationDate(src.getExpirationDate()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Medication.MedicationPackageBatchComponent convertMedicationPackageBatchComponent(org.hl7.fhir.r4.model.Medication.MedicationPackageBatchComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Medication.MedicationPackageBatchComponent tgt = new org.hl7.fhir.dstu3.model.Medication.MedicationPackageBatchComponent(); + copyElement(src, tgt); + if (src.hasLotNumber()) + tgt.setLotNumber(src.getLotNumber()); + if (src.hasExpirationDate()) + tgt.setExpirationDate(src.getExpirationDate()); + return tgt; + } + + public static org.hl7.fhir.r4.model.MedicationAdministration convertMedicationAdministration(org.hl7.fhir.dstu3.model.MedicationAdministration src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationAdministration tgt = new org.hl7.fhir.r4.model.MedicationAdministration(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertMedicationAdministrationStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasMedication()) + tgt.setMedication(convertType(src.getMedication())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInformation(convertReference(t)); + if (src.hasEffective()) + tgt.setEffective(convertType(src.getEffective())); + for (org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationPerformerComponent t : src.getPerformer()) + tgt.addPerformer(convertMedicationAdministrationPerformerComponent(t)); + if (src.hasNotGiven()) + tgt.setNotGiven(src.getNotGiven()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotGiven()) + tgt.addReasonNotGiven(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + if (src.hasPrescription()) + tgt.setRequest(convertReference(src.getPrescription())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDevice()) + tgt.addDevice(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + if (src.hasDosage()) + tgt.setDosage(convertMedicationAdministrationDosageComponent(src.getDosage())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEventHistory()) + tgt.addEventHistory(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationAdministration convertMedicationAdministration(org.hl7.fhir.r4.model.MedicationAdministration src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationAdministration tgt = new org.hl7.fhir.dstu3.model.MedicationAdministration(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertMedicationAdministrationStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasMedication()) + tgt.setMedication(convertType(src.getMedication())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInformation(convertReference(t)); + if (src.hasEffective()) + tgt.setEffective(convertType(src.getEffective())); + for (org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent t : src.getPerformer()) + tgt.addPerformer(convertMedicationAdministrationPerformerComponent(t)); + if (src.hasNotGiven()) + tgt.setNotGiven(src.getNotGiven()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotGiven()) + tgt.addReasonNotGiven(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + if (src.hasRequest()) + tgt.setPrescription(convertReference(src.getRequest())); + for (org.hl7.fhir.r4.model.Reference t : src.getDevice()) + tgt.addDevice(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + if (src.hasDosage()) + tgt.setDosage(convertMedicationAdministrationDosageComponent(src.getDosage())); + for (org.hl7.fhir.r4.model.Reference t : src.getEventHistory()) + tgt.addEventHistory(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus convertMedicationAdministrationStatus(org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.STOPPED; + case UNKNOWN: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus convertMedicationAdministrationStatus(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.STOPPED; + case UNKNOWN: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent convertMedicationAdministrationPerformerComponent(org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationPerformerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent tgt = new org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent(); + copyElement(src, tgt); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationPerformerComponent convertMedicationAdministrationPerformerComponent(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationPerformerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationPerformerComponent tgt = new org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationPerformerComponent(); + copyElement(src, tgt); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationDosageComponent convertMedicationAdministrationDosageComponent(org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationDosageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationDosageComponent tgt = new org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationDosageComponent(); + copyElement(src, tgt); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasSite()) + tgt.setSite(convertCodeableConcept(src.getSite())); + if (src.hasRoute()) + tgt.setRoute(convertCodeableConcept(src.getRoute())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasDose()) + tgt.setDose(convertSimpleQuantity(src.getDose())); + if (src.hasRate()) + tgt.setRate(convertType(src.getRate())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationDosageComponent convertMedicationAdministrationDosageComponent(org.hl7.fhir.r4.model.MedicationAdministration.MedicationAdministrationDosageComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationDosageComponent tgt = new org.hl7.fhir.dstu3.model.MedicationAdministration.MedicationAdministrationDosageComponent(); + copyElement(src, tgt); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasSite()) + tgt.setSite(convertCodeableConcept(src.getSite())); + if (src.hasRoute()) + tgt.setRoute(convertCodeableConcept(src.getRoute())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasDose()) + tgt.setDose(convertSimpleQuantity(src.getDose())); + if (src.hasRate()) + tgt.setRate(convertType(src.getRate())); + return tgt; + } + + public static org.hl7.fhir.r4.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.dstu3.model.MedicationDispense src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationDispense tgt = new org.hl7.fhir.r4.model.MedicationDispense(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasMedication()) + tgt.setMedication(convertType(src.getMedication())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInformation(convertReference(t)); + for (org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispensePerformerComponent t : src.getPerformer()) + tgt.addPerformer(convertMedicationDispensePerformerComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAuthorizingPrescription()) + tgt.addAuthorizingPrescription(convertReference(t)); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasDaysSupply()) + tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); + if (src.hasWhenPrepared()) + tgt.setWhenPrepared(src.getWhenPrepared()); + if (src.hasWhenHandedOver()) + tgt.setWhenHandedOver(src.getWhenHandedOver()); + if (src.hasDestination()) + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosageInstruction()) + tgt.addDosageInstruction(convertDosage(t)); + if (src.hasSubstitution()) + tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDetectedIssue()) + tgt.addDetectedIssue(convertReference(t)); + if (src.hasNotDone()) + tgt.setNotDone(src.getNotDone()); + if (src.hasNotDoneReason()) + tgt.setNotDoneReason(convertType(src.getNotDoneReason())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEventHistory()) + tgt.addEventHistory(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationDispense convertMedicationDispense(org.hl7.fhir.r4.model.MedicationDispense src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationDispense tgt = new org.hl7.fhir.dstu3.model.MedicationDispense(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertMedicationDispenseStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasMedication()) + tgt.setMedication(convertType(src.getMedication())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInformation(convertReference(t)); + for (org.hl7.fhir.r4.model.MedicationDispense.MedicationDispensePerformerComponent t : src.getPerformer()) + tgt.addPerformer(convertMedicationDispensePerformerComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getAuthorizingPrescription()) + tgt.addAuthorizingPrescription(convertReference(t)); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasDaysSupply()) + tgt.setDaysSupply(convertSimpleQuantity(src.getDaysSupply())); + if (src.hasWhenPrepared()) + tgt.setWhenPrepared(src.getWhenPrepared()); + if (src.hasWhenHandedOver()) + tgt.setWhenHandedOver(src.getWhenHandedOver()); + if (src.hasDestination()) + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.r4.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.Dosage t : src.getDosageInstruction()) + tgt.addDosageInstruction(convertDosage(t)); + if (src.hasSubstitution()) + tgt.setSubstitution(convertMedicationDispenseSubstitutionComponent(src.getSubstitution())); + for (org.hl7.fhir.r4.model.Reference t : src.getDetectedIssue()) + tgt.addDetectedIssue(convertReference(t)); + if (src.hasNotDone()) + tgt.setNotDone(src.getNotDone()); + if (src.hasNotDoneReason()) + tgt.setNotDoneReason(convertType(src.getNotDoneReason())); + for (org.hl7.fhir.r4.model.Reference t : src.getEventHistory()) + tgt.addEventHistory(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PREPARATION: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.PREPARATION; + case INPROGRESS: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.STOPPED; + default: return org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus convertMedicationDispenseStatus(org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PREPARATION: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.PREPARATION; + case INPROGRESS: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.STOPPED; + default: return org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.MedicationDispense.MedicationDispensePerformerComponent convertMedicationDispensePerformerComponent(org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispensePerformerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationDispense.MedicationDispensePerformerComponent tgt = new org.hl7.fhir.r4.model.MedicationDispense.MedicationDispensePerformerComponent(); + copyElement(src, tgt); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispensePerformerComponent convertMedicationDispensePerformerComponent(org.hl7.fhir.r4.model.MedicationDispense.MedicationDispensePerformerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispensePerformerComponent tgt = new org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispensePerformerComponent(); + copyElement(src, tgt); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); + copyElement(src, tgt); + if (src.hasWasSubstituted()) + tgt.setWasSubstituted(src.getWasSubstituted()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getResponsibleParty()) + tgt.addResponsibleParty(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent convertMedicationDispenseSubstitutionComponent(org.hl7.fhir.r4.model.MedicationDispense.MedicationDispenseSubstitutionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent tgt = new org.hl7.fhir.dstu3.model.MedicationDispense.MedicationDispenseSubstitutionComponent(); + copyElement(src, tgt); + if (src.hasWasSubstituted()) + tgt.setWasSubstituted(src.getWasSubstituted()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getResponsibleParty()) + tgt.addResponsibleParty(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.MedicationRequest convertMedicationRequest(org.hl7.fhir.dstu3.model.MedicationRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationRequest tgt = new org.hl7.fhir.r4.model.MedicationRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasGroupIdentifier()) + tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertMedicationRequestStatus(src.getStatus())); + if (src.hasIntent()) + tgt.setIntent(convertMedicationRequestIntent(src.getIntent())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasPriority()) + tgt.setPriority(convertMedicationRequestPriority(src.getPriority())); + if (src.hasMedication()) + tgt.setMedication(convertType(src.getMedication())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInformation(convertReference(t)); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasRequester()) + tgt.setRequester(convertMedicationRequestRequesterComponent(src.getRequester())); + if (src.hasRecorder()) + tgt.setRecorder(convertReference(src.getRecorder())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosageInstruction()) + tgt.addDosageInstruction(convertDosage(t)); + if (src.hasDispenseRequest()) + tgt.setDispenseRequest(convertMedicationRequestDispenseRequestComponent(src.getDispenseRequest())); + if (src.hasSubstitution()) + tgt.setSubstitution(convertMedicationRequestSubstitutionComponent(src.getSubstitution())); + if (src.hasPriorPrescription()) + tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDetectedIssue()) + tgt.addDetectedIssue(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEventHistory()) + tgt.addEventHistory(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationRequest convertMedicationRequest(org.hl7.fhir.r4.model.MedicationRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationRequest tgt = new org.hl7.fhir.dstu3.model.MedicationRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasGroupIdentifier()) + tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertMedicationRequestStatus(src.getStatus())); + if (src.hasIntent()) + tgt.setIntent(convertMedicationRequestIntent(src.getIntent())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasPriority()) + tgt.setPriority(convertMedicationRequestPriority(src.getPriority())); + if (src.hasMedication()) + tgt.setMedication(convertType(src.getMedication())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInformation()) + tgt.addSupportingInformation(convertReference(t)); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasRequester()) + tgt.setRequester(convertMedicationRequestRequesterComponent(src.getRequester())); + if (src.hasRecorder()) + tgt.setRecorder(convertReference(src.getRecorder())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.Dosage t : src.getDosageInstruction()) + tgt.addDosageInstruction(convertDosage(t)); + if (src.hasDispenseRequest()) + tgt.setDispenseRequest(convertMedicationRequestDispenseRequestComponent(src.getDispenseRequest())); + if (src.hasSubstitution()) + tgt.setSubstitution(convertMedicationRequestSubstitutionComponent(src.getSubstitution())); + if (src.hasPriorPrescription()) + tgt.setPriorPrescription(convertReference(src.getPriorPrescription())); + for (org.hl7.fhir.r4.model.Reference t : src.getDetectedIssue()) + tgt.addDetectedIssue(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getEventHistory()) + tgt.addEventHistory(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus convertMedicationRequestStatus(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.ACTIVE; + case ONHOLD: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.ONHOLD; + case CANCELLED: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.STOPPED; + case DRAFT: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.DRAFT; + case UNKNOWN: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus convertMedicationRequestStatus(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.ACTIVE; + case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.ONHOLD; + case CANCELLED: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.STOPPED; + case DRAFT: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.DRAFT; + case UNKNOWN: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent convertMedicationRequestIntent(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSAL: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent.PROPOSAL; + case PLAN: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent.PLAN; + case ORDER: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent.ORDER; + case INSTANCEORDER: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent.INSTANCEORDER; + default: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent convertMedicationRequestIntent(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestIntent src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSAL: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent.PROPOSAL; + case PLAN: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent.PLAN; + case ORDER: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent.ORDER; + case INSTANCEORDER: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent.INSTANCEORDER; + default: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestIntent.NULL; + } +} + + private static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority convertMedicationRequestPriority(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority.URGENT; + case STAT: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority.STAT; + case ASAP: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority.ASAP; + default: return org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority convertMedicationRequestPriority(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority.URGENT; + case STAT: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority.STAT; + case ASAP: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority.ASAP; + default: return org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestPriority.NULL; + } +} + + public static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestRequesterComponent convertMedicationRequestRequesterComponent(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestRequesterComponent convertMedicationRequestRequesterComponent(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestRequesterComponent tgt = new org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestDispenseRequestComponent convertMedicationRequestDispenseRequestComponent(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestDispenseRequestComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestDispenseRequestComponent tgt = new org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestDispenseRequestComponent(); + copyElement(src, tgt); + if (src.hasValidityPeriod()) + tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); + if (src.hasNumberOfRepeatsAllowed()) + tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasExpectedSupplyDuration()) + tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestDispenseRequestComponent convertMedicationRequestDispenseRequestComponent(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestDispenseRequestComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestDispenseRequestComponent tgt = new org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestDispenseRequestComponent(); + copyElement(src, tgt); + if (src.hasValidityPeriod()) + tgt.setValidityPeriod(convertPeriod(src.getValidityPeriod())); + if (src.hasNumberOfRepeatsAllowed()) + tgt.setNumberOfRepeatsAllowed(src.getNumberOfRepeatsAllowed()); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasExpectedSupplyDuration()) + tgt.setExpectedSupplyDuration(convertDuration(src.getExpectedSupplyDuration())); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + return tgt; + } + + public static org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestSubstitutionComponent convertMedicationRequestSubstitutionComponent(org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestSubstitutionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestSubstitutionComponent tgt = new org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestSubstitutionComponent(); + copyElement(src, tgt); + if (src.hasAllowed()) + tgt.setAllowed(src.getAllowed()); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestSubstitutionComponent convertMedicationRequestSubstitutionComponent(org.hl7.fhir.r4.model.MedicationRequest.MedicationRequestSubstitutionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestSubstitutionComponent tgt = new org.hl7.fhir.dstu3.model.MedicationRequest.MedicationRequestSubstitutionComponent(); + copyElement(src, tgt); + if (src.hasAllowed()) + tgt.setAllowed(src.getAllowed()); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + return tgt; + } + + public static org.hl7.fhir.r4.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.dstu3.model.MedicationStatement src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MedicationStatement tgt = new org.hl7.fhir.r4.model.MedicationStatement(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasStatus()) + tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasMedication()) + tgt.setMedication(convertType(src.getMedication())); + if (src.hasEffective()) + tgt.setEffective(convertType(src.getEffective())); + if (src.hasDateAsserted()) + tgt.setDateAsserted(src.getDateAsserted()); + if (src.hasInformationSource()) + tgt.setInformationSource(convertReference(src.getInformationSource())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDerivedFrom()) + tgt.addDerivedFrom(convertReference(t)); + if (src.hasTaken()) + tgt.setTaken(convertMedicationStatementTaken(src.getTaken())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonNotTaken()) + tgt.addReasonNotTaken(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Dosage t : src.getDosage()) + tgt.addDosage(convertDosage(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MedicationStatement convertMedicationStatement(org.hl7.fhir.r4.model.MedicationStatement src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MedicationStatement tgt = new org.hl7.fhir.dstu3.model.MedicationStatement(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasStatus()) + tgt.setStatus(convertMedicationStatementStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasMedication()) + tgt.setMedication(convertType(src.getMedication())); + if (src.hasEffective()) + tgt.setEffective(convertType(src.getEffective())); + if (src.hasDateAsserted()) + tgt.setDateAsserted(src.getDateAsserted()); + if (src.hasInformationSource()) + tgt.setInformationSource(convertReference(src.getInformationSource())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.r4.model.Reference t : src.getDerivedFrom()) + tgt.addDerivedFrom(convertReference(t)); + if (src.hasTaken()) + tgt.setTaken(convertMedicationStatementTaken(src.getTaken())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonNotTaken()) + tgt.addReasonNotTaken(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.Dosage t : src.getDosage()) + tgt.addDosage(convertDosage(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; + case INTENDED: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.INTENDED; + case STOPPED: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.STOPPED; + case ONHOLD: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.ONHOLD; + default: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus convertMedicationStatementStatus(org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.ACTIVE; + case COMPLETED: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.ENTEREDINERROR; + case INTENDED: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.INTENDED; + case STOPPED: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.STOPPED; + case ONHOLD: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.ONHOLD; + default: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken convertMedicationStatementTaken(org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case Y: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken.Y; + case N: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken.N; + case UNK: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken.UNK; + case NA: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken.NA; + default: return org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken convertMedicationStatementTaken(org.hl7.fhir.r4.model.MedicationStatement.MedicationStatementTaken src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case Y: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken.Y; + case N: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken.N; + case UNK: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken.UNK; + case NA: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken.NA; + default: return org.hl7.fhir.dstu3.model.MedicationStatement.MedicationStatementTaken.NULL; + } +} + + public static org.hl7.fhir.r4.model.MessageDefinition convertMessageDefinition(org.hl7.fhir.dstu3.model.MessageDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MessageDefinition tgt = new org.hl7.fhir.r4.model.MessageDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasBase()) + tgt.setBase(convertReference(src.getBase())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getParent()) + tgt.addParent(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + if (src.hasEvent()) + tgt.setEvent(convertCoding(src.getEvent())); + if (src.hasCategory()) + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + for (org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent t : src.getFocus()) + tgt.addFocus(convertMessageDefinitionFocusComponent(t)); + if (src.hasResponseRequired()) + tgt.setResponseRequired(src.getResponseRequired()); + for (org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent t : src.getAllowedResponse()) + tgt.addAllowedResponse(convertMessageDefinitionAllowedResponseComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MessageDefinition convertMessageDefinition(org.hl7.fhir.r4.model.MessageDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MessageDefinition tgt = new org.hl7.fhir.dstu3.model.MessageDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasBase()) + tgt.setBase(convertReference(src.getBase())); + for (org.hl7.fhir.r4.model.Reference t : src.getParent()) + tgt.addParent(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + if (src.hasEvent()) + tgt.setEvent(convertCoding(src.getEvent())); + if (src.hasCategory()) + tgt.setCategory(convertMessageSignificanceCategory(src.getCategory())); + for (org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionFocusComponent t : src.getFocus()) + tgt.addFocus(convertMessageDefinitionFocusComponent(t)); + if (src.hasResponseRequired()) + tgt.setResponseRequired(src.getResponseRequired()); + for (org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionAllowedResponseComponent t : src.getAllowedResponse()) + tgt.addAllowedResponse(convertMessageDefinitionAllowedResponseComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory convertMessageSignificanceCategory(org.hl7.fhir.r4.model.MessageDefinition.MessageSignificanceCategory src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CONSEQUENCE: return org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory.CONSEQUENCE; + case CURRENCY: return org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory.CURRENCY; + case NOTIFICATION: return org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory.NOTIFICATION; + default: return org.hl7.fhir.dstu3.model.MessageDefinition.MessageSignificanceCategory.NULL; + } +} + + public static org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionFocusComponent convertMessageDefinitionFocusComponent(org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionFocusComponent tgt = new org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionFocusComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent convertMessageDefinitionFocusComponent(org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionFocusComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent tgt = new org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionFocusComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + return tgt; + } + + public static org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionAllowedResponseComponent convertMessageDefinitionAllowedResponseComponent(org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionAllowedResponseComponent tgt = new org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionAllowedResponseComponent(); + copyElement(src, tgt); + if (src.hasMessage()) + tgt.setMessage(convertReference(src.getMessage())); + if (src.hasSituation()) + tgt.setSituation(src.getSituation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent convertMessageDefinitionAllowedResponseComponent(org.hl7.fhir.r4.model.MessageDefinition.MessageDefinitionAllowedResponseComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent tgt = new org.hl7.fhir.dstu3.model.MessageDefinition.MessageDefinitionAllowedResponseComponent(); + copyElement(src, tgt); + if (src.hasMessage()) + tgt.setMessage(convertReference(src.getMessage())); + if (src.hasSituation()) + tgt.setSituation(src.getSituation()); + return tgt; + } + + public static org.hl7.fhir.r4.model.MessageHeader convertMessageHeader(org.hl7.fhir.dstu3.model.MessageHeader src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MessageHeader tgt = new org.hl7.fhir.r4.model.MessageHeader(); + copyDomainResource(src, tgt); + if (src.hasEvent()) + tgt.setEvent(convertCoding(src.getEvent())); + for (org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) + tgt.addDestination(convertMessageDestinationComponent(t)); + if (src.hasSender()) + tgt.setSender(convertReference(src.getSender())); + if (src.hasTimestamp()) + tgt.setTimestamp(src.getTimestamp()); + if (src.hasEnterer()) + tgt.setEnterer(convertReference(src.getEnterer())); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasSource()) + tgt.setSource(convertMessageSourceComponent(src.getSource())); + if (src.hasResponsible()) + tgt.setResponsible(convertReference(src.getResponsible())); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + if (src.hasResponse()) + tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getFocus()) + tgt.addFocus(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MessageHeader convertMessageHeader(org.hl7.fhir.r4.model.MessageHeader src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MessageHeader tgt = new org.hl7.fhir.dstu3.model.MessageHeader(); + copyDomainResource(src, tgt); + if (src.hasEvent()) + tgt.setEvent(convertCoding(src.getEvent())); + for (org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent t : src.getDestination()) + tgt.addDestination(convertMessageDestinationComponent(t)); + if (src.hasSender()) + tgt.setSender(convertReference(src.getSender())); + if (src.hasTimestamp()) + tgt.setTimestamp(src.getTimestamp()); + if (src.hasEnterer()) + tgt.setEnterer(convertReference(src.getEnterer())); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasSource()) + tgt.setSource(convertMessageSourceComponent(src.getSource())); + if (src.hasResponsible()) + tgt.setResponsible(convertReference(src.getResponsible())); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + if (src.hasResponse()) + tgt.setResponse(convertMessageHeaderResponseComponent(src.getResponse())); + for (org.hl7.fhir.r4.model.Reference t : src.getFocus()) + tgt.addFocus(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + if (src.hasEndpoint()) + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent convertMessageDestinationComponent(org.hl7.fhir.r4.model.MessageHeader.MessageDestinationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageDestinationComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + if (src.hasEndpoint()) + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public static org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasSoftware()) + tgt.setSoftware(src.getSoftware()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasContact()) + tgt.setContact(convertContactPoint(src.getContact())); + if (src.hasEndpoint()) + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent convertMessageSourceComponent(org.hl7.fhir.r4.model.MessageHeader.MessageSourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageSourceComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasSoftware()) + tgt.setSoftware(src.getSoftware()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasContact()) + tgt.setContact(convertContactPoint(src.getContact())); + if (src.hasEndpoint()) + tgt.setEndpoint(src.getEndpoint()); + return tgt; + } + + public static org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(src.getIdentifier()); + if (src.hasCode()) + tgt.setCode(convertResponseType(src.getCode())); + if (src.hasDetails()) + tgt.setDetails(convertReference(src.getDetails())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent convertMessageHeaderResponseComponent(org.hl7.fhir.r4.model.MessageHeader.MessageHeaderResponseComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent tgt = new org.hl7.fhir.dstu3.model.MessageHeader.MessageHeaderResponseComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(src.getIdentifier()); + if (src.hasCode()) + tgt.setCode(convertResponseType(src.getCode())); + if (src.hasDetails()) + tgt.setDetails(convertReference(src.getDetails())); + return tgt; + } + + private static org.hl7.fhir.r4.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.dstu3.model.MessageHeader.ResponseType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OK: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.OK; + case TRANSIENTERROR: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.TRANSIENTERROR; + case FATALERROR: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.FATALERROR; + default: return org.hl7.fhir.r4.model.MessageHeader.ResponseType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.MessageHeader.ResponseType convertResponseType(org.hl7.fhir.r4.model.MessageHeader.ResponseType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OK: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.OK; + case TRANSIENTERROR: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.TRANSIENTERROR; + case FATALERROR: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.FATALERROR; + default: return org.hl7.fhir.dstu3.model.MessageHeader.ResponseType.NULL; + } +} + + public static org.hl7.fhir.r4.model.NamingSystem convertNamingSystem(org.hl7.fhir.dstu3.model.NamingSystem src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.NamingSystem tgt = new org.hl7.fhir.r4.model.NamingSystem(); + copyDomainResource(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasKind()) + tgt.setKind(convertNamingSystemType(src.getKind())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasResponsible()) + tgt.setResponsible(src.getResponsible()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + for (org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) + tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); + if (src.hasReplacedBy()) + tgt.setReplacedBy(convertReference(src.getReplacedBy())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.NamingSystem convertNamingSystem(org.hl7.fhir.r4.model.NamingSystem src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.NamingSystem tgt = new org.hl7.fhir.dstu3.model.NamingSystem(); + copyDomainResource(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasKind()) + tgt.setKind(convertNamingSystemType(src.getKind())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasResponsible()) + tgt.setResponsible(src.getResponsible()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + for (org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent t : src.getUniqueId()) + tgt.addUniqueId(convertNamingSystemUniqueIdComponent(t)); + if (src.hasReplacedBy()) + tgt.setReplacedBy(convertReference(src.getReplacedBy())); + return tgt; + } + + private static org.hl7.fhir.r4.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODESYSTEM: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.CODESYSTEM; + case IDENTIFIER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.IDENTIFIER; + case ROOT: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.ROOT; + default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType convertNamingSystemType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CODESYSTEM: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.CODESYSTEM; + case IDENTIFIER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.IDENTIFIER; + case ROOT: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.ROOT; + default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemType.NULL; + } +} + + public static org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertNamingSystemIdentifierType(src.getType())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasPreferred()) + tgt.setPreferred(src.getPreferred()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent convertNamingSystemUniqueIdComponent(org.hl7.fhir.r4.model.NamingSystem.NamingSystemUniqueIdComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent tgt = new org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemUniqueIdComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertNamingSystemIdentifierType(src.getType())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasPreferred()) + tgt.setPreferred(src.getPreferred()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OID; + case UUID: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.UUID; + case URI: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.URI; + case OTHER: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.OTHER; + default: return org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType convertNamingSystemIdentifierType(org.hl7.fhir.r4.model.NamingSystem.NamingSystemIdentifierType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OID; + case UUID: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.UUID; + case URI: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.URI; + case OTHER: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.OTHER; + default: return org.hl7.fhir.dstu3.model.NamingSystem.NamingSystemIdentifierType.NULL; + } +} + + public static org.hl7.fhir.r4.model.NutritionOrder convertNutritionOrder(org.hl7.fhir.dstu3.model.NutritionOrder src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.NutritionOrder tgt = new org.hl7.fhir.r4.model.NutritionOrder(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertNutritionOrderStatus(src.getStatus())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasDateTime()) + tgt.setDateTime(src.getDateTime()); + if (src.hasOrderer()) + tgt.setOrderer(convertReference(src.getOrderer())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAllergyIntolerance()) + tgt.addAllergyIntolerance(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getFoodPreferenceModifier()) + tgt.addFoodPreferenceModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getExcludeFoodModifier()) + tgt.addExcludeFoodModifier(convertCodeableConcept(t)); + if (src.hasOralDiet()) + tgt.setOralDiet(convertNutritionOrderOralDietComponent(src.getOralDiet())); + for (org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderSupplementComponent t : src.getSupplement()) + tgt.addSupplement(convertNutritionOrderSupplementComponent(t)); + if (src.hasEnteralFormula()) + tgt.setEnteralFormula(convertNutritionOrderEnteralFormulaComponent(src.getEnteralFormula())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.NutritionOrder convertNutritionOrder(org.hl7.fhir.r4.model.NutritionOrder src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.NutritionOrder tgt = new org.hl7.fhir.dstu3.model.NutritionOrder(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertNutritionOrderStatus(src.getStatus())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasDateTime()) + tgt.setDateTime(src.getDateTime()); + if (src.hasOrderer()) + tgt.setOrderer(convertReference(src.getOrderer())); + for (org.hl7.fhir.r4.model.Reference t : src.getAllergyIntolerance()) + tgt.addAllergyIntolerance(convertReference(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getFoodPreferenceModifier()) + tgt.addFoodPreferenceModifier(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getExcludeFoodModifier()) + tgt.addExcludeFoodModifier(convertCodeableConcept(t)); + if (src.hasOralDiet()) + tgt.setOralDiet(convertNutritionOrderOralDietComponent(src.getOralDiet())); + for (org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderSupplementComponent t : src.getSupplement()) + tgt.addSupplement(convertNutritionOrderSupplementComponent(t)); + if (src.hasEnteralFormula()) + tgt.setEnteralFormula(convertNutritionOrderEnteralFormulaComponent(src.getEnteralFormula())); + return tgt; + } + + private static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus convertNutritionOrderStatus(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.PROPOSED; + case DRAFT: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.DRAFT; + case PLANNED: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.PLANNED; + case REQUESTED: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.REQUESTED; + case ACTIVE: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.ACTIVE; + case ONHOLD: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus convertNutritionOrderStatus(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSED: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.PROPOSED; + case DRAFT: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.DRAFT; + case PLANNED: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.PLANNED; + case REQUESTED: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.REQUESTED; + case ACTIVE: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.ACTIVE; + case ONHOLD: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.ONHOLD; + case COMPLETED: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.COMPLETED; + case CANCELLED: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietComponent convertNutritionOrderOralDietComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Timing t : src.getSchedule()) + tgt.addSchedule(convertTiming(t)); + for (org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietNutrientComponent t : src.getNutrient()) + tgt.addNutrient(convertNutritionOrderOralDietNutrientComponent(t)); + for (org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietTextureComponent t : src.getTexture()) + tgt.addTexture(convertNutritionOrderOralDietTextureComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getFluidConsistencyType()) + tgt.addFluidConsistencyType(convertCodeableConcept(t)); + if (src.hasInstruction()) + tgt.setInstruction(src.getInstruction()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietComponent convertNutritionOrderOralDietComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Timing t : src.getSchedule()) + tgt.addSchedule(convertTiming(t)); + for (org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietNutrientComponent t : src.getNutrient()) + tgt.addNutrient(convertNutritionOrderOralDietNutrientComponent(t)); + for (org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietTextureComponent t : src.getTexture()) + tgt.addTexture(convertNutritionOrderOralDietTextureComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getFluidConsistencyType()) + tgt.addFluidConsistencyType(convertCodeableConcept(t)); + if (src.hasInstruction()) + tgt.setInstruction(src.getInstruction()); + return tgt; + } + + public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietNutrientComponent convertNutritionOrderOralDietNutrientComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietNutrientComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietNutrientComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietNutrientComponent(); + copyElement(src, tgt); + if (src.hasModifier()) + tgt.setModifier(convertCodeableConcept(src.getModifier())); + if (src.hasAmount()) + tgt.setAmount(convertSimpleQuantity(src.getAmount())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietNutrientComponent convertNutritionOrderOralDietNutrientComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietNutrientComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietNutrientComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietNutrientComponent(); + copyElement(src, tgt); + if (src.hasModifier()) + tgt.setModifier(convertCodeableConcept(src.getModifier())); + if (src.hasAmount()) + tgt.setAmount(convertSimpleQuantity(src.getAmount())); + return tgt; + } + + public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietTextureComponent convertNutritionOrderOralDietTextureComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietTextureComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietTextureComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietTextureComponent(); + copyElement(src, tgt); + if (src.hasModifier()) + tgt.setModifier(convertCodeableConcept(src.getModifier())); + if (src.hasFoodType()) + tgt.setFoodType(convertCodeableConcept(src.getFoodType())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietTextureComponent convertNutritionOrderOralDietTextureComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderOralDietTextureComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietTextureComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderOralDietTextureComponent(); + copyElement(src, tgt); + if (src.hasModifier()) + tgt.setModifier(convertCodeableConcept(src.getModifier())); + if (src.hasFoodType()) + tgt.setFoodType(convertCodeableConcept(src.getFoodType())); + return tgt; + } + + public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderSupplementComponent convertNutritionOrderSupplementComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderSupplementComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderSupplementComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderSupplementComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasProductName()) + tgt.setProductName(src.getProductName()); + for (org.hl7.fhir.dstu3.model.Timing t : src.getSchedule()) + tgt.addSchedule(convertTiming(t)); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasInstruction()) + tgt.setInstruction(src.getInstruction()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderSupplementComponent convertNutritionOrderSupplementComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderSupplementComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderSupplementComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderSupplementComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasProductName()) + tgt.setProductName(src.getProductName()); + for (org.hl7.fhir.r4.model.Timing t : src.getSchedule()) + tgt.addSchedule(convertTiming(t)); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasInstruction()) + tgt.setInstruction(src.getInstruction()); + return tgt; + } + + public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaComponent convertNutritionOrderEnteralFormulaComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaComponent(); + copyElement(src, tgt); + if (src.hasBaseFormulaType()) + tgt.setBaseFormulaType(convertCodeableConcept(src.getBaseFormulaType())); + if (src.hasBaseFormulaProductName()) + tgt.setBaseFormulaProductName(src.getBaseFormulaProductName()); + if (src.hasAdditiveType()) + tgt.setAdditiveType(convertCodeableConcept(src.getAdditiveType())); + if (src.hasAdditiveProductName()) + tgt.setAdditiveProductName(src.getAdditiveProductName()); + if (src.hasCaloricDensity()) + tgt.setCaloricDensity(convertSimpleQuantity(src.getCaloricDensity())); + if (src.hasRouteofAdministration()) + tgt.setRouteofAdministration(convertCodeableConcept(src.getRouteofAdministration())); + for (org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent t : src.getAdministration()) + tgt.addAdministration(convertNutritionOrderEnteralFormulaAdministrationComponent(t)); + if (src.hasMaxVolumeToDeliver()) + tgt.setMaxVolumeToDeliver(convertSimpleQuantity(src.getMaxVolumeToDeliver())); + if (src.hasAdministrationInstruction()) + tgt.setAdministrationInstruction(src.getAdministrationInstruction()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaComponent convertNutritionOrderEnteralFormulaComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaComponent(); + copyElement(src, tgt); + if (src.hasBaseFormulaType()) + tgt.setBaseFormulaType(convertCodeableConcept(src.getBaseFormulaType())); + if (src.hasBaseFormulaProductName()) + tgt.setBaseFormulaProductName(src.getBaseFormulaProductName()); + if (src.hasAdditiveType()) + tgt.setAdditiveType(convertCodeableConcept(src.getAdditiveType())); + if (src.hasAdditiveProductName()) + tgt.setAdditiveProductName(src.getAdditiveProductName()); + if (src.hasCaloricDensity()) + tgt.setCaloricDensity(convertSimpleQuantity(src.getCaloricDensity())); + if (src.hasRouteofAdministration()) + tgt.setRouteofAdministration(convertCodeableConcept(src.getRouteofAdministration())); + for (org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent t : src.getAdministration()) + tgt.addAdministration(convertNutritionOrderEnteralFormulaAdministrationComponent(t)); + if (src.hasMaxVolumeToDeliver()) + tgt.setMaxVolumeToDeliver(convertSimpleQuantity(src.getMaxVolumeToDeliver())); + if (src.hasAdministrationInstruction()) + tgt.setAdministrationInstruction(src.getAdministrationInstruction()); + return tgt; + } + + public static org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent convertNutritionOrderEnteralFormulaAdministrationComponent(org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent tgt = new org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent(); + copyElement(src, tgt); + if (src.hasSchedule()) + tgt.setSchedule(convertTiming(src.getSchedule())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasRate()) + tgt.setRate(convertType(src.getRate())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent convertNutritionOrderEnteralFormulaAdministrationComponent(org.hl7.fhir.r4.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent tgt = new org.hl7.fhir.dstu3.model.NutritionOrder.NutritionOrderEnteralFormulaAdministrationComponent(); + copyElement(src, tgt); + if (src.hasSchedule()) + tgt.setSchedule(convertTiming(src.getSchedule())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasRate()) + tgt.setRate(convertType(src.getRate())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Observation convertObservation(org.hl7.fhir.dstu3.model.Observation src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Observation tgt = new org.hl7.fhir.r4.model.Observation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertObservationStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasEffective()) + tgt.setEffective(convertType(src.getEffective())); + if (src.hasIssued()) + tgt.setIssued(src.getIssued()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasDataAbsentReason()) + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + if (src.hasInterpretation()) + tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasSpecimen()) + tgt.setSpecimen(convertReference(src.getSpecimen())); + if (src.hasDevice()) + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + for (org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent t : src.getRelated()) + tgt.addRelated(convertObservationRelatedComponent(t)); + for (org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent t : src.getComponent()) + tgt.addComponent(convertObservationComponentComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Observation convertObservation(org.hl7.fhir.r4.model.Observation src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Observation tgt = new org.hl7.fhir.dstu3.model.Observation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertObservationStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasEffective()) + tgt.setEffective(convertType(src.getEffective())); + if (src.hasIssued()) + tgt.setIssued(src.getIssued()); + for (org.hl7.fhir.r4.model.Reference t : src.getPerformer()) + tgt.addPerformer(convertReference(t)); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasDataAbsentReason()) + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + if (src.hasInterpretation()) + tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasSpecimen()) + tgt.setSpecimen(convertReference(src.getSpecimen())); + if (src.hasDevice()) + tgt.setDevice(convertReference(src.getDevice())); + for (org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + for (org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent t : src.getRelated()) + tgt.addRelated(convertObservationRelatedComponent(t)); + for (org.hl7.fhir.r4.model.Observation.ObservationComponentComponent t : src.getComponent()) + tgt.addComponent(convertObservationComponentComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.dstu3.model.Observation.ObservationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.REGISTERED; + case PRELIMINARY: return org.hl7.fhir.r4.model.Observation.ObservationStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.r4.model.Observation.ObservationStatus.FINAL; + case AMENDED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.AMENDED; + case CORRECTED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.CORRECTED; + case CANCELLED: return org.hl7.fhir.r4.model.Observation.ObservationStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Observation.ObservationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.Observation.ObservationStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.Observation.ObservationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Observation.ObservationStatus convertObservationStatus(org.hl7.fhir.r4.model.Observation.ObservationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.REGISTERED; + case PRELIMINARY: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.FINAL; + case AMENDED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.AMENDED; + case CORRECTED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.CORRECTED; + case CANCELLED: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Observation.ObservationStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent(); + copyElement(src, tgt); + if (src.hasLow()) + tgt.setLow(convertSimpleQuantity(src.getLow())); + if (src.hasHigh()) + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAppliesTo()) + tgt.addAppliesTo(convertCodeableConcept(t)); + if (src.hasAge()) + tgt.setAge(convertRange(src.getAge())); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent convertObservationReferenceRangeComponent(org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent(); + copyElement(src, tgt); + if (src.hasLow()) + tgt.setLow(convertSimpleQuantity(src.getLow())); + if (src.hasHigh()) + tgt.setHigh(convertSimpleQuantity(src.getHigh())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAppliesTo()) + tgt.addAppliesTo(convertCodeableConcept(t)); + if (src.hasAge()) + tgt.setAge(convertRange(src.getAge())); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertObservationRelationshipType(src.getType())); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent convertObservationRelatedComponent(org.hl7.fhir.r4.model.Observation.ObservationRelatedComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationRelatedComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertObservationRelationshipType(src.getType())); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HASMEMBER: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.HASMEMBER; + case DERIVEDFROM: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.DERIVEDFROM; + case SEQUELTO: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.SEQUELTO; + case REPLACES: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.REPLACES; + case QUALIFIEDBY: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.QUALIFIEDBY; + case INTERFEREDBY: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.INTERFEREDBY; + default: return org.hl7.fhir.r4.model.Observation.ObservationRelationshipType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType convertObservationRelationshipType(org.hl7.fhir.r4.model.Observation.ObservationRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case HASMEMBER: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.HASMEMBER; + case DERIVEDFROM: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.DERIVEDFROM; + case SEQUELTO: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.SEQUELTO; + case REPLACES: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.REPLACES; + case QUALIFIEDBY: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.QUALIFIEDBY; + case INTERFEREDBY: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.INTERFEREDBY; + default: return org.hl7.fhir.dstu3.model.Observation.ObservationRelationshipType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.r4.model.Observation.ObservationComponentComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasDataAbsentReason()) + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + if (src.hasInterpretation()) + tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); + for (org.hl7.fhir.dstu3.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent convertObservationComponentComponent(org.hl7.fhir.r4.model.Observation.ObservationComponentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent tgt = new org.hl7.fhir.dstu3.model.Observation.ObservationComponentComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + if (src.hasDataAbsentReason()) + tgt.setDataAbsentReason(convertCodeableConcept(src.getDataAbsentReason())); + if (src.hasInterpretation()) + tgt.setInterpretation(convertCodeableConcept(src.getInterpretation())); + for (org.hl7.fhir.r4.model.Observation.ObservationReferenceRangeComponent t : src.getReferenceRange()) + tgt.addReferenceRange(convertObservationReferenceRangeComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.dstu3.model.OperationDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.OperationDefinition tgt = new org.hl7.fhir.r4.model.OperationDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasKind()) + tgt.setKind(convertOperationKind(src.getKind())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasIdempotent()) + tgt.setIdempotent(src.getIdempotent()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasBase()) + tgt.setBase(convertReference(src.getBase())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getResource()) + tgt.addResource(t.getValue()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasInstance()) + tgt.setInstance(src.getInstance()); + for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) + tgt.addParameter(convertOperationDefinitionParameterComponent(t)); + for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionOverloadComponent t : src.getOverload()) + tgt.addOverload(convertOperationDefinitionOverloadComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OperationDefinition convertOperationDefinition(org.hl7.fhir.r4.model.OperationDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.OperationDefinition tgt = new org.hl7.fhir.dstu3.model.OperationDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasKind()) + tgt.setKind(convertOperationKind(src.getKind())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasIdempotent()) + tgt.setIdempotent(src.getIdempotent()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + if (src.hasBase()) + tgt.setBase(convertReference(src.getBase())); + for (org.hl7.fhir.r4.model.CodeType t : src.getResource()) + tgt.addResource(t.getValue()); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasInstance()) + tgt.setInstance(src.getInstance()); + for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getParameter()) + tgt.addParameter(convertOperationDefinitionParameterComponent(t)); + for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionOverloadComponent t : src.getOverload()) + tgt.addOverload(convertOperationDefinitionOverloadComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OPERATION: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.OPERATION; + case QUERY: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.QUERY; + default: return org.hl7.fhir.r4.model.OperationDefinition.OperationKind.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind convertOperationKind(org.hl7.fhir.r4.model.OperationDefinition.OperationKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OPERATION: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.OPERATION; + case QUERY: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.QUERY; + default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationKind.NULL; + } +} + + public static org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasUse()) + tgt.setUse(convertOperationParameterUse(src.getUse())); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasSearchType()) + tgt.setSearchType(convertSearchParamType(src.getSearchType())); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + if (src.hasBinding()) + tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); + for (org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) + tgt.addPart(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent convertOperationDefinitionParameterComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasUse()) + tgt.setUse(convertOperationParameterUse(src.getUse())); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasSearchType()) + tgt.setSearchType(convertSearchParamType(src.getSearchType())); + if (src.hasProfile()) + tgt.setProfile(convertReference(src.getProfile())); + if (src.hasBinding()) + tgt.setBinding(convertOperationDefinitionParameterBindingComponent(src.getBinding())); + for (org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterComponent t : src.getPart()) + tgt.addPart(convertOperationDefinitionParameterComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.IN; + case OUT: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.OUT; + default: return org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse convertOperationParameterUse(org.hl7.fhir.r4.model.OperationDefinition.OperationParameterUse src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case IN: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.IN; + case OUT: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.OUT; + default: return org.hl7.fhir.dstu3.model.OperationDefinition.OperationParameterUse.NULL; + } +} + + public static org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); + copyElement(src, tgt); + if (src.hasStrength()) + tgt.setStrength(convertBindingStrength(src.getStrength())); + if (src.hasValueSet()) + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent convertOperationDefinitionParameterBindingComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionParameterBindingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionParameterBindingComponent(); + copyElement(src, tgt); + if (src.hasStrength()) + tgt.setStrength(convertBindingStrength(src.getStrength())); + if (src.hasValueSet()) + tgt.setValueSet(convertType(src.getValueSet())); + return tgt; + } + + public static org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionOverloadComponent convertOperationDefinitionOverloadComponent(org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionOverloadComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionOverloadComponent tgt = new org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionOverloadComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.StringType t : src.getParameterName()) + tgt.addParameterName(t.getValue()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionOverloadComponent convertOperationDefinitionOverloadComponent(org.hl7.fhir.r4.model.OperationDefinition.OperationDefinitionOverloadComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionOverloadComponent tgt = new org.hl7.fhir.dstu3.model.OperationDefinition.OperationDefinitionOverloadComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.StringType t : src.getParameterName()) + tgt.addParameterName(t.getValue()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.r4.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.dstu3.model.OperationOutcome src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.OperationOutcome tgt = new org.hl7.fhir.r4.model.OperationOutcome(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) + tgt.addIssue(convertOperationOutcomeIssueComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OperationOutcome convertOperationOutcome(org.hl7.fhir.r4.model.OperationOutcome src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.OperationOutcome tgt = new org.hl7.fhir.dstu3.model.OperationOutcome(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent t : src.getIssue()) + tgt.addIssue(convertOperationOutcomeIssueComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent(); + copyElement(src, tgt); + if (src.hasSeverity()) + tgt.setSeverity(convertIssueSeverity(src.getSeverity())); + if (src.hasCode()) + tgt.setCode(convertIssueType(src.getCode())); + if (src.hasDetails()) + tgt.setDetails(convertCodeableConcept(src.getDetails())); + if (src.hasDiagnostics()) + tgt.setDiagnostics(src.getDiagnostics()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getLocation()) + tgt.addLocation(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getExpression()) + tgt.addExpression(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent convertOperationOutcomeIssueComponent(org.hl7.fhir.r4.model.OperationOutcome.OperationOutcomeIssueComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent tgt = new org.hl7.fhir.dstu3.model.OperationOutcome.OperationOutcomeIssueComponent(); + copyElement(src, tgt); + if (src.hasSeverity()) + tgt.setSeverity(convertIssueSeverity(src.getSeverity())); + if (src.hasCode()) + tgt.setCode(convertIssueType(src.getCode())); + if (src.hasDetails()) + tgt.setDetails(convertCodeableConcept(src.getDetails())); + if (src.hasDiagnostics()) + tgt.setDiagnostics(src.getDiagnostics()); + for (org.hl7.fhir.r4.model.StringType t : src.getLocation()) + tgt.addLocation(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getExpression()) + tgt.addExpression(t.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FATAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.FATAL; + case ERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.ERROR; + case WARNING: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.WARNING; + case INFORMATION: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.INFORMATION; + default: return org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity convertIssueSeverity(org.hl7.fhir.r4.model.OperationOutcome.IssueSeverity src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FATAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.FATAL; + case ERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.ERROR; + case WARNING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.WARNING; + case INFORMATION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.INFORMATION; + default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueSeverity.NULL; + } +} + + private static org.hl7.fhir.r4.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.dstu3.model.OperationOutcome.IssueType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVALID; + case STRUCTURE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.STRUCTURE; + case REQUIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.REQUIRED; + case VALUE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.VALUE; + case INVARIANT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INVARIANT; + case SECURITY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SECURITY; + case LOGIN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOGIN; + case UNKNOWN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.UNKNOWN; + case EXPIRED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXPIRED; + case FORBIDDEN: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.FORBIDDEN; + case SUPPRESSED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.SUPPRESSED; + case PROCESSING: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.PROCESSING; + case NOTSUPPORTED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTSUPPORTED; + case DUPLICATE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.DUPLICATE; + case NOTFOUND: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOTFOUND; + case TOOLONG: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOLONG; + case CODEINVALID: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CODEINVALID; + case EXTENSION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXTENSION; + case TOOCOSTLY: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TOOCOSTLY; + case BUSINESSRULE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.BUSINESSRULE; + case CONFLICT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.CONFLICT; + case INCOMPLETE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INCOMPLETE; + case TRANSIENT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TRANSIENT; + case LOCKERROR: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.LOCKERROR; + case NOSTORE: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NOSTORE; + case EXCEPTION: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.EXCEPTION; + case TIMEOUT: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.TIMEOUT; + case THROTTLED: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.THROTTLED; + case INFORMATIONAL: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.INFORMATIONAL; + default: return org.hl7.fhir.r4.model.OperationOutcome.IssueType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.OperationOutcome.IssueType convertIssueType(org.hl7.fhir.r4.model.OperationOutcome.IssueType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVALID; + case STRUCTURE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.STRUCTURE; + case REQUIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.REQUIRED; + case VALUE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.VALUE; + case INVARIANT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INVARIANT; + case SECURITY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SECURITY; + case LOGIN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOGIN; + case UNKNOWN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.UNKNOWN; + case EXPIRED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXPIRED; + case FORBIDDEN: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.FORBIDDEN; + case SUPPRESSED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.SUPPRESSED; + case PROCESSING: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.PROCESSING; + case NOTSUPPORTED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTSUPPORTED; + case DUPLICATE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.DUPLICATE; + case NOTFOUND: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOTFOUND; + case TOOLONG: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOLONG; + case CODEINVALID: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CODEINVALID; + case EXTENSION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXTENSION; + case TOOCOSTLY: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TOOCOSTLY; + case BUSINESSRULE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.BUSINESSRULE; + case CONFLICT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.CONFLICT; + case INCOMPLETE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INCOMPLETE; + case TRANSIENT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TRANSIENT; + case LOCKERROR: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.LOCKERROR; + case NOSTORE: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NOSTORE; + case EXCEPTION: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.EXCEPTION; + case TIMEOUT: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.TIMEOUT; + case THROTTLED: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.THROTTLED; + case INFORMATIONAL: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.INFORMATIONAL; + default: return org.hl7.fhir.dstu3.model.OperationOutcome.IssueType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Organization convertOrganization(org.hl7.fhir.dstu3.model.Organization src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Organization tgt = new org.hl7.fhir.r4.model.Organization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + if (src.hasPartOf()) + tgt.setPartOf(convertReference(src.getPartOf())); + for (org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent t : src.getContact()) + tgt.addContact(convertOrganizationContactComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Organization convertOrganization(org.hl7.fhir.r4.model.Organization src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Organization tgt = new org.hl7.fhir.dstu3.model.Organization(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getType()) + tgt.addType(convertCodeableConcept(t)); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.StringType t : src.getAlias()) + tgt.addAlias(t.getValue()); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.r4.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + if (src.hasPartOf()) + tgt.setPartOf(convertReference(src.getPartOf())); + for (org.hl7.fhir.r4.model.Organization.OrganizationContactComponent t : src.getContact()) + tgt.addContact(convertOrganizationContactComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.r4.model.Organization.OrganizationContactComponent(); + copyElement(src, tgt); + if (src.hasPurpose()) + tgt.setPurpose(convertCodeableConcept(src.getPurpose())); + if (src.hasName()) + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasAddress()) + tgt.setAddress(convertAddress(src.getAddress())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent convertOrganizationContactComponent(org.hl7.fhir.r4.model.Organization.OrganizationContactComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent tgt = new org.hl7.fhir.dstu3.model.Organization.OrganizationContactComponent(); + copyElement(src, tgt); + if (src.hasPurpose()) + tgt.setPurpose(convertCodeableConcept(src.getPurpose())); + if (src.hasName()) + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasAddress()) + tgt.setAddress(convertAddress(src.getAddress())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Patient convertPatient(org.hl7.fhir.dstu3.model.Patient src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Patient tgt = new org.hl7.fhir.r4.model.Patient(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasBirthDate()) + tgt.setBirthDate(src.getBirthDate()); + if (src.hasDeceased()) + tgt.setDeceased(convertType(src.getDeceased())); + for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + if (src.hasMaritalStatus()) + tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); + if (src.hasMultipleBirth()) + tgt.setMultipleBirth(convertType(src.getMultipleBirth())); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + for (org.hl7.fhir.dstu3.model.Patient.ContactComponent t : src.getContact()) + tgt.addContact(convertContactComponent(t)); + if (src.hasAnimal()) + tgt.setAnimal(convertAnimalComponent(src.getAnimal())); + for (org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent t : src.getCommunication()) + tgt.addCommunication(convertPatientCommunicationComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getGeneralPractitioner()) + tgt.addGeneralPractitioner(convertReference(t)); + if (src.hasManagingOrganization()) + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + for (org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent t : src.getLink()) + tgt.addLink(convertPatientLinkComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Patient convertPatient(org.hl7.fhir.r4.model.Patient src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Patient tgt = new org.hl7.fhir.dstu3.model.Patient(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + for (org.hl7.fhir.r4.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasBirthDate()) + tgt.setBirthDate(src.getBirthDate()); + if (src.hasDeceased()) + tgt.setDeceased(convertType(src.getDeceased())); + for (org.hl7.fhir.r4.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + if (src.hasMaritalStatus()) + tgt.setMaritalStatus(convertCodeableConcept(src.getMaritalStatus())); + if (src.hasMultipleBirth()) + tgt.setMultipleBirth(convertType(src.getMultipleBirth())); + for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + for (org.hl7.fhir.r4.model.Patient.ContactComponent t : src.getContact()) + tgt.addContact(convertContactComponent(t)); + if (src.hasAnimal()) + tgt.setAnimal(convertAnimalComponent(src.getAnimal())); + for (org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent t : src.getCommunication()) + tgt.addCommunication(convertPatientCommunicationComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getGeneralPractitioner()) + tgt.addGeneralPractitioner(convertReference(t)); + if (src.hasManagingOrganization()) + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + for (org.hl7.fhir.r4.model.Patient.PatientLinkComponent t : src.getLink()) + tgt.addLink(convertPatientLinkComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.dstu3.model.Patient.ContactComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Patient.ContactComponent tgt = new org.hl7.fhir.r4.model.Patient.ContactComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRelationship()) + tgt.addRelationship(convertCodeableConcept(t)); + if (src.hasName()) + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasAddress()) + tgt.setAddress(convertAddress(src.getAddress())); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Patient.ContactComponent convertContactComponent(org.hl7.fhir.r4.model.Patient.ContactComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Patient.ContactComponent tgt = new org.hl7.fhir.dstu3.model.Patient.ContactComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRelationship()) + tgt.addRelationship(convertCodeableConcept(t)); + if (src.hasName()) + tgt.setName(convertHumanName(src.getName())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasAddress()) + tgt.setAddress(convertAddress(src.getAddress())); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.dstu3.model.Patient.AnimalComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Patient.AnimalComponent tgt = new org.hl7.fhir.r4.model.Patient.AnimalComponent(); + copyElement(src, tgt); + if (src.hasSpecies()) + tgt.setSpecies(convertCodeableConcept(src.getSpecies())); + if (src.hasBreed()) + tgt.setBreed(convertCodeableConcept(src.getBreed())); + if (src.hasGenderStatus()) + tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Patient.AnimalComponent convertAnimalComponent(org.hl7.fhir.r4.model.Patient.AnimalComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Patient.AnimalComponent tgt = new org.hl7.fhir.dstu3.model.Patient.AnimalComponent(); + copyElement(src, tgt); + if (src.hasSpecies()) + tgt.setSpecies(convertCodeableConcept(src.getSpecies())); + if (src.hasBreed()) + tgt.setBreed(convertCodeableConcept(src.getBreed())); + if (src.hasGenderStatus()) + tgt.setGenderStatus(convertCodeableConcept(src.getGenderStatus())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(convertCodeableConcept(src.getLanguage())); + if (src.hasPreferred()) + tgt.setPreferred(src.getPreferred()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent convertPatientCommunicationComponent(org.hl7.fhir.r4.model.Patient.PatientCommunicationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent tgt = new org.hl7.fhir.dstu3.model.Patient.PatientCommunicationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(convertCodeableConcept(src.getLanguage())); + if (src.hasPreferred()) + tgt.setPreferred(src.getPreferred()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.r4.model.Patient.PatientLinkComponent(); + copyElement(src, tgt); + if (src.hasOther()) + tgt.setOther(convertReference(src.getOther())); + if (src.hasType()) + tgt.setType(convertLinkType(src.getType())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent convertPatientLinkComponent(org.hl7.fhir.r4.model.Patient.PatientLinkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent tgt = new org.hl7.fhir.dstu3.model.Patient.PatientLinkComponent(); + copyElement(src, tgt); + if (src.hasOther()) + tgt.setOther(convertReference(src.getOther())); + if (src.hasType()) + tgt.setType(convertLinkType(src.getType())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Patient.LinkType convertLinkType(org.hl7.fhir.dstu3.model.Patient.LinkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACEDBY: return org.hl7.fhir.r4.model.Patient.LinkType.REPLACEDBY; + case REPLACES: return org.hl7.fhir.r4.model.Patient.LinkType.REPLACES; + case REFER: return org.hl7.fhir.r4.model.Patient.LinkType.REFER; + case SEEALSO: return org.hl7.fhir.r4.model.Patient.LinkType.SEEALSO; + default: return org.hl7.fhir.r4.model.Patient.LinkType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Patient.LinkType convertLinkType(org.hl7.fhir.r4.model.Patient.LinkType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REPLACEDBY: return org.hl7.fhir.dstu3.model.Patient.LinkType.REPLACEDBY; + case REPLACES: return org.hl7.fhir.dstu3.model.Patient.LinkType.REPLACES; + case REFER: return org.hl7.fhir.dstu3.model.Patient.LinkType.REFER; + case SEEALSO: return org.hl7.fhir.dstu3.model.Patient.LinkType.SEEALSO; + default: return org.hl7.fhir.dstu3.model.Patient.LinkType.NULL; + } +} + + public static org.hl7.fhir.r4.model.PaymentNotice convertPaymentNotice(org.hl7.fhir.dstu3.model.PaymentNotice src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PaymentNotice tgt = new org.hl7.fhir.r4.model.PaymentNotice(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertPaymentNoticeStatus(src.getStatus())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasStatusDate()) + tgt.setStatusDate(src.getStatusDate()); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasPaymentStatus()) + tgt.setPaymentStatus(convertCodeableConcept(src.getPaymentStatus())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PaymentNotice convertPaymentNotice(org.hl7.fhir.r4.model.PaymentNotice src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PaymentNotice tgt = new org.hl7.fhir.dstu3.model.PaymentNotice(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertPaymentNoticeStatus(src.getStatus())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasStatusDate()) + tgt.setStatusDate(src.getStatusDate()); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasPaymentStatus()) + tgt.setPaymentStatus(convertCodeableConcept(src.getPaymentStatus())); + return tgt; + } + + private static org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus convertPaymentNoticeStatus(org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus convertPaymentNoticeStatus(org.hl7.fhir.r4.model.PaymentNotice.PaymentNoticeStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.PaymentNotice.PaymentNoticeStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.PaymentReconciliation convertPaymentReconciliation(org.hl7.fhir.dstu3.model.PaymentReconciliation src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PaymentReconciliation tgt = new org.hl7.fhir.r4.model.PaymentReconciliation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertPaymentReconciliationStatus(src.getStatus())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + if (src.hasRequestProvider()) + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + if (src.hasRequestOrganization()) + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + for (org.hl7.fhir.dstu3.model.PaymentReconciliation.DetailsComponent t : src.getDetail()) + tgt.addDetail(convertDetailsComponent(t)); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + if (src.hasTotal()) + tgt.setTotal(convertMoney(src.getTotal())); + for (org.hl7.fhir.dstu3.model.PaymentReconciliation.NotesComponent t : src.getProcessNote()) + tgt.addProcessNote(convertNotesComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PaymentReconciliation convertPaymentReconciliation(org.hl7.fhir.r4.model.PaymentReconciliation src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PaymentReconciliation tgt = new org.hl7.fhir.dstu3.model.PaymentReconciliation(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertPaymentReconciliationStatus(src.getStatus())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + if (src.hasRequestProvider()) + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + if (src.hasRequestOrganization()) + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + for (org.hl7.fhir.r4.model.PaymentReconciliation.DetailsComponent t : src.getDetail()) + tgt.addDetail(convertDetailsComponent(t)); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + if (src.hasTotal()) + tgt.setTotal(convertMoney(src.getTotal())); + for (org.hl7.fhir.r4.model.PaymentReconciliation.NotesComponent t : src.getProcessNote()) + tgt.addProcessNote(convertNotesComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus convertPaymentReconciliationStatus(org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus convertPaymentReconciliationStatus(org.hl7.fhir.r4.model.PaymentReconciliation.PaymentReconciliationStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.PaymentReconciliation.PaymentReconciliationStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.PaymentReconciliation.DetailsComponent convertDetailsComponent(org.hl7.fhir.dstu3.model.PaymentReconciliation.DetailsComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PaymentReconciliation.DetailsComponent tgt = new org.hl7.fhir.r4.model.PaymentReconciliation.DetailsComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasSubmitter()) + tgt.setSubmitter(convertReference(src.getSubmitter())); + if (src.hasPayee()) + tgt.setPayee(convertReference(src.getPayee())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAmount()) + tgt.setAmount(convertMoney(src.getAmount())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PaymentReconciliation.DetailsComponent convertDetailsComponent(org.hl7.fhir.r4.model.PaymentReconciliation.DetailsComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PaymentReconciliation.DetailsComponent tgt = new org.hl7.fhir.dstu3.model.PaymentReconciliation.DetailsComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasSubmitter()) + tgt.setSubmitter(convertReference(src.getSubmitter())); + if (src.hasPayee()) + tgt.setPayee(convertReference(src.getPayee())); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasAmount()) + tgt.setAmount(convertMoney(src.getAmount())); + return tgt; + } + + public static org.hl7.fhir.r4.model.PaymentReconciliation.NotesComponent convertNotesComponent(org.hl7.fhir.dstu3.model.PaymentReconciliation.NotesComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PaymentReconciliation.NotesComponent tgt = new org.hl7.fhir.r4.model.PaymentReconciliation.NotesComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PaymentReconciliation.NotesComponent convertNotesComponent(org.hl7.fhir.r4.model.PaymentReconciliation.NotesComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PaymentReconciliation.NotesComponent tgt = new org.hl7.fhir.dstu3.model.PaymentReconciliation.NotesComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Person convertPerson(org.hl7.fhir.dstu3.model.Person src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Person tgt = new org.hl7.fhir.r4.model.Person(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasBirthDate()) + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + if (src.hasPhoto()) + tgt.setPhoto(convertAttachment(src.getPhoto())); + if (src.hasManagingOrganization()) + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + if (src.hasActive()) + tgt.setActive(src.getActive()); + for (org.hl7.fhir.dstu3.model.Person.PersonLinkComponent t : src.getLink()) + tgt.addLink(convertPersonLinkComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Person convertPerson(org.hl7.fhir.r4.model.Person src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Person tgt = new org.hl7.fhir.dstu3.model.Person(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasBirthDate()) + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.r4.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + if (src.hasPhoto()) + tgt.setPhoto(convertAttachment(src.getPhoto())); + if (src.hasManagingOrganization()) + tgt.setManagingOrganization(convertReference(src.getManagingOrganization())); + if (src.hasActive()) + tgt.setActive(src.getActive()); + for (org.hl7.fhir.r4.model.Person.PersonLinkComponent t : src.getLink()) + tgt.addLink(convertPersonLinkComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.dstu3.model.Person.PersonLinkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.r4.model.Person.PersonLinkComponent(); + copyElement(src, tgt); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + if (src.hasAssurance()) + tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Person.PersonLinkComponent convertPersonLinkComponent(org.hl7.fhir.r4.model.Person.PersonLinkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Person.PersonLinkComponent tgt = new org.hl7.fhir.dstu3.model.Person.PersonLinkComponent(); + copyElement(src, tgt); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + if (src.hasAssurance()) + tgt.setAssurance(convertIdentityAssuranceLevel(src.getAssurance())); + return tgt; + } + + private static org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LEVEL1: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL1; + case LEVEL2: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL2; + case LEVEL3: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL3; + case LEVEL4: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.LEVEL4; + default: return org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel convertIdentityAssuranceLevel(org.hl7.fhir.r4.model.Person.IdentityAssuranceLevel src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case LEVEL1: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL1; + case LEVEL2: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL2; + case LEVEL3: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL3; + case LEVEL4: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.LEVEL4; + default: return org.hl7.fhir.dstu3.model.Person.IdentityAssuranceLevel.NULL; + } +} + + public static org.hl7.fhir.r4.model.PlanDefinition convertPlanDefinition(org.hl7.fhir.dstu3.model.PlanDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PlanDefinition tgt = new org.hl7.fhir.r4.model.PlanDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTopic()) + tgt.addTopic(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Contributor t : src.getContributor()) + tgt.addContributor(convertContributor(t)); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getLibrary()) + tgt.addLibrary(convertReference(t)); + for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalComponent t : src.getGoal()) + tgt.addGoal(convertPlanDefinitionGoalComponent(t)); + for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent t : src.getAction()) + tgt.addAction(convertPlanDefinitionActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PlanDefinition convertPlanDefinition(org.hl7.fhir.r4.model.PlanDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PlanDefinition tgt = new org.hl7.fhir.dstu3.model.PlanDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTopic()) + tgt.addTopic(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Contributor t : src.getContributor()) + tgt.addContributor(convertContributor(t)); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getLibrary()) + tgt.addLibrary(convertReference(t)); + for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalComponent t : src.getGoal()) + tgt.addGoal(convertPlanDefinitionGoalComponent(t)); + for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent t : src.getAction()) + tgt.addAction(convertPlanDefinitionActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalComponent convertPlanDefinitionGoalComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasDescription()) + tgt.setDescription(convertCodeableConcept(src.getDescription())); + if (src.hasPriority()) + tgt.setPriority(convertCodeableConcept(src.getPriority())); + if (src.hasStart()) + tgt.setStart(convertCodeableConcept(src.getStart())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getAddresses()) + tgt.addAddresses(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getDocumentation()) + tgt.addDocumentation(convertRelatedArtifact(t)); + for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalTargetComponent t : src.getTarget()) + tgt.addTarget(convertPlanDefinitionGoalTargetComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalComponent convertPlanDefinitionGoalComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalComponent(); + copyElement(src, tgt); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasDescription()) + tgt.setDescription(convertCodeableConcept(src.getDescription())); + if (src.hasPriority()) + tgt.setPriority(convertCodeableConcept(src.getPriority())); + if (src.hasStart()) + tgt.setStart(convertCodeableConcept(src.getStart())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getAddresses()) + tgt.addAddresses(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getDocumentation()) + tgt.addDocumentation(convertRelatedArtifact(t)); + for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalTargetComponent t : src.getTarget()) + tgt.addTarget(convertPlanDefinitionGoalTargetComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalTargetComponent convertPlanDefinitionGoalTargetComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalTargetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalTargetComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalTargetComponent(); + copyElement(src, tgt); + if (src.hasMeasure()) + tgt.setMeasure(convertCodeableConcept(src.getMeasure())); + if (src.hasDetail()) + tgt.setDetail(convertType(src.getDetail())); + if (src.hasDue()) + tgt.setDue(convertDuration(src.getDue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalTargetComponent convertPlanDefinitionGoalTargetComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionGoalTargetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalTargetComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionGoalTargetComponent(); + copyElement(src, tgt); + if (src.hasMeasure()) + tgt.setMeasure(convertCodeableConcept(src.getMeasure())); + if (src.hasDetail()) + tgt.setDetail(convertType(src.getDetail())); + if (src.hasDue()) + tgt.setDue(convertDuration(src.getDue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent convertPlanDefinitionActionComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasTextEquivalent()) + tgt.setTextEquivalent(src.getTextEquivalent()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getDocumentation()) + tgt.addDocumentation(convertRelatedArtifact(t)); + for (org.hl7.fhir.dstu3.model.IdType t : src.getGoalId()) + tgt.addGoalId(t.getValue()); + for (org.hl7.fhir.dstu3.model.TriggerDefinition t : src.getTriggerDefinition()) + tgt.addTriggerDefinition(convertTriggerDefinition(t)); + for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionConditionComponent t : src.getCondition()) + tgt.addCondition(convertPlanDefinitionActionConditionComponent(t)); + for (org.hl7.fhir.dstu3.model.DataRequirement t : src.getInput()) + tgt.addInput(convertDataRequirement(t)); + for (org.hl7.fhir.dstu3.model.DataRequirement t : src.getOutput()) + tgt.addOutput(convertDataRequirement(t)); + for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent t : src.getRelatedAction()) + tgt.addRelatedAction(convertPlanDefinitionActionRelatedActionComponent(t)); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertPlanDefinitionActionParticipantComponent(t)); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + if (src.hasGroupingBehavior()) + tgt.setGroupingBehavior(convertActionGroupingBehavior(src.getGroupingBehavior())); + if (src.hasSelectionBehavior()) + tgt.setSelectionBehavior(convertActionSelectionBehavior(src.getSelectionBehavior())); + if (src.hasRequiredBehavior()) + tgt.setRequiredBehavior(convertActionRequiredBehavior(src.getRequiredBehavior())); + if (src.hasPrecheckBehavior()) + tgt.setPrecheckBehavior(convertActionPrecheckBehavior(src.getPrecheckBehavior())); + if (src.hasCardinalityBehavior()) + tgt.setCardinalityBehavior(convertActionCardinalityBehavior(src.getCardinalityBehavior())); + if (src.hasDefinition()) + tgt.setDefinition(convertReference(src.getDefinition())); + if (src.hasTransform()) + tgt.setTransform(convertReference(src.getTransform())); + for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent t : src.getDynamicValue()) + tgt.addDynamicValue(convertPlanDefinitionActionDynamicValueComponent(t)); + for (org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent t : src.getAction()) + tgt.addAction(convertPlanDefinitionActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent convertPlanDefinitionActionComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasTextEquivalent()) + tgt.setTextEquivalent(src.getTextEquivalent()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReason()) + tgt.addReason(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getDocumentation()) + tgt.addDocumentation(convertRelatedArtifact(t)); + for (org.hl7.fhir.r4.model.IdType t : src.getGoalId()) + tgt.addGoalId(t.getValue()); + for (org.hl7.fhir.r4.model.TriggerDefinition t : src.getTriggerDefinition()) + tgt.addTriggerDefinition(convertTriggerDefinition(t)); + for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionConditionComponent t : src.getCondition()) + tgt.addCondition(convertPlanDefinitionActionConditionComponent(t)); + for (org.hl7.fhir.r4.model.DataRequirement t : src.getInput()) + tgt.addInput(convertDataRequirement(t)); + for (org.hl7.fhir.r4.model.DataRequirement t : src.getOutput()) + tgt.addOutput(convertDataRequirement(t)); + for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent t : src.getRelatedAction()) + tgt.addRelatedAction(convertPlanDefinitionActionRelatedActionComponent(t)); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertPlanDefinitionActionParticipantComponent(t)); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + if (src.hasGroupingBehavior()) + tgt.setGroupingBehavior(convertActionGroupingBehavior(src.getGroupingBehavior())); + if (src.hasSelectionBehavior()) + tgt.setSelectionBehavior(convertActionSelectionBehavior(src.getSelectionBehavior())); + if (src.hasRequiredBehavior()) + tgt.setRequiredBehavior(convertActionRequiredBehavior(src.getRequiredBehavior())); + if (src.hasPrecheckBehavior()) + tgt.setPrecheckBehavior(convertActionPrecheckBehavior(src.getPrecheckBehavior())); + if (src.hasCardinalityBehavior()) + tgt.setCardinalityBehavior(convertActionCardinalityBehavior(src.getCardinalityBehavior())); + if (src.hasDefinition()) + tgt.setDefinition(convertReference(src.getDefinition())); + if (src.hasTransform()) + tgt.setTransform(convertReference(src.getTransform())); + for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent t : src.getDynamicValue()) + tgt.addDynamicValue(convertPlanDefinitionActionDynamicValueComponent(t)); + for (org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionComponent t : src.getAction()) + tgt.addAction(convertPlanDefinitionActionComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior convertActionGroupingBehavior(org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case VISUALGROUP: return org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior.VISUALGROUP; + case LOGICALGROUP: return org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior.LOGICALGROUP; + case SENTENCEGROUP: return org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior.SENTENCEGROUP; + default: return org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior convertActionGroupingBehavior(org.hl7.fhir.r4.model.PlanDefinition.ActionGroupingBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case VISUALGROUP: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior.VISUALGROUP; + case LOGICALGROUP: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior.LOGICALGROUP; + case SENTENCEGROUP: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior.SENTENCEGROUP; + default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionGroupingBehavior.NULL; + } +} + + private static org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior convertActionSelectionBehavior(org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ANY: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.ANY; + case ALL: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.ALL; + case ALLORNONE: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.ALLORNONE; + case EXACTLYONE: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.EXACTLYONE; + case ATMOSTONE: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.ATMOSTONE; + case ONEORMORE: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.ONEORMORE; + default: return org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior convertActionSelectionBehavior(org.hl7.fhir.r4.model.PlanDefinition.ActionSelectionBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ANY: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.ANY; + case ALL: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.ALL; + case ALLORNONE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.ALLORNONE; + case EXACTLYONE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.EXACTLYONE; + case ATMOSTONE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.ATMOSTONE; + case ONEORMORE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.ONEORMORE; + default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionSelectionBehavior.NULL; + } +} + + private static org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior convertActionRequiredBehavior(org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MUST: return org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior.MUST; + case COULD: return org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior.COULD; + case MUSTUNLESSDOCUMENTED: return org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior.MUSTUNLESSDOCUMENTED; + default: return org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior convertActionRequiredBehavior(org.hl7.fhir.r4.model.PlanDefinition.ActionRequiredBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MUST: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior.MUST; + case COULD: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior.COULD; + case MUSTUNLESSDOCUMENTED: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior.MUSTUNLESSDOCUMENTED; + default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRequiredBehavior.NULL; + } +} + + private static org.hl7.fhir.r4.model.PlanDefinition.ActionPrecheckBehavior convertActionPrecheckBehavior(org.hl7.fhir.dstu3.model.PlanDefinition.ActionPrecheckBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case YES: return org.hl7.fhir.r4.model.PlanDefinition.ActionPrecheckBehavior.YES; + case NO: return org.hl7.fhir.r4.model.PlanDefinition.ActionPrecheckBehavior.NO; + default: return org.hl7.fhir.r4.model.PlanDefinition.ActionPrecheckBehavior.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionPrecheckBehavior convertActionPrecheckBehavior(org.hl7.fhir.r4.model.PlanDefinition.ActionPrecheckBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case YES: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionPrecheckBehavior.YES; + case NO: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionPrecheckBehavior.NO; + default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionPrecheckBehavior.NULL; + } +} + + private static org.hl7.fhir.r4.model.PlanDefinition.ActionCardinalityBehavior convertActionCardinalityBehavior(org.hl7.fhir.dstu3.model.PlanDefinition.ActionCardinalityBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SINGLE: return org.hl7.fhir.r4.model.PlanDefinition.ActionCardinalityBehavior.SINGLE; + case MULTIPLE: return org.hl7.fhir.r4.model.PlanDefinition.ActionCardinalityBehavior.MULTIPLE; + default: return org.hl7.fhir.r4.model.PlanDefinition.ActionCardinalityBehavior.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionCardinalityBehavior convertActionCardinalityBehavior(org.hl7.fhir.r4.model.PlanDefinition.ActionCardinalityBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SINGLE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionCardinalityBehavior.SINGLE; + case MULTIPLE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionCardinalityBehavior.MULTIPLE; + default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionCardinalityBehavior.NULL; + } +} + + public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionConditionComponent convertPlanDefinitionActionConditionComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionConditionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionConditionComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionConditionComponent(); + copyElement(src, tgt); + if (src.hasKind()) + tgt.setKind(convertActionConditionKind(src.getKind())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionConditionComponent convertPlanDefinitionActionConditionComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionConditionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionConditionComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionConditionComponent(); + copyElement(src, tgt); + if (src.hasKind()) + tgt.setKind(convertActionConditionKind(src.getKind())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + return tgt; + } + + private static org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind convertActionConditionKind(org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case APPLICABILITY: return org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind.APPLICABILITY; + case START: return org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind.START; + case STOP: return org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind.STOP; + default: return org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind convertActionConditionKind(org.hl7.fhir.r4.model.PlanDefinition.ActionConditionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case APPLICABILITY: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind.APPLICABILITY; + case START: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind.START; + case STOP: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind.STOP; + default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionConditionKind.NULL; + } +} + + public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent convertPlanDefinitionActionRelatedActionComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent(); + copyElement(src, tgt); + if (src.hasActionId()) + tgt.setActionId(src.getActionId()); + if (src.hasRelationship()) + tgt.setRelationship(convertActionRelationshipType(src.getRelationship())); + if (src.hasOffset()) + tgt.setOffset(convertType(src.getOffset())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent convertPlanDefinitionActionRelatedActionComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionRelatedActionComponent(); + copyElement(src, tgt); + if (src.hasActionId()) + tgt.setActionId(src.getActionId()); + if (src.hasRelationship()) + tgt.setRelationship(convertActionRelationshipType(src.getRelationship())); + if (src.hasOffset()) + tgt.setOffset(convertType(src.getOffset())); + return tgt; + } + + private static org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType convertActionRelationshipType(org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BEFORESTART: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.BEFORESTART; + case BEFORE: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.BEFORE; + case BEFOREEND: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.BEFOREEND; + case CONCURRENTWITHSTART: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.CONCURRENTWITHSTART; + case CONCURRENT: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.CONCURRENT; + case CONCURRENTWITHEND: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.CONCURRENTWITHEND; + case AFTERSTART: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.AFTERSTART; + case AFTER: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.AFTER; + case AFTEREND: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.AFTEREND; + default: return org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType convertActionRelationshipType(org.hl7.fhir.r4.model.PlanDefinition.ActionRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BEFORESTART: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.BEFORESTART; + case BEFORE: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.BEFORE; + case BEFOREEND: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.BEFOREEND; + case CONCURRENTWITHSTART: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.CONCURRENTWITHSTART; + case CONCURRENT: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.CONCURRENT; + case CONCURRENTWITHEND: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.CONCURRENTWITHEND; + case AFTERSTART: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.AFTERSTART; + case AFTER: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.AFTER; + case AFTEREND: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.AFTEREND; + default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionRelationshipType.NULL; + } +} + + public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionParticipantComponent convertPlanDefinitionActionParticipantComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionParticipantComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionParticipantComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertActionParticipantType(src.getType())); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionParticipantComponent convertPlanDefinitionActionParticipantComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionParticipantComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionParticipantComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertActionParticipantType(src.getType())); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + return tgt; + } + + private static org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType convertActionParticipantType(org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType.PATIENT; + case PRACTITIONER: return org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType.PRACTITIONER; + case RELATEDPERSON: return org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType.RELATEDPERSON; + default: return org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType convertActionParticipantType(org.hl7.fhir.r4.model.PlanDefinition.ActionParticipantType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PATIENT: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType.PATIENT; + case PRACTITIONER: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType.PRACTITIONER; + case RELATEDPERSON: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType.RELATEDPERSON; + default: return org.hl7.fhir.dstu3.model.PlanDefinition.ActionParticipantType.NULL; + } +} + + public static org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent convertPlanDefinitionActionDynamicValueComponent(org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent tgt = new org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent convertPlanDefinitionActionDynamicValueComponent(org.hl7.fhir.r4.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent tgt = new org.hl7.fhir.dstu3.model.PlanDefinition.PlanDefinitionActionDynamicValueComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Practitioner convertPractitioner(org.hl7.fhir.dstu3.model.Practitioner src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Practitioner tgt = new org.hl7.fhir.r4.model.Practitioner(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasBirthDate()) + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + for (org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) + tgt.addQualification(convertPractitionerQualificationComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCommunication()) + tgt.addCommunication(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Practitioner convertPractitioner(org.hl7.fhir.r4.model.Practitioner src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Practitioner tgt = new org.hl7.fhir.dstu3.model.Practitioner(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + for (org.hl7.fhir.r4.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.r4.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasBirthDate()) + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + for (org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent t : src.getQualification()) + tgt.addQualification(convertPractitionerQualificationComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCommunication()) + tgt.addCommunication(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasIssuer()) + tgt.setIssuer(convertReference(src.getIssuer())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent convertPractitionerQualificationComponent(org.hl7.fhir.r4.model.Practitioner.PractitionerQualificationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent tgt = new org.hl7.fhir.dstu3.model.Practitioner.PractitionerQualificationComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasIssuer()) + tgt.setIssuer(convertReference(src.getIssuer())); + return tgt; + } + + public static org.hl7.fhir.r4.model.PractitionerRole convertPractitionerRole(org.hl7.fhir.dstu3.model.PractitionerRole src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PractitionerRole tgt = new org.hl7.fhir.r4.model.PractitionerRole(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasPractitioner()) + tgt.setPractitioner(convertReference(src.getPractitioner())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getLocation()) + tgt.addLocation(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getHealthcareService()) + tgt.addHealthcareService(convertReference(t)); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleAvailableTimeComponent t : src.getAvailableTime()) + tgt.addAvailableTime(convertPractitionerRoleAvailableTimeComponent(t)); + for (org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleNotAvailableComponent t : src.getNotAvailable()) + tgt.addNotAvailable(convertPractitionerRoleNotAvailableComponent(t)); + if (src.hasAvailabilityExceptions()) + tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PractitionerRole convertPractitionerRole(org.hl7.fhir.r4.model.PractitionerRole src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PractitionerRole tgt = new org.hl7.fhir.dstu3.model.PractitionerRole(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasPractitioner()) + tgt.setPractitioner(convertReference(src.getPractitioner())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getLocation()) + tgt.addLocation(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getHealthcareService()) + tgt.addHealthcareService(convertReference(t)); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + for (org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleAvailableTimeComponent t : src.getAvailableTime()) + tgt.addAvailableTime(convertPractitionerRoleAvailableTimeComponent(t)); + for (org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleNotAvailableComponent t : src.getNotAvailable()) + tgt.addNotAvailable(convertPractitionerRoleNotAvailableComponent(t)); + if (src.hasAvailabilityExceptions()) + tgt.setAvailabilityExceptions(src.getAvailabilityExceptions()); + for (org.hl7.fhir.r4.model.Reference t : src.getEndpoint()) + tgt.addEndpoint(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleAvailableTimeComponent convertPractitionerRoleAvailableTimeComponent(org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleAvailableTimeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleAvailableTimeComponent tgt = new org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleAvailableTimeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getDaysOfWeek()) + tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); + if (src.hasAllDay()) + tgt.setAllDay(src.getAllDay()); + if (src.hasAvailableStartTime()) + tgt.setAvailableStartTime(src.getAvailableStartTime()); + if (src.hasAvailableEndTime()) + tgt.setAvailableEndTime(src.getAvailableEndTime()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleAvailableTimeComponent convertPractitionerRoleAvailableTimeComponent(org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleAvailableTimeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleAvailableTimeComponent tgt = new org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleAvailableTimeComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Enumeration t : src.getDaysOfWeek()) + tgt.addDaysOfWeek(convertDaysOfWeek(t.getValue())); + if (src.hasAllDay()) + tgt.setAllDay(src.getAllDay()); + if (src.hasAvailableStartTime()) + tgt.setAvailableStartTime(src.getAvailableStartTime()); + if (src.hasAvailableEndTime()) + tgt.setAvailableEndTime(src.getAvailableEndTime()); + return tgt; + } + + private static org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MON: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.MON; + case TUE: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.TUE; + case WED: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.WED; + case THU: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.THU; + case FRI: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.FRI; + case SAT: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.SAT; + case SUN: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.SUN; + default: return org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek convertDaysOfWeek(org.hl7.fhir.r4.model.PractitionerRole.DaysOfWeek src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MON: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.MON; + case TUE: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.TUE; + case WED: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.WED; + case THU: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.THU; + case FRI: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.FRI; + case SAT: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.SAT; + case SUN: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.SUN; + default: return org.hl7.fhir.dstu3.model.PractitionerRole.DaysOfWeek.NULL; + } +} + + public static org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleNotAvailableComponent convertPractitionerRoleNotAvailableComponent(org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleNotAvailableComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleNotAvailableComponent tgt = new org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleNotAvailableComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasDuring()) + tgt.setDuring(convertPeriod(src.getDuring())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleNotAvailableComponent convertPractitionerRoleNotAvailableComponent(org.hl7.fhir.r4.model.PractitionerRole.PractitionerRoleNotAvailableComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleNotAvailableComponent tgt = new org.hl7.fhir.dstu3.model.PractitionerRole.PractitionerRoleNotAvailableComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasDuring()) + tgt.setDuring(convertPeriod(src.getDuring())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Procedure convertProcedure(org.hl7.fhir.dstu3.model.Procedure src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Procedure tgt = new org.hl7.fhir.r4.model.Procedure(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertProcedureStatus(src.getStatus())); + if (src.hasNotDone()) + tgt.setNotDone(src.getNotDone()); + if (src.hasNotDoneReason()) + tgt.setNotDoneReason(convertCodeableConcept(src.getNotDoneReason())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasPerformed()) + tgt.setPerformed(convertType(src.getPerformed())); + for (org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) + tgt.addPerformer(convertProcedurePerformerComponent(t)); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReport()) + tgt.addReport(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getComplication()) + tgt.addComplication(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getComplicationDetail()) + tgt.addComplicationDetail(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getFollowUp()) + tgt.addFollowUp(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) + tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getUsedReference()) + tgt.addUsedReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getUsedCode()) + tgt.addUsedCode(convertCodeableConcept(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Procedure convertProcedure(org.hl7.fhir.r4.model.Procedure src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Procedure tgt = new org.hl7.fhir.dstu3.model.Procedure(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertProcedureStatus(src.getStatus())); + if (src.hasNotDone()) + tgt.setNotDone(src.getNotDone()); + if (src.hasNotDoneReason()) + tgt.setNotDoneReason(convertCodeableConcept(src.getNotDoneReason())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasPerformed()) + tgt.setPerformed(convertType(src.getPerformed())); + for (org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent t : src.getPerformer()) + tgt.addPerformer(convertProcedurePerformerComponent(t)); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + for (org.hl7.fhir.r4.model.Reference t : src.getReport()) + tgt.addReport(convertReference(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getComplication()) + tgt.addComplication(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getComplicationDetail()) + tgt.addComplicationDetail(convertReference(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getFollowUp()) + tgt.addFollowUp(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent t : src.getFocalDevice()) + tgt.addFocalDevice(convertProcedureFocalDeviceComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getUsedReference()) + tgt.addUsedReference(convertReference(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getUsedCode()) + tgt.addUsedCode(convertCodeableConcept(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PREPARATION: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.PREPARATION; + case INPROGRESS: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.INPROGRESS; + case SUSPENDED: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.SUSPENDED; + case ABORTED: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.ABORTED; + case COMPLETED: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.Procedure.ProcedureStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus convertProcedureStatus(org.hl7.fhir.r4.model.Procedure.ProcedureStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PREPARATION: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.PREPARATION; + case INPROGRESS: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.INPROGRESS; + case SUSPENDED: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.SUSPENDED; + case ABORTED: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.ABORTED; + case COMPLETED: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Procedure.ProcedureStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent(); + copyElement(src, tgt); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent convertProcedurePerformerComponent(org.hl7.fhir.r4.model.Procedure.ProcedurePerformerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent tgt = new org.hl7.fhir.dstu3.model.Procedure.ProcedurePerformerComponent(); + copyElement(src, tgt); + if (src.hasRole()) + tgt.setRole(convertCodeableConcept(src.getRole())); + if (src.hasActor()) + tgt.setActor(convertReference(src.getActor())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent(); + copyElement(src, tgt); + if (src.hasAction()) + tgt.setAction(convertCodeableConcept(src.getAction())); + if (src.hasManipulated()) + tgt.setManipulated(convertReference(src.getManipulated())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent convertProcedureFocalDeviceComponent(org.hl7.fhir.r4.model.Procedure.ProcedureFocalDeviceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent tgt = new org.hl7.fhir.dstu3.model.Procedure.ProcedureFocalDeviceComponent(); + copyElement(src, tgt); + if (src.hasAction()) + tgt.setAction(convertCodeableConcept(src.getAction())); + if (src.hasManipulated()) + tgt.setManipulated(convertReference(src.getManipulated())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.dstu3.model.ProcedureRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ProcedureRequest tgt = new org.hl7.fhir.r4.model.ProcedureRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + if (src.hasRequisition()) + tgt.setRequisition(convertIdentifier(src.getRequisition())); + if (src.hasStatus()) + tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); + if (src.hasIntent()) + tgt.setIntent(convertProcedureRequestIntent(src.getIntent())); + if (src.hasPriority()) + tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); + if (src.hasDoNotPerform()) + tgt.setDoNotPerform(src.getDoNotPerform()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasAsNeeded()) + tgt.setAsNeeded(convertType(src.getAsNeeded())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasRequester()) + tgt.setRequester(convertProcedureRequestRequesterComponent(src.getRequester())); + if (src.hasPerformerType()) + tgt.setPerformerType(convertCodeableConcept(src.getPerformerType())); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInfo()) + tgt.addSupportingInfo(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSpecimen()) + tgt.addSpecimen(convertReference(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRelevantHistory()) + tgt.addRelevantHistory(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ProcedureRequest convertProcedureRequest(org.hl7.fhir.r4.model.ProcedureRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ProcedureRequest tgt = new org.hl7.fhir.dstu3.model.ProcedureRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + if (src.hasRequisition()) + tgt.setRequisition(convertIdentifier(src.getRequisition())); + if (src.hasStatus()) + tgt.setStatus(convertProcedureRequestStatus(src.getStatus())); + if (src.hasIntent()) + tgt.setIntent(convertProcedureRequestIntent(src.getIntent())); + if (src.hasPriority()) + tgt.setPriority(convertProcedureRequestPriority(src.getPriority())); + if (src.hasDoNotPerform()) + tgt.setDoNotPerform(src.getDoNotPerform()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasAsNeeded()) + tgt.setAsNeeded(convertType(src.getAsNeeded())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasRequester()) + tgt.setRequester(convertProcedureRequestRequesterComponent(src.getRequester())); + if (src.hasPerformerType()) + tgt.setPerformerType(convertCodeableConcept(src.getPerformerType())); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getSupportingInfo()) + tgt.addSupportingInfo(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getSpecimen()) + tgt.addSpecimen(convertReference(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getBodySite()) + tgt.addBodySite(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getRelevantHistory()) + tgt.addRelevantHistory(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus convertProcedureRequestStatus(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent convertProcedureRequestIntent(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSAL: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.PROPOSAL; + case PLAN: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.PLAN; + case ORDER: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.ORDER; + case ORIGINALORDER: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.ORIGINALORDER; + case REFLEXORDER: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.REFLEXORDER; + case FILLERORDER: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.FILLERORDER; + case INSTANCEORDER: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.INSTANCEORDER; + case OPTION: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.OPTION; + default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent convertProcedureRequestIntent(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestIntent src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSAL: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.PROPOSAL; + case PLAN: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.PLAN; + case ORDER: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.ORDER; + case ORIGINALORDER: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.ORIGINALORDER; + case REFLEXORDER: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.REFLEXORDER; + case FILLERORDER: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.FILLERORDER; + case INSTANCEORDER: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.INSTANCEORDER; + case OPTION: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.OPTION; + default: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestIntent.NULL; + } +} + + private static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.URGENT; + case ASAP: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ASAP; + case STAT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.STAT; + default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority convertProcedureRequestPriority(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.URGENT; + case ASAP: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.ASAP; + case STAT: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.STAT; + default: return org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestPriority.NULL; + } +} + + public static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent convertProcedureRequestRequesterComponent(org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestRequesterComponent convertProcedureRequestRequesterComponent(org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestRequesterComponent tgt = new org.hl7.fhir.dstu3.model.ProcedureRequest.ProcedureRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ProcessRequest convertProcessRequest(org.hl7.fhir.dstu3.model.ProcessRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ProcessRequest tgt = new org.hl7.fhir.r4.model.ProcessRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertProcessRequestStatus(src.getStatus())); + if (src.hasAction()) + tgt.setAction(convertActionList(src.getAction())); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasNullify()) + tgt.setNullify(src.getNullify()); + if (src.hasReference()) + tgt.setReference(src.getReference()); + for (org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent t : src.getItem()) + tgt.addItem(convertItemsComponent(t)); + for (org.hl7.fhir.dstu3.model.StringType t : src.getInclude()) + tgt.addInclude(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getExclude()) + tgt.addExclude(t.getValue()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ProcessRequest convertProcessRequest(org.hl7.fhir.r4.model.ProcessRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ProcessRequest tgt = new org.hl7.fhir.dstu3.model.ProcessRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertProcessRequestStatus(src.getStatus())); + if (src.hasAction()) + tgt.setAction(convertActionList(src.getAction())); + if (src.hasTarget()) + tgt.setTarget(convertReference(src.getTarget())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasProvider()) + tgt.setProvider(convertReference(src.getProvider())); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasResponse()) + tgt.setResponse(convertReference(src.getResponse())); + if (src.hasNullify()) + tgt.setNullify(src.getNullify()); + if (src.hasReference()) + tgt.setReference(src.getReference()); + for (org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent t : src.getItem()) + tgt.addItem(convertItemsComponent(t)); + for (org.hl7.fhir.r4.model.StringType t : src.getInclude()) + tgt.addInclude(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getExclude()) + tgt.addExclude(t.getValue()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus convertProcessRequestStatus(org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus convertProcessRequestStatus(org.hl7.fhir.r4.model.ProcessRequest.ProcessRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.ProcessRequest.ProcessRequestStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.dstu3.model.ProcessRequest.ActionList src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CANCEL: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.CANCEL; + case POLL: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.POLL; + case REPROCESS: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.REPROCESS; + case STATUS: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.STATUS; + default: return org.hl7.fhir.r4.model.ProcessRequest.ActionList.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ProcessRequest.ActionList convertActionList(org.hl7.fhir.r4.model.ProcessRequest.ActionList src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CANCEL: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.CANCEL; + case POLL: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.POLL; + case REPROCESS: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.REPROCESS; + case STATUS: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.STATUS; + default: return org.hl7.fhir.dstu3.model.ProcessRequest.ActionList.NULL; + } +} + + public static org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent(); + copyElement(src, tgt); + if (src.hasSequenceLinkId()) + tgt.setSequenceLinkId(src.getSequenceLinkId()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent convertItemsComponent(org.hl7.fhir.r4.model.ProcessRequest.ItemsComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent tgt = new org.hl7.fhir.dstu3.model.ProcessRequest.ItemsComponent(); + copyElement(src, tgt); + if (src.hasSequenceLinkId()) + tgt.setSequenceLinkId(src.getSequenceLinkId()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ProcessResponse convertProcessResponse(org.hl7.fhir.dstu3.model.ProcessResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ProcessResponse tgt = new org.hl7.fhir.r4.model.ProcessResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertProcessResponseStatus(src.getStatus())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + if (src.hasRequestProvider()) + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + if (src.hasRequestOrganization()) + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + for (org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseProcessNoteComponent t : src.getProcessNote()) + tgt.addProcessNote(convertProcessResponseProcessNoteComponent(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getError()) + tgt.addError(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getCommunicationRequest()) + tgt.addCommunicationRequest(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ProcessResponse convertProcessResponse(org.hl7.fhir.r4.model.ProcessResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ProcessResponse tgt = new org.hl7.fhir.dstu3.model.ProcessResponse(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertProcessResponseStatus(src.getStatus())); + if (src.hasCreated()) + tgt.setCreated(src.getCreated()); + if (src.hasOrganization()) + tgt.setOrganization(convertReference(src.getOrganization())); + if (src.hasRequest()) + tgt.setRequest(convertReference(src.getRequest())); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasDisposition()) + tgt.setDisposition(src.getDisposition()); + if (src.hasRequestProvider()) + tgt.setRequestProvider(convertReference(src.getRequestProvider())); + if (src.hasRequestOrganization()) + tgt.setRequestOrganization(convertReference(src.getRequestOrganization())); + if (src.hasForm()) + tgt.setForm(convertCodeableConcept(src.getForm())); + for (org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseProcessNoteComponent t : src.getProcessNote()) + tgt.addProcessNote(convertProcessResponseProcessNoteComponent(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getError()) + tgt.addError(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getCommunicationRequest()) + tgt.addCommunicationRequest(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus convertProcessResponseStatus(org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus convertProcessResponseStatus(org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseProcessNoteComponent convertProcessResponseProcessNoteComponent(org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseProcessNoteComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseProcessNoteComponent tgt = new org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseProcessNoteComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseProcessNoteComponent convertProcessResponseProcessNoteComponent(org.hl7.fhir.r4.model.ProcessResponse.ProcessResponseProcessNoteComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseProcessNoteComponent tgt = new org.hl7.fhir.dstu3.model.ProcessResponse.ProcessResponseProcessNoteComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasText()) + tgt.setText(src.getText()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Provenance convertProvenance(org.hl7.fhir.dstu3.model.Provenance src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Provenance tgt = new org.hl7.fhir.r4.model.Provenance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Reference t : src.getTarget()) + tgt.addTarget(convertReference(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasRecorded()) + tgt.setRecorded(src.getRecorded()); + for (org.hl7.fhir.dstu3.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.dstu3.model.Coding t : src.getReason()) + tgt.addReason(convertCoding(t)); + if (src.hasActivity()) + tgt.setActivity(convertCoding(src.getActivity())); + for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) + tgt.addAgent(convertProvenanceAgentComponent(t)); + for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) + tgt.addEntity(convertProvenanceEntityComponent(t)); + for (org.hl7.fhir.dstu3.model.Signature t : src.getSignature()) + tgt.addSignature(convertSignature(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Provenance convertProvenance(org.hl7.fhir.r4.model.Provenance src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Provenance tgt = new org.hl7.fhir.dstu3.model.Provenance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Reference t : src.getTarget()) + tgt.addTarget(convertReference(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasRecorded()) + tgt.setRecorded(src.getRecorded()); + for (org.hl7.fhir.r4.model.UriType t : src.getPolicy()) + tgt.addPolicy(t.getValue()); + if (src.hasLocation()) + tgt.setLocation(convertReference(src.getLocation())); + for (org.hl7.fhir.r4.model.Coding t : src.getReason()) + tgt.addReason(convertCoding(t)); + if (src.hasActivity()) + tgt.setActivity(convertCoding(src.getActivity())); + for (org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) + tgt.addAgent(convertProvenanceAgentComponent(t)); + for (org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent t : src.getEntity()) + tgt.addEntity(convertProvenanceEntityComponent(t)); + for (org.hl7.fhir.r4.model.Signature t : src.getSignature()) + tgt.addSignature(convertSignature(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + if (src.hasWho()) + tgt.setWho(convertType(src.getWho())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertType(src.getOnBehalfOf())); + if (src.hasRelatedAgentType()) + tgt.setRelatedAgentType(convertCodeableConcept(src.getRelatedAgentType())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent convertProvenanceAgentComponent(org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent tgt = new org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getRole()) + tgt.addRole(convertCodeableConcept(t)); + if (src.hasWho()) + tgt.setWho(convertType(src.getWho())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertType(src.getOnBehalfOf())); + if (src.hasRelatedAgentType()) + tgt.setRelatedAgentType(convertCodeableConcept(src.getRelatedAgentType())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent(); + copyElement(src, tgt); + if (src.hasRole()) + tgt.setRole(convertProvenanceEntityRole(src.getRole())); + if (src.hasWhat()) + tgt.setWhat(convertType(src.getWhat())); + for (org.hl7.fhir.dstu3.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) + tgt.addAgent(convertProvenanceAgentComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent convertProvenanceEntityComponent(org.hl7.fhir.r4.model.Provenance.ProvenanceEntityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent tgt = new org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityComponent(); + copyElement(src, tgt); + if (src.hasRole()) + tgt.setRole(convertProvenanceEntityRole(src.getRole())); + if (src.hasWhat()) + tgt.setWhat(convertType(src.getWhat())); + for (org.hl7.fhir.r4.model.Provenance.ProvenanceAgentComponent t : src.getAgent()) + tgt.addAgent(convertProvenanceAgentComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DERIVATION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.DERIVATION; + case REVISION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.REVISION; + case QUOTATION: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.QUOTATION; + case SOURCE: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.SOURCE; + case REMOVAL: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.REMOVAL; + default: return org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole convertProvenanceEntityRole(org.hl7.fhir.r4.model.Provenance.ProvenanceEntityRole src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DERIVATION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.DERIVATION; + case REVISION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.REVISION; + case QUOTATION: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.QUOTATION; + case SOURCE: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.SOURCE; + case REMOVAL: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.REMOVAL; + default: return org.hl7.fhir.dstu3.model.Provenance.ProvenanceEntityRole.NULL; + } +} + + public static org.hl7.fhir.r4.model.Questionnaire convertQuestionnaire(org.hl7.fhir.dstu3.model.Questionnaire src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Questionnaire tgt = new org.hl7.fhir.r4.model.Questionnaire(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getSubjectType()) + tgt.addSubjectType(t.getValue()); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Questionnaire convertQuestionnaire(org.hl7.fhir.r4.model.Questionnaire src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Questionnaire tgt = new org.hl7.fhir.dstu3.model.Questionnaire(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + for (org.hl7.fhir.r4.model.CodeType t : src.getSubjectType()) + tgt.addSubjectType(t.getValue()); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + if (src.hasPrefix()) + tgt.setPrefix(src.getPrefix()); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasType()) + tgt.setType(convertQuestionnaireItemType(src.getType())); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) + tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasRepeats()) + tgt.setRepeats(src.getRepeats()); + if (src.hasReadOnly()) + tgt.setReadOnly(src.getReadOnly()); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + if (src.hasOptions()) + tgt.setOptions(convertReference(src.getOptions())); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) + tgt.addOption(convertQuestionnaireItemOptionComponent(t)); + if (src.hasInitial()) + tgt.setInitial(convertType(src.getInitial())); + for (org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent convertQuestionnaireItemComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + for (org.hl7.fhir.r4.model.Coding t : src.getCode()) + tgt.addCode(convertCoding(t)); + if (src.hasPrefix()) + tgt.setPrefix(src.getPrefix()); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasType()) + tgt.setType(convertQuestionnaireItemType(src.getType())); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent t : src.getEnableWhen()) + tgt.addEnableWhen(convertQuestionnaireItemEnableWhenComponent(t)); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasRepeats()) + tgt.setRepeats(src.getRepeats()); + if (src.hasReadOnly()) + tgt.setReadOnly(src.getReadOnly()); + if (src.hasMaxLength()) + tgt.setMaxLength(src.getMaxLength()); + if (src.hasOptions()) + tgt.setOptions(convertReference(src.getOptions())); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent t : src.getOption()) + tgt.addOption(convertQuestionnaireItemOptionComponent(t)); + if (src.hasInitial()) + tgt.setInitial(convertType(src.getInitial())); + for (org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireItemComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GROUP: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.GROUP; + case DISPLAY: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DISPLAY; + case QUESTION: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.QUESTION; + case BOOLEAN: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.BOOLEAN; + case DECIMAL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DECIMAL; + case INTEGER: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.INTEGER; + case DATE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATE; + case DATETIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.DATETIME; + case TIME: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TIME; + case STRING: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.STRING; + case TEXT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.TEXT; + case URL: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.URL; + case CHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.CHOICE; + case OPENCHOICE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; + case ATTACHMENT: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; + case REFERENCE: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.REFERENCE; + case QUANTITY: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.QUANTITY; + default: return org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType convertQuestionnaireItemType(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case GROUP: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.GROUP; + case DISPLAY: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DISPLAY; + case QUESTION: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.QUESTION; + case BOOLEAN: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.BOOLEAN; + case DECIMAL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DECIMAL; + case INTEGER: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.INTEGER; + case DATE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATE; + case DATETIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.DATETIME; + case TIME: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TIME; + case STRING: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.STRING; + case TEXT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.TEXT; + case URL: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.URL; + case CHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.CHOICE; + case OPENCHOICE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.OPENCHOICE; + case ATTACHMENT: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.ATTACHMENT; + case REFERENCE: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.REFERENCE; + case QUANTITY: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.QUANTITY; + default: return org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); + copyElement(src, tgt); + if (src.hasQuestion()) + tgt.setQuestion(src.getQuestion()); + if (src.hasHasAnswer()) + tgt.setHasAnswer(src.getHasAnswer()); + if (src.hasAnswer()) + tgt.setAnswer(convertType(src.getAnswer())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent convertQuestionnaireItemEnableWhenComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemEnableWhenComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemEnableWhenComponent(); + copyElement(src, tgt); + if (src.hasQuestion()) + tgt.setQuestion(src.getQuestion()); + if (src.hasHasAnswer()) + tgt.setHasAnswer(src.getHasAnswer()); + if (src.hasAnswer()) + tgt.setAnswer(convertType(src.getAnswer())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent convertQuestionnaireItemOptionComponent(org.hl7.fhir.r4.model.Questionnaire.QuestionnaireItemOptionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent tgt = new org.hl7.fhir.dstu3.model.Questionnaire.QuestionnaireItemOptionComponent(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.dstu3.model.QuestionnaireResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.QuestionnaireResponse tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getParent()) + tgt.addParent(convertReference(t)); + if (src.hasQuestionnaire()) + tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); + if (src.hasStatus()) + tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasAuthored()) + tgt.setAuthored(src.getAuthored()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasSource()) + tgt.setSource(convertReference(src.getSource())); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.QuestionnaireResponse convertQuestionnaireResponse(org.hl7.fhir.r4.model.QuestionnaireResponse src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.QuestionnaireResponse tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getParent()) + tgt.addParent(convertReference(t)); + if (src.hasQuestionnaire()) + tgt.setQuestionnaire(convertReference(src.getQuestionnaire())); + if (src.hasStatus()) + tgt.setStatus(convertQuestionnaireResponseStatus(src.getStatus())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasAuthored()) + tgt.setAuthored(src.getAuthored()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasSource()) + tgt.setSource(convertReference(src.getSource())); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; + case AMENDED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.STOPPED; + default: return org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus convertQuestionnaireResponseStatus(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.COMPLETED; + case AMENDED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.AMENDED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.ENTEREDINERROR; + case STOPPED: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.STOPPED; + default: return org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) + tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent convertQuestionnaireResponseItemComponent(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent(); + copyElement(src, tgt); + if (src.hasLinkId()) + tgt.setLinkId(src.getLinkId()); + if (src.hasDefinition()) + tgt.setDefinition(src.getDefinition()); + if (src.hasText()) + tgt.setText(src.getText()); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent t : src.getAnswer()) + tgt.addAnswer(convertQuestionnaireResponseItemAnswerComponent(t)); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + for (org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent convertQuestionnaireResponseItemAnswerComponent(org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent tgt = new org.hl7.fhir.dstu3.model.QuestionnaireResponse.QuestionnaireResponseItemAnswerComponent(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + for (org.hl7.fhir.r4.model.QuestionnaireResponse.QuestionnaireResponseItemComponent t : src.getItem()) + tgt.addItem(convertQuestionnaireResponseItemComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ProcedureRequest convertReferralRequest(org.hl7.fhir.dstu3.model.ReferralRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ProcedureRequest tgt = new org.hl7.fhir.r4.model.ProcedureRequest(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertReferralRequestStatus(src.getStatus())); + if (src.hasType()) + tgt.setCode(convertCodeableConcept(src.getType())); + if (src.hasPriority()) + tgt.setPriority(convertReferralPriority(src.getPriority())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasRequester()) + tgt.setRequester(convertReferralRequestRequesterComponent(src.getRequester())); + if (src.hasSpecialty()) + tgt.setPerformerType(convertCodeableConcept(src.getSpecialty())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getReasonCode()) + tgt.addReasonCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReasonReference()) + tgt.addReasonReference(convertReference(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupportingInfo()) + tgt.addSupportingInfo(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRelevantHistory()) + tgt.addRelevantHistory(convertReference(t)); + return tgt; + } + + + private static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus convertReferralRequestStatus(org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority convertReferralPriority(org.hl7.fhir.dstu3.model.ReferralRequest.ReferralPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.URGENT; + case ASAP: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.ASAP; + case STAT: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.STAT; + default: return org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestPriority.NULL; + } +} + + + public static org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent convertReferralRequestRequesterComponent(org.hl7.fhir.dstu3.model.ReferralRequest.ReferralRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.ProcedureRequest.ProcedureRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + + public static org.hl7.fhir.r4.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.dstu3.model.RelatedPerson src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.RelatedPerson tgt = new org.hl7.fhir.r4.model.RelatedPerson(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasRelationship()) + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + for (org.hl7.fhir.dstu3.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasBirthDate()) + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.dstu3.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + for (org.hl7.fhir.dstu3.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.RelatedPerson convertRelatedPerson(org.hl7.fhir.r4.model.RelatedPerson src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.RelatedPerson tgt = new org.hl7.fhir.dstu3.model.RelatedPerson(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasRelationship()) + tgt.setRelationship(convertCodeableConcept(src.getRelationship())); + for (org.hl7.fhir.r4.model.HumanName t : src.getName()) + tgt.addName(convertHumanName(t)); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getTelecom()) + tgt.addTelecom(convertContactPoint(t)); + if (src.hasGender()) + tgt.setGender(convertAdministrativeGender(src.getGender())); + if (src.hasBirthDate()) + tgt.setBirthDate(src.getBirthDate()); + for (org.hl7.fhir.r4.model.Address t : src.getAddress()) + tgt.addAddress(convertAddress(t)); + for (org.hl7.fhir.r4.model.Attachment t : src.getPhoto()) + tgt.addPhoto(convertAttachment(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + return tgt; + } + + public static org.hl7.fhir.r4.model.RequestGroup convertRequestGroup(org.hl7.fhir.dstu3.model.RequestGroup src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.RequestGroup tgt = new org.hl7.fhir.r4.model.RequestGroup(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + if (src.hasGroupIdentifier()) + tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertRequestStatus(src.getStatus())); + if (src.hasIntent()) + tgt.setIntent(convertRequestIntent(src.getIntent())); + if (src.hasPriority()) + tgt.setPriority(convertRequestPriority(src.getPriority())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasReason()) + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent t : src.getAction()) + tgt.addAction(convertRequestGroupActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.RequestGroup convertRequestGroup(org.hl7.fhir.r4.model.RequestGroup src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.RequestGroup tgt = new org.hl7.fhir.dstu3.model.RequestGroup(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getDefinition()) + tgt.addDefinition(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getReplaces()) + tgt.addReplaces(convertReference(t)); + if (src.hasGroupIdentifier()) + tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertRequestStatus(src.getStatus())); + if (src.hasIntent()) + tgt.setIntent(convertRequestIntent(src.getIntent())); + if (src.hasPriority()) + tgt.setPriority(convertRequestPriority(src.getPriority())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasAuthor()) + tgt.setAuthor(convertReference(src.getAuthor())); + if (src.hasReason()) + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent t : src.getAction()) + tgt.addAction(convertRequestGroupActionComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.RequestGroup.RequestPriority convertRequestPriority(org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.r4.model.RequestGroup.RequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.r4.model.RequestGroup.RequestPriority.URGENT; + case ASAP: return org.hl7.fhir.r4.model.RequestGroup.RequestPriority.ASAP; + case STAT: return org.hl7.fhir.r4.model.RequestGroup.RequestPriority.STAT; + default: return org.hl7.fhir.r4.model.RequestGroup.RequestPriority.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority convertRequestPriority(org.hl7.fhir.r4.model.RequestGroup.RequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority.URGENT; + case ASAP: return org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority.ASAP; + case STAT: return org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority.STAT; + default: return org.hl7.fhir.dstu3.model.RequestGroup.RequestPriority.NULL; + } +} + + + private static org.hl7.fhir.r4.model.RequestGroup.RequestStatus convertRequestStatus(org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.RequestGroup.RequestStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus convertRequestStatus(org.hl7.fhir.r4.model.RequestGroup.RequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.RequestGroup.RequestStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.RequestGroup.RequestIntent convertRequestIntent(org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSAL: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.PROPOSAL; + case PLAN: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.PLAN; + case ORDER: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.ORDER; + case ORIGINALORDER: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.ORIGINALORDER; + case REFLEXORDER: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.REFLEXORDER; + case FILLERORDER: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.FILLERORDER; + case INSTANCEORDER: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.INSTANCEORDER; + case OPTION: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.OPTION; + default: return org.hl7.fhir.r4.model.RequestGroup.RequestIntent.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent convertRequestIntent(org.hl7.fhir.r4.model.RequestGroup.RequestIntent src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSAL: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.PROPOSAL; + case PLAN: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.PLAN; + case ORDER: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.ORDER; + case ORIGINALORDER: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.ORIGINALORDER; + case REFLEXORDER: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.REFLEXORDER; + case FILLERORDER: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.FILLERORDER; + case INSTANCEORDER: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.INSTANCEORDER; + case OPTION: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.OPTION; + default: return org.hl7.fhir.dstu3.model.RequestGroup.RequestIntent.NULL; + } +} + + public static org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent convertRequestGroupActionComponent(org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent tgt = new org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasTextEquivalent()) + tgt.setTextEquivalent(src.getTextEquivalent()); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getDocumentation()) + tgt.addDocumentation(convertRelatedArtifact(t)); + for (org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionConditionComponent t : src.getCondition()) + tgt.addCondition(convertRequestGroupActionConditionComponent(t)); + for (org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionRelatedActionComponent t : src.getRelatedAction()) + tgt.addRelatedAction(convertRequestGroupActionRelatedActionComponent(t)); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getParticipant()) + tgt.addParticipant(convertReference(t)); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + if (src.hasGroupingBehavior()) + tgt.setGroupingBehavior(convertActionGroupingBehavior(src.getGroupingBehavior())); + if (src.hasSelectionBehavior()) + tgt.setSelectionBehavior(convertActionSelectionBehavior(src.getSelectionBehavior())); + if (src.hasRequiredBehavior()) + tgt.setRequiredBehavior(convertActionRequiredBehavior(src.getRequiredBehavior())); + if (src.hasPrecheckBehavior()) + tgt.setPrecheckBehavior(convertActionPrecheckBehavior(src.getPrecheckBehavior())); + if (src.hasCardinalityBehavior()) + tgt.setCardinalityBehavior(convertActionCardinalityBehavior(src.getCardinalityBehavior())); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent t : src.getAction()) + tgt.addAction(convertRequestGroupActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent convertRequestGroupActionComponent(org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent tgt = new org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasTextEquivalent()) + tgt.setTextEquivalent(src.getTextEquivalent()); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCode()) + tgt.addCode(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getDocumentation()) + tgt.addDocumentation(convertRelatedArtifact(t)); + for (org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionConditionComponent t : src.getCondition()) + tgt.addCondition(convertRequestGroupActionConditionComponent(t)); + for (org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionRelatedActionComponent t : src.getRelatedAction()) + tgt.addRelatedAction(convertRequestGroupActionRelatedActionComponent(t)); + if (src.hasTiming()) + tgt.setTiming(convertType(src.getTiming())); + for (org.hl7.fhir.r4.model.Reference t : src.getParticipant()) + tgt.addParticipant(convertReference(t)); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + if (src.hasGroupingBehavior()) + tgt.setGroupingBehavior(convertActionGroupingBehavior(src.getGroupingBehavior())); + if (src.hasSelectionBehavior()) + tgt.setSelectionBehavior(convertActionSelectionBehavior(src.getSelectionBehavior())); + if (src.hasRequiredBehavior()) + tgt.setRequiredBehavior(convertActionRequiredBehavior(src.getRequiredBehavior())); + if (src.hasPrecheckBehavior()) + tgt.setPrecheckBehavior(convertActionPrecheckBehavior(src.getPrecheckBehavior())); + if (src.hasCardinalityBehavior()) + tgt.setCardinalityBehavior(convertActionCardinalityBehavior(src.getCardinalityBehavior())); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionComponent t : src.getAction()) + tgt.addAction(convertRequestGroupActionComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior convertActionGroupingBehavior(org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case VISUALGROUP: return org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior.VISUALGROUP; + case LOGICALGROUP: return org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior.LOGICALGROUP; + case SENTENCEGROUP: return org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior.SENTENCEGROUP; + default: return org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior convertActionGroupingBehavior(org.hl7.fhir.r4.model.RequestGroup.ActionGroupingBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case VISUALGROUP: return org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior.VISUALGROUP; + case LOGICALGROUP: return org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior.LOGICALGROUP; + case SENTENCEGROUP: return org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior.SENTENCEGROUP; + default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionGroupingBehavior.NULL; + } +} + + private static org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior convertActionSelectionBehavior(org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ANY: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.ANY; + case ALL: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.ALL; + case ALLORNONE: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.ALLORNONE; + case EXACTLYONE: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.EXACTLYONE; + case ATMOSTONE: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.ATMOSTONE; + case ONEORMORE: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.ONEORMORE; + default: return org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior convertActionSelectionBehavior(org.hl7.fhir.r4.model.RequestGroup.ActionSelectionBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ANY: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.ANY; + case ALL: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.ALL; + case ALLORNONE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.ALLORNONE; + case EXACTLYONE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.EXACTLYONE; + case ATMOSTONE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.ATMOSTONE; + case ONEORMORE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.ONEORMORE; + default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionSelectionBehavior.NULL; + } +} + + private static org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior convertActionRequiredBehavior(org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MUST: return org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior.MUST; + case COULD: return org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior.COULD; + case MUSTUNLESSDOCUMENTED: return org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior.MUSTUNLESSDOCUMENTED; + default: return org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior convertActionRequiredBehavior(org.hl7.fhir.r4.model.RequestGroup.ActionRequiredBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MUST: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior.MUST; + case COULD: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior.COULD; + case MUSTUNLESSDOCUMENTED: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior.MUSTUNLESSDOCUMENTED; + default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRequiredBehavior.NULL; + } +} + + private static org.hl7.fhir.r4.model.RequestGroup.ActionPrecheckBehavior convertActionPrecheckBehavior(org.hl7.fhir.dstu3.model.RequestGroup.ActionPrecheckBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case YES: return org.hl7.fhir.r4.model.RequestGroup.ActionPrecheckBehavior.YES; + case NO: return org.hl7.fhir.r4.model.RequestGroup.ActionPrecheckBehavior.NO; + default: return org.hl7.fhir.r4.model.RequestGroup.ActionPrecheckBehavior.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RequestGroup.ActionPrecheckBehavior convertActionPrecheckBehavior(org.hl7.fhir.r4.model.RequestGroup.ActionPrecheckBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case YES: return org.hl7.fhir.dstu3.model.RequestGroup.ActionPrecheckBehavior.YES; + case NO: return org.hl7.fhir.dstu3.model.RequestGroup.ActionPrecheckBehavior.NO; + default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionPrecheckBehavior.NULL; + } +} + + private static org.hl7.fhir.r4.model.RequestGroup.ActionCardinalityBehavior convertActionCardinalityBehavior(org.hl7.fhir.dstu3.model.RequestGroup.ActionCardinalityBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SINGLE: return org.hl7.fhir.r4.model.RequestGroup.ActionCardinalityBehavior.SINGLE; + case MULTIPLE: return org.hl7.fhir.r4.model.RequestGroup.ActionCardinalityBehavior.MULTIPLE; + default: return org.hl7.fhir.r4.model.RequestGroup.ActionCardinalityBehavior.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RequestGroup.ActionCardinalityBehavior convertActionCardinalityBehavior(org.hl7.fhir.r4.model.RequestGroup.ActionCardinalityBehavior src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SINGLE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionCardinalityBehavior.SINGLE; + case MULTIPLE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionCardinalityBehavior.MULTIPLE; + default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionCardinalityBehavior.NULL; + } +} + + + public static org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionConditionComponent convertRequestGroupActionConditionComponent(org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionConditionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionConditionComponent tgt = new org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionConditionComponent(); + copyElement(src, tgt); + if (src.hasKind()) + tgt.setKind(convertActionConditionKind(src.getKind())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionConditionComponent convertRequestGroupActionConditionComponent(org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionConditionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionConditionComponent tgt = new org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionConditionComponent(); + copyElement(src, tgt); + if (src.hasKind()) + tgt.setKind(convertActionConditionKind(src.getKind())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + return tgt; + } + + private static org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind convertActionConditionKind(org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case APPLICABILITY: return org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind.APPLICABILITY; + case START: return org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind.START; + case STOP: return org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind.STOP; + default: return org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind convertActionConditionKind(org.hl7.fhir.r4.model.RequestGroup.ActionConditionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case APPLICABILITY: return org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind.APPLICABILITY; + case START: return org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind.START; + case STOP: return org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind.STOP; + default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionConditionKind.NULL; + } +} + + + public static org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionRelatedActionComponent convertRequestGroupActionRelatedActionComponent(org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionRelatedActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionRelatedActionComponent tgt = new org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionRelatedActionComponent(); + copyElement(src, tgt); + if (src.hasActionId()) + tgt.setActionId(src.getActionId()); + if (src.hasRelationship()) + tgt.setRelationship(convertActionRelationshipType(src.getRelationship())); + if (src.hasOffset()) + tgt.setOffset(convertType(src.getOffset())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionRelatedActionComponent convertRequestGroupActionRelatedActionComponent(org.hl7.fhir.r4.model.RequestGroup.RequestGroupActionRelatedActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionRelatedActionComponent tgt = new org.hl7.fhir.dstu3.model.RequestGroup.RequestGroupActionRelatedActionComponent(); + copyElement(src, tgt); + if (src.hasActionId()) + tgt.setActionId(src.getActionId()); + if (src.hasRelationship()) + tgt.setRelationship(convertActionRelationshipType(src.getRelationship())); + if (src.hasOffset()) + tgt.setOffset(convertType(src.getOffset())); + return tgt; + } + + private static org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType convertActionRelationshipType(org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BEFORESTART: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.BEFORESTART; + case BEFORE: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.BEFORE; + case BEFOREEND: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.BEFOREEND; + case CONCURRENTWITHSTART: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.CONCURRENTWITHSTART; + case CONCURRENT: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.CONCURRENT; + case CONCURRENTWITHEND: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.CONCURRENTWITHEND; + case AFTERSTART: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.AFTERSTART; + case AFTER: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.AFTER; + case AFTEREND: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.AFTEREND; + default: return org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType convertActionRelationshipType(org.hl7.fhir.r4.model.RequestGroup.ActionRelationshipType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BEFORESTART: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.BEFORESTART; + case BEFORE: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.BEFORE; + case BEFOREEND: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.BEFOREEND; + case CONCURRENTWITHSTART: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.CONCURRENTWITHSTART; + case CONCURRENT: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.CONCURRENT; + case CONCURRENTWITHEND: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.CONCURRENTWITHEND; + case AFTERSTART: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.AFTERSTART; + case AFTER: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.AFTER; + case AFTEREND: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.AFTEREND; + default: return org.hl7.fhir.dstu3.model.RequestGroup.ActionRelationshipType.NULL; + } +} + + public static org.hl7.fhir.r4.model.ResearchStudy convertResearchStudy(org.hl7.fhir.dstu3.model.ResearchStudy src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ResearchStudy tgt = new org.hl7.fhir.r4.model.ResearchStudy(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProtocol()) + tgt.addProtocol(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertResearchStudyStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getFocus()) + tgt.addFocus(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getKeyword()) + tgt.addKeyword(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getEnrollment()) + tgt.addEnrollment(convertReference(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasSponsor()) + tgt.setSponsor(convertReference(src.getSponsor())); + if (src.hasPrincipalInvestigator()) + tgt.setPrincipalInvestigator(convertReference(src.getPrincipalInvestigator())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSite()) + tgt.addSite(convertReference(t)); + if (src.hasReasonStopped()) + tgt.setReasonStopped(convertCodeableConcept(src.getReasonStopped())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyArmComponent t : src.getArm()) + tgt.addArm(convertResearchStudyArmComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ResearchStudy convertResearchStudy(org.hl7.fhir.r4.model.ResearchStudy src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ResearchStudy tgt = new org.hl7.fhir.dstu3.model.ResearchStudy(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + for (org.hl7.fhir.r4.model.Reference t : src.getProtocol()) + tgt.addProtocol(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertResearchStudyStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getFocus()) + tgt.addFocus(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getKeyword()) + tgt.addKeyword(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.Reference t : src.getEnrollment()) + tgt.addEnrollment(convertReference(t)); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasSponsor()) + tgt.setSponsor(convertReference(src.getSponsor())); + if (src.hasPrincipalInvestigator()) + tgt.setPrincipalInvestigator(convertReference(src.getPrincipalInvestigator())); + for (org.hl7.fhir.r4.model.Reference t : src.getSite()) + tgt.addSite(convertReference(t)); + if (src.hasReasonStopped()) + tgt.setReasonStopped(convertCodeableConcept(src.getReasonStopped())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyArmComponent t : src.getArm()) + tgt.addArm(convertResearchStudyArmComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus convertResearchStudyStatus(org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.DRAFT; + case INPROGRESS: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.INPROGRESS; + case SUSPENDED: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.SUSPENDED; + case STOPPED: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.STOPPED; + case COMPLETED: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus convertResearchStudyStatus(org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.DRAFT; + case INPROGRESS: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.INPROGRESS; + case SUSPENDED: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.SUSPENDED; + case STOPPED: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.STOPPED; + case COMPLETED: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyArmComponent convertResearchStudyArmComponent(org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyArmComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyArmComponent tgt = new org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyArmComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyArmComponent convertResearchStudyArmComponent(org.hl7.fhir.r4.model.ResearchStudy.ResearchStudyArmComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyArmComponent tgt = new org.hl7.fhir.dstu3.model.ResearchStudy.ResearchStudyArmComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ResearchSubject convertResearchSubject(org.hl7.fhir.dstu3.model.ResearchSubject src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ResearchSubject tgt = new org.hl7.fhir.r4.model.ResearchSubject(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertResearchSubjectStatus(src.getStatus())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasStudy()) + tgt.setStudy(convertReference(src.getStudy())); + if (src.hasIndividual()) + tgt.setIndividual(convertReference(src.getIndividual())); + if (src.hasAssignedArm()) + tgt.setAssignedArm(src.getAssignedArm()); + if (src.hasActualArm()) + tgt.setActualArm(src.getActualArm()); + if (src.hasConsent()) + tgt.setConsent(convertReference(src.getConsent())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ResearchSubject convertResearchSubject(org.hl7.fhir.r4.model.ResearchSubject src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ResearchSubject tgt = new org.hl7.fhir.dstu3.model.ResearchSubject(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertResearchSubjectStatus(src.getStatus())); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + if (src.hasStudy()) + tgt.setStudy(convertReference(src.getStudy())); + if (src.hasIndividual()) + tgt.setIndividual(convertReference(src.getIndividual())); + if (src.hasAssignedArm()) + tgt.setAssignedArm(src.getAssignedArm()); + if (src.hasActualArm()) + tgt.setActualArm(src.getActualArm()); + if (src.hasConsent()) + tgt.setConsent(convertReference(src.getConsent())); + return tgt; + } + + private static org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus convertResearchSubjectStatus(org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CANDIDATE: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.CANDIDATE; + case ENROLLED: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.ENROLLED; + case ACTIVE: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.SUSPENDED; + case WITHDRAWN: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.WITHDRAWN; + case COMPLETED: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.COMPLETED; + default: return org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus convertResearchSubjectStatus(org.hl7.fhir.r4.model.ResearchSubject.ResearchSubjectStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CANDIDATE: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.CANDIDATE; + case ENROLLED: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.ENROLLED; + case ACTIVE: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.SUSPENDED; + case WITHDRAWN: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.WITHDRAWN; + case COMPLETED: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.COMPLETED; + default: return org.hl7.fhir.dstu3.model.ResearchSubject.ResearchSubjectStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.dstu3.model.RiskAssessment src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.RiskAssessment tgt = new org.hl7.fhir.r4.model.RiskAssessment(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasBasedOn()) + tgt.setBasedOn(convertReference(src.getBasedOn())); + if (src.hasParent()) + tgt.setParent(convertReference(src.getParent())); + if (src.hasStatus()) + tgt.setStatus(convertRiskAssessmentStatus(src.getStatus())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasCondition()) + tgt.setCondition(convertReference(src.getCondition())); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + if (src.hasReason()) + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasis()) + tgt.addBasis(convertReference(t)); + for (org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) + tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); + if (src.hasMitigation()) + tgt.setMitigation(src.getMitigation()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.RiskAssessment convertRiskAssessment(org.hl7.fhir.r4.model.RiskAssessment src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.RiskAssessment tgt = new org.hl7.fhir.dstu3.model.RiskAssessment(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasBasedOn()) + tgt.setBasedOn(convertReference(src.getBasedOn())); + if (src.hasParent()) + tgt.setParent(convertReference(src.getParent())); + if (src.hasStatus()) + tgt.setStatus(convertRiskAssessmentStatus(src.getStatus())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasCondition()) + tgt.setCondition(convertReference(src.getCondition())); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + if (src.hasReason()) + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.r4.model.Reference t : src.getBasis()) + tgt.addBasis(convertReference(t)); + for (org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent t : src.getPrediction()) + tgt.addPrediction(convertRiskAssessmentPredictionComponent(t)); + if (src.hasMitigation()) + tgt.setMitigation(src.getMitigation()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + private static org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus convertRiskAssessmentStatus(org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.REGISTERED; + case PRELIMINARY: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.FINAL; + case AMENDED: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.AMENDED; + case CORRECTED: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.CORRECTED; + case CANCELLED: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus convertRiskAssessmentStatus(org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REGISTERED: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.REGISTERED; + case PRELIMINARY: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.PRELIMINARY; + case FINAL: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.FINAL; + case AMENDED: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.AMENDED; + case CORRECTED: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.CORRECTED; + case CANCELLED: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.CANCELLED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent(); + copyElement(src, tgt); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasProbability()) + tgt.setProbability(convertType(src.getProbability())); + if (src.hasQualitativeRisk()) + tgt.setQualitativeRisk(convertCodeableConcept(src.getQualitativeRisk())); + if (src.hasRelativeRisk()) + tgt.setRelativeRisk(src.getRelativeRisk()); + if (src.hasWhen()) + tgt.setWhen(convertType(src.getWhen())); + if (src.hasRationale()) + tgt.setRationale(src.getRationale()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent convertRiskAssessmentPredictionComponent(org.hl7.fhir.r4.model.RiskAssessment.RiskAssessmentPredictionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent tgt = new org.hl7.fhir.dstu3.model.RiskAssessment.RiskAssessmentPredictionComponent(); + copyElement(src, tgt); + if (src.hasOutcome()) + tgt.setOutcome(convertCodeableConcept(src.getOutcome())); + if (src.hasProbability()) + tgt.setProbability(convertType(src.getProbability())); + if (src.hasQualitativeRisk()) + tgt.setQualitativeRisk(convertCodeableConcept(src.getQualitativeRisk())); + if (src.hasRelativeRisk()) + tgt.setRelativeRisk(src.getRelativeRisk()); + if (src.hasWhen()) + tgt.setWhen(convertType(src.getWhen())); + if (src.hasRationale()) + tgt.setRationale(src.getRationale()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Schedule convertSchedule(org.hl7.fhir.dstu3.model.Schedule src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Schedule tgt = new org.hl7.fhir.r4.model.Schedule(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasServiceCategory()) + tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) + tgt.addServiceType(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getActor()) + tgt.addActor(convertReference(t)); + if (src.hasPlanningHorizon()) + tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Schedule convertSchedule(org.hl7.fhir.r4.model.Schedule src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Schedule tgt = new org.hl7.fhir.dstu3.model.Schedule(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasActive()) + tgt.setActive(src.getActive()); + if (src.hasServiceCategory()) + tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) + tgt.addServiceType(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getActor()) + tgt.addActor(convertReference(t)); + if (src.hasPlanningHorizon()) + tgt.setPlanningHorizon(convertPeriod(src.getPlanningHorizon())); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.r4.model.SearchParameter convertSearchParameter(org.hl7.fhir.dstu3.model.SearchParameter src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.SearchParameter tgt = new org.hl7.fhir.r4.model.SearchParameter(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getBase()) + tgt.addBase(t.getValue()); + if (src.hasType()) + tgt.setType(convertSearchParamType(src.getType())); + if (src.hasDerivedFrom()) + tgt.setDerivedFrom(src.getDerivedFrom()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasXpath()) + tgt.setXpath(src.getXpath()); + if (src.hasXpathUsage()) + tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); + for (org.hl7.fhir.dstu3.model.CodeType t : src.getTarget()) + tgt.addTarget(t.getValue()); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getComparator()) + tgt.addComparator(convertSearchComparator(t.getValue())); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getModifier()) + tgt.addModifier(convertSearchModifierCode(t.getValue())); + for (org.hl7.fhir.dstu3.model.StringType t : src.getChain()) + tgt.addChain(t.getValue()); + for (org.hl7.fhir.dstu3.model.SearchParameter.SearchParameterComponentComponent t : src.getComponent()) + tgt.addComponent(convertSearchParameterComponentComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SearchParameter convertSearchParameter(org.hl7.fhir.r4.model.SearchParameter src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.SearchParameter tgt = new org.hl7.fhir.dstu3.model.SearchParameter(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + for (org.hl7.fhir.r4.model.CodeType t : src.getBase()) + tgt.addBase(t.getValue()); + if (src.hasType()) + tgt.setType(convertSearchParamType(src.getType())); + if (src.hasDerivedFrom()) + tgt.setDerivedFrom(src.getDerivedFrom()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasXpath()) + tgt.setXpath(src.getXpath()); + if (src.hasXpathUsage()) + tgt.setXpathUsage(convertXPathUsageType(src.getXpathUsage())); + for (org.hl7.fhir.r4.model.CodeType t : src.getTarget()) + tgt.addTarget(t.getValue()); + for (org.hl7.fhir.r4.model.Enumeration t : src.getComparator()) + tgt.addComparator(convertSearchComparator(t.getValue())); + for (org.hl7.fhir.r4.model.Enumeration t : src.getModifier()) + tgt.addModifier(convertSearchModifierCode(t.getValue())); + for (org.hl7.fhir.r4.model.StringType t : src.getChain()) + tgt.addChain(t.getValue()); + for (org.hl7.fhir.r4.model.SearchParameter.SearchParameterComponentComponent t : src.getComponent()) + tgt.addComponent(convertSearchParameterComponentComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NORMAL: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NORMAL; + case PHONETIC: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.PHONETIC; + case NEARBY: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NEARBY; + case DISTANCE: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.DISTANCE; + case OTHER: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.OTHER; + default: return org.hl7.fhir.r4.model.SearchParameter.XPathUsageType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType convertXPathUsageType(org.hl7.fhir.r4.model.SearchParameter.XPathUsageType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NORMAL: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NORMAL; + case PHONETIC: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.PHONETIC; + case NEARBY: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NEARBY; + case DISTANCE: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.DISTANCE; + case OTHER: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.OTHER; + default: return org.hl7.fhir.dstu3.model.SearchParameter.XPathUsageType.NULL; + } +} + + private static org.hl7.fhir.r4.model.SearchParameter.SearchComparator convertSearchComparator(org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQ: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.EQ; + case NE: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.NE; + case GT: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.GT; + case LT: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.LT; + case GE: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.GE; + case LE: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.LE; + case SA: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.SA; + case EB: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.EB; + case AP: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.AP; + default: return org.hl7.fhir.r4.model.SearchParameter.SearchComparator.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator convertSearchComparator(org.hl7.fhir.r4.model.SearchParameter.SearchComparator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQ: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.EQ; + case NE: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.NE; + case GT: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.GT; + case LT: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.LT; + case GE: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.GE; + case LE: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.LE; + case SA: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.SA; + case EB: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.EB; + case AP: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.AP; + default: return org.hl7.fhir.dstu3.model.SearchParameter.SearchComparator.NULL; + } +} + + private static org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode convertSearchModifierCode(org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MISSING: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.MISSING; + case EXACT: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.EXACT; + case CONTAINS: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.CONTAINS; + case NOT: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.NOT; + case TEXT: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.TEXT; + case IN: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.IN; + case NOTIN: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.NOTIN; + case BELOW: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.BELOW; + case ABOVE: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.ABOVE; + case TYPE: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.TYPE; + default: return org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode convertSearchModifierCode(org.hl7.fhir.r4.model.SearchParameter.SearchModifierCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case MISSING: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.MISSING; + case EXACT: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.EXACT; + case CONTAINS: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.CONTAINS; + case NOT: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.NOT; + case TEXT: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.TEXT; + case IN: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.IN; + case NOTIN: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.NOTIN; + case BELOW: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.BELOW; + case ABOVE: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.ABOVE; + case TYPE: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.TYPE; + default: return org.hl7.fhir.dstu3.model.SearchParameter.SearchModifierCode.NULL; + } +} + + public static org.hl7.fhir.r4.model.SearchParameter.SearchParameterComponentComponent convertSearchParameterComponentComponent(org.hl7.fhir.dstu3.model.SearchParameter.SearchParameterComponentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.SearchParameter.SearchParameterComponentComponent tgt = new org.hl7.fhir.r4.model.SearchParameter.SearchParameterComponentComponent(); + copyElement(src, tgt); + if (src.hasDefinition()) + tgt.setDefinition(convertReference(src.getDefinition())); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SearchParameter.SearchParameterComponentComponent convertSearchParameterComponentComponent(org.hl7.fhir.r4.model.SearchParameter.SearchParameterComponentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.SearchParameter.SearchParameterComponentComponent tgt = new org.hl7.fhir.dstu3.model.SearchParameter.SearchParameterComponentComponent(); + copyElement(src, tgt); + if (src.hasDefinition()) + tgt.setDefinition(convertReference(src.getDefinition())); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Sequence convertSequence(org.hl7.fhir.dstu3.model.Sequence src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Sequence tgt = new org.hl7.fhir.r4.model.Sequence(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasType()) + tgt.setType(convertSequenceType(src.getType())); + if (src.hasCoordinateSystem()) + tgt.setCoordinateSystem(src.getCoordinateSystem()); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasSpecimen()) + tgt.setSpecimen(convertReference(src.getSpecimen())); + if (src.hasDevice()) + tgt.setDevice(convertReference(src.getDevice())); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + if (src.hasQuantity()) + tgt.setQuantity(convertQuantity(src.getQuantity())); + if (src.hasReferenceSeq()) + tgt.setReferenceSeq(convertSequenceReferenceSeqComponent(src.getReferenceSeq())); + for (org.hl7.fhir.dstu3.model.Sequence.SequenceVariantComponent t : src.getVariant()) + tgt.addVariant(convertSequenceVariantComponent(t)); + if (src.hasObservedSeq()) + tgt.setObservedSeq(src.getObservedSeq()); + for (org.hl7.fhir.dstu3.model.Sequence.SequenceQualityComponent t : src.getQuality()) + tgt.addQuality(convertSequenceQualityComponent(t)); + if (src.hasReadCoverage()) + tgt.setReadCoverage(src.getReadCoverage()); + for (org.hl7.fhir.dstu3.model.Sequence.SequenceRepositoryComponent t : src.getRepository()) + tgt.addRepository(convertSequenceRepositoryComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPointer()) + tgt.addPointer(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Sequence convertSequence(org.hl7.fhir.r4.model.Sequence src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Sequence tgt = new org.hl7.fhir.dstu3.model.Sequence(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasType()) + tgt.setType(convertSequenceType(src.getType())); + if (src.hasCoordinateSystem()) + tgt.setCoordinateSystem(src.getCoordinateSystem()); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasSpecimen()) + tgt.setSpecimen(convertReference(src.getSpecimen())); + if (src.hasDevice()) + tgt.setDevice(convertReference(src.getDevice())); + if (src.hasPerformer()) + tgt.setPerformer(convertReference(src.getPerformer())); + if (src.hasQuantity()) + tgt.setQuantity(convertQuantity(src.getQuantity())); + if (src.hasReferenceSeq()) + tgt.setReferenceSeq(convertSequenceReferenceSeqComponent(src.getReferenceSeq())); + for (org.hl7.fhir.r4.model.Sequence.SequenceVariantComponent t : src.getVariant()) + tgt.addVariant(convertSequenceVariantComponent(t)); + if (src.hasObservedSeq()) + tgt.setObservedSeq(src.getObservedSeq()); + for (org.hl7.fhir.r4.model.Sequence.SequenceQualityComponent t : src.getQuality()) + tgt.addQuality(convertSequenceQualityComponent(t)); + if (src.hasReadCoverage()) + tgt.setReadCoverage(src.getReadCoverage()); + for (org.hl7.fhir.r4.model.Sequence.SequenceRepositoryComponent t : src.getRepository()) + tgt.addRepository(convertSequenceRepositoryComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPointer()) + tgt.addPointer(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Sequence.SequenceType convertSequenceType(org.hl7.fhir.dstu3.model.Sequence.SequenceType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case AA: return org.hl7.fhir.r4.model.Sequence.SequenceType.AA; + case DNA: return org.hl7.fhir.r4.model.Sequence.SequenceType.DNA; + case RNA: return org.hl7.fhir.r4.model.Sequence.SequenceType.RNA; + default: return org.hl7.fhir.r4.model.Sequence.SequenceType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Sequence.SequenceType convertSequenceType(org.hl7.fhir.r4.model.Sequence.SequenceType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case AA: return org.hl7.fhir.dstu3.model.Sequence.SequenceType.AA; + case DNA: return org.hl7.fhir.dstu3.model.Sequence.SequenceType.DNA; + case RNA: return org.hl7.fhir.dstu3.model.Sequence.SequenceType.RNA; + default: return org.hl7.fhir.dstu3.model.Sequence.SequenceType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Sequence.SequenceReferenceSeqComponent convertSequenceReferenceSeqComponent(org.hl7.fhir.dstu3.model.Sequence.SequenceReferenceSeqComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Sequence.SequenceReferenceSeqComponent tgt = new org.hl7.fhir.r4.model.Sequence.SequenceReferenceSeqComponent(); + copyElement(src, tgt); + if (src.hasChromosome()) + tgt.setChromosome(convertCodeableConcept(src.getChromosome())); + if (src.hasGenomeBuild()) + tgt.setGenomeBuild(src.getGenomeBuild()); + if (src.hasReferenceSeqId()) + tgt.setReferenceSeqId(convertCodeableConcept(src.getReferenceSeqId())); + if (src.hasReferenceSeqPointer()) + tgt.setReferenceSeqPointer(convertReference(src.getReferenceSeqPointer())); + if (src.hasReferenceSeqString()) + tgt.setReferenceSeqString(src.getReferenceSeqString()); + if (src.hasStrand()) + tgt.setStrand(src.getStrand()); + if (src.hasWindowStart()) + tgt.setWindowStart(src.getWindowStart()); + if (src.hasWindowEnd()) + tgt.setWindowEnd(src.getWindowEnd()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Sequence.SequenceReferenceSeqComponent convertSequenceReferenceSeqComponent(org.hl7.fhir.r4.model.Sequence.SequenceReferenceSeqComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Sequence.SequenceReferenceSeqComponent tgt = new org.hl7.fhir.dstu3.model.Sequence.SequenceReferenceSeqComponent(); + copyElement(src, tgt); + if (src.hasChromosome()) + tgt.setChromosome(convertCodeableConcept(src.getChromosome())); + if (src.hasGenomeBuild()) + tgt.setGenomeBuild(src.getGenomeBuild()); + if (src.hasReferenceSeqId()) + tgt.setReferenceSeqId(convertCodeableConcept(src.getReferenceSeqId())); + if (src.hasReferenceSeqPointer()) + tgt.setReferenceSeqPointer(convertReference(src.getReferenceSeqPointer())); + if (src.hasReferenceSeqString()) + tgt.setReferenceSeqString(src.getReferenceSeqString()); + if (src.hasStrand()) + tgt.setStrand(src.getStrand()); + if (src.hasWindowStart()) + tgt.setWindowStart(src.getWindowStart()); + if (src.hasWindowEnd()) + tgt.setWindowEnd(src.getWindowEnd()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Sequence.SequenceVariantComponent convertSequenceVariantComponent(org.hl7.fhir.dstu3.model.Sequence.SequenceVariantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Sequence.SequenceVariantComponent tgt = new org.hl7.fhir.r4.model.Sequence.SequenceVariantComponent(); + copyElement(src, tgt); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + if (src.hasObservedAllele()) + tgt.setObservedAllele(src.getObservedAllele()); + if (src.hasReferenceAllele()) + tgt.setReferenceAllele(src.getReferenceAllele()); + if (src.hasCigar()) + tgt.setCigar(src.getCigar()); + if (src.hasVariantPointer()) + tgt.setVariantPointer(convertReference(src.getVariantPointer())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Sequence.SequenceVariantComponent convertSequenceVariantComponent(org.hl7.fhir.r4.model.Sequence.SequenceVariantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Sequence.SequenceVariantComponent tgt = new org.hl7.fhir.dstu3.model.Sequence.SequenceVariantComponent(); + copyElement(src, tgt); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + if (src.hasObservedAllele()) + tgt.setObservedAllele(src.getObservedAllele()); + if (src.hasReferenceAllele()) + tgt.setReferenceAllele(src.getReferenceAllele()); + if (src.hasCigar()) + tgt.setCigar(src.getCigar()); + if (src.hasVariantPointer()) + tgt.setVariantPointer(convertReference(src.getVariantPointer())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Sequence.SequenceQualityComponent convertSequenceQualityComponent(org.hl7.fhir.dstu3.model.Sequence.SequenceQualityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Sequence.SequenceQualityComponent tgt = new org.hl7.fhir.r4.model.Sequence.SequenceQualityComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertQualityType(src.getType())); + if (src.hasStandardSequence()) + tgt.setStandardSequence(convertCodeableConcept(src.getStandardSequence())); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + if (src.hasScore()) + tgt.setScore(convertQuantity(src.getScore())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasTruthTP()) + tgt.setTruthTP(src.getTruthTP()); + if (src.hasQueryTP()) + tgt.setQueryTP(src.getQueryTP()); + if (src.hasTruthFN()) + tgt.setTruthFN(src.getTruthFN()); + if (src.hasQueryFP()) + tgt.setQueryFP(src.getQueryFP()); + if (src.hasGtFP()) + tgt.setGtFP(src.getGtFP()); + if (src.hasPrecision()) + tgt.setPrecision(src.getPrecision()); + if (src.hasRecall()) + tgt.setRecall(src.getRecall()); + if (src.hasFScore()) + tgt.setFScore(src.getFScore()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Sequence.SequenceQualityComponent convertSequenceQualityComponent(org.hl7.fhir.r4.model.Sequence.SequenceQualityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Sequence.SequenceQualityComponent tgt = new org.hl7.fhir.dstu3.model.Sequence.SequenceQualityComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertQualityType(src.getType())); + if (src.hasStandardSequence()) + tgt.setStandardSequence(convertCodeableConcept(src.getStandardSequence())); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + if (src.hasScore()) + tgt.setScore(convertQuantity(src.getScore())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasTruthTP()) + tgt.setTruthTP(src.getTruthTP()); + if (src.hasQueryTP()) + tgt.setQueryTP(src.getQueryTP()); + if (src.hasTruthFN()) + tgt.setTruthFN(src.getTruthFN()); + if (src.hasQueryFP()) + tgt.setQueryFP(src.getQueryFP()); + if (src.hasGtFP()) + tgt.setGtFP(src.getGtFP()); + if (src.hasPrecision()) + tgt.setPrecision(src.getPrecision()); + if (src.hasRecall()) + tgt.setRecall(src.getRecall()); + if (src.hasFScore()) + tgt.setFScore(src.getFScore()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Sequence.QualityType convertQualityType(org.hl7.fhir.dstu3.model.Sequence.QualityType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INDEL: return org.hl7.fhir.r4.model.Sequence.QualityType.INDEL; + case SNP: return org.hl7.fhir.r4.model.Sequence.QualityType.SNP; + case UNKNOWN: return org.hl7.fhir.r4.model.Sequence.QualityType.UNKNOWN; + default: return org.hl7.fhir.r4.model.Sequence.QualityType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Sequence.QualityType convertQualityType(org.hl7.fhir.r4.model.Sequence.QualityType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INDEL: return org.hl7.fhir.dstu3.model.Sequence.QualityType.INDEL; + case SNP: return org.hl7.fhir.dstu3.model.Sequence.QualityType.SNP; + case UNKNOWN: return org.hl7.fhir.dstu3.model.Sequence.QualityType.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.Sequence.QualityType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Sequence.SequenceRepositoryComponent convertSequenceRepositoryComponent(org.hl7.fhir.dstu3.model.Sequence.SequenceRepositoryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Sequence.SequenceRepositoryComponent tgt = new org.hl7.fhir.r4.model.Sequence.SequenceRepositoryComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertRepositoryType(src.getType())); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDatasetId()) + tgt.setDatasetId(src.getDatasetId()); + if (src.hasVariantsetId()) + tgt.setVariantsetId(src.getVariantsetId()); + if (src.hasReadsetId()) + tgt.setReadsetId(src.getReadsetId()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Sequence.SequenceRepositoryComponent convertSequenceRepositoryComponent(org.hl7.fhir.r4.model.Sequence.SequenceRepositoryComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Sequence.SequenceRepositoryComponent tgt = new org.hl7.fhir.dstu3.model.Sequence.SequenceRepositoryComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertRepositoryType(src.getType())); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDatasetId()) + tgt.setDatasetId(src.getDatasetId()); + if (src.hasVariantsetId()) + tgt.setVariantsetId(src.getVariantsetId()); + if (src.hasReadsetId()) + tgt.setReadsetId(src.getReadsetId()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Sequence.RepositoryType convertRepositoryType(org.hl7.fhir.dstu3.model.Sequence.RepositoryType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DIRECTLINK: return org.hl7.fhir.r4.model.Sequence.RepositoryType.DIRECTLINK; + case OPENAPI: return org.hl7.fhir.r4.model.Sequence.RepositoryType.OPENAPI; + case LOGIN: return org.hl7.fhir.r4.model.Sequence.RepositoryType.LOGIN; + case OAUTH: return org.hl7.fhir.r4.model.Sequence.RepositoryType.OAUTH; + case OTHER: return org.hl7.fhir.r4.model.Sequence.RepositoryType.OTHER; + default: return org.hl7.fhir.r4.model.Sequence.RepositoryType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Sequence.RepositoryType convertRepositoryType(org.hl7.fhir.r4.model.Sequence.RepositoryType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DIRECTLINK: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.DIRECTLINK; + case OPENAPI: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.OPENAPI; + case LOGIN: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.LOGIN; + case OAUTH: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.OAUTH; + case OTHER: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.OTHER; + default: return org.hl7.fhir.dstu3.model.Sequence.RepositoryType.NULL; + } +} + + public static org.hl7.fhir.r4.model.ServiceDefinition convertServiceDefinition(org.hl7.fhir.dstu3.model.ServiceDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ServiceDefinition tgt = new org.hl7.fhir.r4.model.ServiceDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getTopic()) + tgt.addTopic(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.Contributor t : src.getContributor()) + tgt.addContributor(convertContributor(t)); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.dstu3.model.TriggerDefinition t : src.getTrigger()) + tgt.addTrigger(convertTriggerDefinition(t)); + for (org.hl7.fhir.dstu3.model.DataRequirement t : src.getDataRequirement()) + tgt.addDataRequirement(convertDataRequirement(t)); + if (src.hasOperationDefinition()) + tgt.setOperationDefinition(convertReference(src.getOperationDefinition())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ServiceDefinition convertServiceDefinition(org.hl7.fhir.r4.model.ServiceDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ServiceDefinition tgt = new org.hl7.fhir.dstu3.model.ServiceDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasUsage()) + tgt.setUsage(src.getUsage()); + if (src.hasApprovalDate()) + tgt.setApprovalDate(src.getApprovalDate()); + if (src.hasLastReviewDate()) + tgt.setLastReviewDate(src.getLastReviewDate()); + if (src.hasEffectivePeriod()) + tgt.setEffectivePeriod(convertPeriod(src.getEffectivePeriod())); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getTopic()) + tgt.addTopic(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.Contributor t : src.getContributor()) + tgt.addContributor(convertContributor(t)); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.RelatedArtifact t : src.getRelatedArtifact()) + tgt.addRelatedArtifact(convertRelatedArtifact(t)); + for (org.hl7.fhir.r4.model.TriggerDefinition t : src.getTrigger()) + tgt.addTrigger(convertTriggerDefinition(t)); + for (org.hl7.fhir.r4.model.DataRequirement t : src.getDataRequirement()) + tgt.addDataRequirement(convertDataRequirement(t)); + if (src.hasOperationDefinition()) + tgt.setOperationDefinition(convertReference(src.getOperationDefinition())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Slot convertSlot(org.hl7.fhir.dstu3.model.Slot src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Slot tgt = new org.hl7.fhir.r4.model.Slot(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasServiceCategory()) + tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getServiceType()) + tgt.addServiceType(convertCodeableConcept(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(t)); + if (src.hasAppointmentType()) + tgt.setAppointmentType(convertCodeableConcept(src.getAppointmentType())); + if (src.hasSchedule()) + tgt.setSchedule(convertReference(src.getSchedule())); + if (src.hasStatus()) + tgt.setStatus(convertSlotStatus(src.getStatus())); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + if (src.hasOverbooked()) + tgt.setOverbooked(src.getOverbooked()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Slot convertSlot(org.hl7.fhir.r4.model.Slot src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Slot tgt = new org.hl7.fhir.dstu3.model.Slot(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasServiceCategory()) + tgt.setServiceCategory(convertCodeableConcept(src.getServiceCategory())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getServiceType()) + tgt.addServiceType(convertCodeableConcept(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getSpecialty()) + tgt.addSpecialty(convertCodeableConcept(t)); + if (src.hasAppointmentType()) + tgt.setAppointmentType(convertCodeableConcept(src.getAppointmentType())); + if (src.hasSchedule()) + tgt.setSchedule(convertReference(src.getSchedule())); + if (src.hasStatus()) + tgt.setStatus(convertSlotStatus(src.getStatus())); + if (src.hasStart()) + tgt.setStart(src.getStart()); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + if (src.hasOverbooked()) + tgt.setOverbooked(src.getOverbooked()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.dstu3.model.Slot.SlotStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BUSY: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSY; + case FREE: return org.hl7.fhir.r4.model.Slot.SlotStatus.FREE; + case BUSYUNAVAILABLE: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSYUNAVAILABLE; + case BUSYTENTATIVE: return org.hl7.fhir.r4.model.Slot.SlotStatus.BUSYTENTATIVE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Slot.SlotStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Slot.SlotStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Slot.SlotStatus convertSlotStatus(org.hl7.fhir.r4.model.Slot.SlotStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case BUSY: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSY; + case FREE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.FREE; + case BUSYUNAVAILABLE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSYUNAVAILABLE; + case BUSYTENTATIVE: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.BUSYTENTATIVE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Slot.SlotStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Specimen convertSpecimen(org.hl7.fhir.dstu3.model.Specimen src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Specimen tgt = new org.hl7.fhir.r4.model.Specimen(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasAccessionIdentifier()) + tgt.setAccessionIdentifier(convertIdentifier(src.getAccessionIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertSpecimenStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasReceivedTime()) + tgt.setReceivedTime(src.getReceivedTime()); + for (org.hl7.fhir.dstu3.model.Reference t : src.getParent()) + tgt.addParent(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRequest()) + tgt.addRequest(convertReference(t)); + if (src.hasCollection()) + tgt.setCollection(convertSpecimenCollectionComponent(src.getCollection())); + for (org.hl7.fhir.dstu3.model.Specimen.SpecimenProcessingComponent t : src.getProcessing()) + tgt.addProcessing(convertSpecimenProcessingComponent(t)); + for (org.hl7.fhir.dstu3.model.Specimen.SpecimenContainerComponent t : src.getContainer()) + tgt.addContainer(convertSpecimenContainerComponent(t)); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Specimen convertSpecimen(org.hl7.fhir.r4.model.Specimen src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Specimen tgt = new org.hl7.fhir.dstu3.model.Specimen(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasAccessionIdentifier()) + tgt.setAccessionIdentifier(convertIdentifier(src.getAccessionIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertSpecimenStatus(src.getStatus())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSubject()) + tgt.setSubject(convertReference(src.getSubject())); + if (src.hasReceivedTime()) + tgt.setReceivedTime(src.getReceivedTime()); + for (org.hl7.fhir.r4.model.Reference t : src.getParent()) + tgt.addParent(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getRequest()) + tgt.addRequest(convertReference(t)); + if (src.hasCollection()) + tgt.setCollection(convertSpecimenCollectionComponent(src.getCollection())); + for (org.hl7.fhir.r4.model.Specimen.SpecimenProcessingComponent t : src.getProcessing()) + tgt.addProcessing(convertSpecimenProcessingComponent(t)); + for (org.hl7.fhir.r4.model.Specimen.SpecimenContainerComponent t : src.getContainer()) + tgt.addContainer(convertSpecimenContainerComponent(t)); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Specimen.SpecimenStatus convertSpecimenStatus(org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case AVAILABLE: return org.hl7.fhir.r4.model.Specimen.SpecimenStatus.AVAILABLE; + case UNAVAILABLE: return org.hl7.fhir.r4.model.Specimen.SpecimenStatus.UNAVAILABLE; + case UNSATISFACTORY: return org.hl7.fhir.r4.model.Specimen.SpecimenStatus.UNSATISFACTORY; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Specimen.SpecimenStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Specimen.SpecimenStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus convertSpecimenStatus(org.hl7.fhir.r4.model.Specimen.SpecimenStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case AVAILABLE: return org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus.AVAILABLE; + case UNAVAILABLE: return org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus.UNAVAILABLE; + case UNSATISFACTORY: return org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus.UNSATISFACTORY; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Specimen.SpecimenStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Specimen.SpecimenCollectionComponent convertSpecimenCollectionComponent(org.hl7.fhir.dstu3.model.Specimen.SpecimenCollectionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Specimen.SpecimenCollectionComponent tgt = new org.hl7.fhir.r4.model.Specimen.SpecimenCollectionComponent(); + copyElement(src, tgt); + if (src.hasCollector()) + tgt.setCollector(convertReference(src.getCollector())); + if (src.hasCollected()) + tgt.setCollected(convertType(src.getCollected())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Specimen.SpecimenCollectionComponent convertSpecimenCollectionComponent(org.hl7.fhir.r4.model.Specimen.SpecimenCollectionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Specimen.SpecimenCollectionComponent tgt = new org.hl7.fhir.dstu3.model.Specimen.SpecimenCollectionComponent(); + copyElement(src, tgt); + if (src.hasCollector()) + tgt.setCollector(convertReference(src.getCollector())); + if (src.hasCollected()) + tgt.setCollected(convertType(src.getCollected())); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasMethod()) + tgt.setMethod(convertCodeableConcept(src.getMethod())); + if (src.hasBodySite()) + tgt.setBodySite(convertCodeableConcept(src.getBodySite())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Specimen.SpecimenProcessingComponent convertSpecimenProcessingComponent(org.hl7.fhir.dstu3.model.Specimen.SpecimenProcessingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Specimen.SpecimenProcessingComponent tgt = new org.hl7.fhir.r4.model.Specimen.SpecimenProcessingComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasProcedure()) + tgt.setProcedure(convertCodeableConcept(src.getProcedure())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getAdditive()) + tgt.addAdditive(convertReference(t)); + if (src.hasTime()) + tgt.setTime(convertType(src.getTime())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Specimen.SpecimenProcessingComponent convertSpecimenProcessingComponent(org.hl7.fhir.r4.model.Specimen.SpecimenProcessingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Specimen.SpecimenProcessingComponent tgt = new org.hl7.fhir.dstu3.model.Specimen.SpecimenProcessingComponent(); + copyElement(src, tgt); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasProcedure()) + tgt.setProcedure(convertCodeableConcept(src.getProcedure())); + for (org.hl7.fhir.r4.model.Reference t : src.getAdditive()) + tgt.addAdditive(convertReference(t)); + if (src.hasTime()) + tgt.setTime(convertType(src.getTime())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Specimen.SpecimenContainerComponent convertSpecimenContainerComponent(org.hl7.fhir.dstu3.model.Specimen.SpecimenContainerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Specimen.SpecimenContainerComponent tgt = new org.hl7.fhir.r4.model.Specimen.SpecimenContainerComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasCapacity()) + tgt.setCapacity(convertSimpleQuantity(src.getCapacity())); + if (src.hasSpecimenQuantity()) + tgt.setSpecimenQuantity(convertSimpleQuantity(src.getSpecimenQuantity())); + if (src.hasAdditive()) + tgt.setAdditive(convertType(src.getAdditive())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Specimen.SpecimenContainerComponent convertSpecimenContainerComponent(org.hl7.fhir.r4.model.Specimen.SpecimenContainerComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Specimen.SpecimenContainerComponent tgt = new org.hl7.fhir.dstu3.model.Specimen.SpecimenContainerComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasCapacity()) + tgt.setCapacity(convertSimpleQuantity(src.getCapacity())); + if (src.hasSpecimenQuantity()) + tgt.setSpecimenQuantity(convertSimpleQuantity(src.getSpecimenQuantity())); + if (src.hasAdditive()) + tgt.setAdditive(convertType(src.getAdditive())); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.dstu3.model.StructureDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureDefinition tgt = new org.hl7.fhir.r4.model.StructureDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.Coding t : src.getKeyword()) + tgt.addKeyword(convertCoding(t)); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertStructureDefinitionMappingComponent(t)); + if (src.hasKind()) + tgt.setKind(convertStructureDefinitionKind(src.getKind())); + if (src.hasAbstract()) + tgt.setAbstract(src.getAbstract()); + if (src.hasContextType()) + tgt.setContextType(convertExtensionContext(src.getContextType())); + for (org.hl7.fhir.dstu3.model.StringType t : src.getContext()) + tgt.addContext(t.getValue()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getContextInvariant()) + tgt.addContextInvariant(t.getValue()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasBaseDefinition()) + tgt.setBaseDefinition(src.getBaseDefinition()); + if (src.hasDerivation()) + tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); + if (src.hasSnapshot()) + tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); + if (src.hasDifferential()) + tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureDefinition convertStructureDefinition(org.hl7.fhir.r4.model.StructureDefinition src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition tgt = new org.hl7.fhir.dstu3.model.StructureDefinition(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.Coding t : src.getKeyword()) + tgt.addKeyword(convertCoding(t)); + if (src.hasFhirVersion()) + tgt.setFhirVersion(src.getFhirVersion()); + for (org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent t : src.getMapping()) + tgt.addMapping(convertStructureDefinitionMappingComponent(t)); + if (src.hasKind()) + tgt.setKind(convertStructureDefinitionKind(src.getKind())); + if (src.hasAbstract()) + tgt.setAbstract(src.getAbstract()); + if (src.hasContextType()) + tgt.setContextType(convertExtensionContext(src.getContextType())); + for (org.hl7.fhir.r4.model.StringType t : src.getContext()) + tgt.addContext(t.getValue()); + for (org.hl7.fhir.r4.model.StringType t : src.getContextInvariant()) + tgt.addContextInvariant(t.getValue()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasBaseDefinition()) + tgt.setBaseDefinition(src.getBaseDefinition()); + if (src.hasDerivation()) + tgt.setDerivation(convertTypeDerivationRule(src.getDerivation())); + if (src.hasSnapshot()) + tgt.setSnapshot(convertStructureDefinitionSnapshotComponent(src.getSnapshot())); + if (src.hasDifferential()) + tgt.setDifferential(convertStructureDefinitionDifferentialComponent(src.getDifferential())); + return tgt; + } + + private static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRIMITIVETYPE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.PRIMITIVETYPE; + case COMPLEXTYPE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; + case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.RESOURCE; + case LOGICAL: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.LOGICAL; + default: return org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind convertStructureDefinitionKind(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionKind src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PRIMITIVETYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.PRIMITIVETYPE; + case COMPLEXTYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.COMPLEXTYPE; + case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.RESOURCE; + case LOGICAL: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.LOGICAL; + default: return org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionKind.NULL; + } +} + + private static org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESOURCE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.RESOURCE; + case DATATYPE: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.DATATYPE; + case EXTENSION: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.EXTENSION; + default: return org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext convertExtensionContext(org.hl7.fhir.r4.model.StructureDefinition.ExtensionContext src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESOURCE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.RESOURCE; + case DATATYPE: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.DATATYPE; + case EXTENSION: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.EXTENSION; + default: return org.hl7.fhir.dstu3.model.StructureDefinition.ExtensionContext.NULL; + } +} + + private static org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SPECIALIZATION: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; + case CONSTRAINT: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; + default: return org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule convertTypeDerivationRule(org.hl7.fhir.r4.model.StructureDefinition.TypeDerivationRule src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SPECIALIZATION: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.SPECIALIZATION; + case CONSTRAINT: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.CONSTRAINT; + default: return org.hl7.fhir.dstu3.model.StructureDefinition.TypeDerivationRule.NULL; + } +} + + public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + if (src.hasIdentity()) + tgt.setIdentity(src.getIdentity()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent convertStructureDefinitionMappingComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionMappingComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionMappingComponent(); + copyElement(src, tgt); + if (src.hasIdentity()) + tgt.setIdentity(src.getIdentity()); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasComment()) + tgt.setComment(src.getComment()); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent convertStructureDefinitionSnapshotComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionSnapshotComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionSnapshotComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent convertStructureDefinitionDifferentialComponent(org.hl7.fhir.r4.model.StructureDefinition.StructureDefinitionDifferentialComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent tgt = new org.hl7.fhir.dstu3.model.StructureDefinition.StructureDefinitionDifferentialComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.ElementDefinition t : src.getElement()) + tgt.addElement(convertElementDefinition(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureMap convertStructureMap(org.hl7.fhir.dstu3.model.StructureMap src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureMap tgt = new org.hl7.fhir.r4.model.StructureMap(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapStructureComponent t : src.getStructure()) + tgt.addStructure(convertStructureMapStructureComponent(t)); + for (org.hl7.fhir.dstu3.model.UriType t : src.getImport()) + tgt.addImport(t.getValue()); + for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupComponent t : src.getGroup()) + tgt.addGroup(convertStructureMapGroupComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureMap convertStructureMap(org.hl7.fhir.r4.model.StructureMap src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureMap tgt = new org.hl7.fhir.dstu3.model.StructureMap(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.StructureMap.StructureMapStructureComponent t : src.getStructure()) + tgt.addStructure(convertStructureMapStructureComponent(t)); + for (org.hl7.fhir.r4.model.UriType t : src.getImport()) + tgt.addImport(t.getValue()); + for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupComponent t : src.getGroup()) + tgt.addGroup(convertStructureMapGroupComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureMap.StructureMapStructureComponent convertStructureMapStructureComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapStructureComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureMap.StructureMapStructureComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapStructureComponent(); + copyElement(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasMode()) + tgt.setMode(convertStructureMapModelMode(src.getMode())); + if (src.hasAlias()) + tgt.setAlias(src.getAlias()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapStructureComponent convertStructureMapStructureComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapStructureComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureMap.StructureMapStructureComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapStructureComponent(); + copyElement(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasMode()) + tgt.setMode(convertStructureMapModelMode(src.getMode())); + if (src.hasAlias()) + tgt.setAlias(src.getAlias()); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode convertStructureMapModelMode(org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SOURCE: return org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode.SOURCE; + case QUERIED: return org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode.QUERIED; + case TARGET: return org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode.TARGET; + case PRODUCED: return org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode.PRODUCED; + default: return org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode convertStructureMapModelMode(org.hl7.fhir.r4.model.StructureMap.StructureMapModelMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SOURCE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode.SOURCE; + case QUERIED: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode.QUERIED; + case TARGET: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode.TARGET; + case PRODUCED: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode.PRODUCED; + default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapModelMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupComponent convertStructureMapGroupComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureMap.StructureMapGroupComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasExtends()) + tgt.setExtends(src.getExtends()); + if (src.hasTypeMode()) + tgt.setTypeMode(convertStructureMapGroupTypeMode(src.getTypeMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupInputComponent t : src.getInput()) + tgt.addInput(convertStructureMapGroupInputComponent(t)); + for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent t : src.getRule()) + tgt.addRule(convertStructureMapGroupRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupComponent convertStructureMapGroupComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasExtends()) + tgt.setExtends(src.getExtends()); + if (src.hasTypeMode()) + tgt.setTypeMode(convertStructureMapGroupTypeMode(src.getTypeMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupInputComponent t : src.getInput()) + tgt.addInput(convertStructureMapGroupInputComponent(t)); + for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent t : src.getRule()) + tgt.addRule(convertStructureMapGroupRuleComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode convertStructureMapGroupTypeMode(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NONE: return org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode.NONE; + case TYPES: return org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode.TYPES; + case TYPEANDTYPES: return org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode.TYPEANDTYPES; + default: return org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode convertStructureMapGroupTypeMode(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupTypeMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case NONE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode.NONE; + case TYPES: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode.TYPES; + case TYPEANDTYPES: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode.TYPEANDTYPES; + default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupTypeMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupInputComponent convertStructureMapGroupInputComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupInputComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureMap.StructureMapGroupInputComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupInputComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasMode()) + tgt.setMode(convertStructureMapInputMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupInputComponent convertStructureMapGroupInputComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupInputComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupInputComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupInputComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasMode()) + tgt.setMode(convertStructureMapInputMode(src.getMode())); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + private static org.hl7.fhir.r4.model.StructureMap.StructureMapInputMode convertStructureMapInputMode(org.hl7.fhir.dstu3.model.StructureMap.StructureMapInputMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SOURCE: return org.hl7.fhir.r4.model.StructureMap.StructureMapInputMode.SOURCE; + case TARGET: return org.hl7.fhir.r4.model.StructureMap.StructureMapInputMode.TARGET; + default: return org.hl7.fhir.r4.model.StructureMap.StructureMapInputMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapInputMode convertStructureMapInputMode(org.hl7.fhir.r4.model.StructureMap.StructureMapInputMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case SOURCE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapInputMode.SOURCE; + case TARGET: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapInputMode.TARGET; + default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapInputMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent convertStructureMapGroupRuleComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleSourceComponent t : src.getSource()) + tgt.addSource(convertStructureMapGroupRuleSourceComponent(t)); + for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetComponent t : src.getTarget()) + tgt.addTarget(convertStructureMapGroupRuleTargetComponent(t)); + for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent t : src.getRule()) + tgt.addRule(convertStructureMapGroupRuleComponent(t)); + for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleDependentComponent t : src.getDependent()) + tgt.addDependent(convertStructureMapGroupRuleDependentComponent(t)); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent convertStructureMapGroupRuleComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleSourceComponent t : src.getSource()) + tgt.addSource(convertStructureMapGroupRuleSourceComponent(t)); + for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetComponent t : src.getTarget()) + tgt.addTarget(convertStructureMapGroupRuleTargetComponent(t)); + for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleComponent t : src.getRule()) + tgt.addRule(convertStructureMapGroupRuleComponent(t)); + for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleDependentComponent t : src.getDependent()) + tgt.addDependent(convertStructureMapGroupRuleDependentComponent(t)); + if (src.hasDocumentation()) + tgt.setDocumentation(src.getDocumentation()); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleSourceComponent convertStructureMapGroupRuleSourceComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleSourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleSourceComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleSourceComponent(); + copyElement(src, tgt); + if (src.hasContext()) + tgt.setContext(src.getContext()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasDefaultValue()) + tgt.setDefaultValue(convertType(src.getDefaultValue())); + if (src.hasElement()) + tgt.setElement(src.getElement()); + if (src.hasListMode()) + tgt.setListMode(convertStructureMapSourceListMode(src.getListMode())); + if (src.hasVariable()) + tgt.setVariable(src.getVariable()); + if (src.hasCondition()) + tgt.setCondition(src.getCondition()); + if (src.hasCheck()) + tgt.setCheck(src.getCheck()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleSourceComponent convertStructureMapGroupRuleSourceComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleSourceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleSourceComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleSourceComponent(); + copyElement(src, tgt); + if (src.hasContext()) + tgt.setContext(src.getContext()); + if (src.hasMin()) + tgt.setMin(src.getMin()); + if (src.hasMax()) + tgt.setMax(src.getMax()); + if (src.hasType()) + tgt.setType(src.getType()); + if (src.hasDefaultValue()) + tgt.setDefaultValue(convertType(src.getDefaultValue())); + if (src.hasElement()) + tgt.setElement(src.getElement()); + if (src.hasListMode()) + tgt.setListMode(convertStructureMapSourceListMode(src.getListMode())); + if (src.hasVariable()) + tgt.setVariable(src.getVariable()); + if (src.hasCondition()) + tgt.setCondition(src.getCondition()); + if (src.hasCheck()) + tgt.setCheck(src.getCheck()); + return tgt; + } + + private static org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode convertStructureMapSourceListMode(org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FIRST: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.FIRST; + case NOTFIRST: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.NOTFIRST; + case LAST: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.LAST; + case NOTLAST: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.NOTLAST; + case ONLYONE: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.ONLYONE; + default: return org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode convertStructureMapSourceListMode(org.hl7.fhir.r4.model.StructureMap.StructureMapSourceListMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FIRST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.FIRST; + case NOTFIRST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.NOTFIRST; + case LAST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.LAST; + case NOTLAST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.NOTLAST; + case ONLYONE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.ONLYONE; + default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapSourceListMode.NULL; + } +} + + public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetComponent convertStructureMapGroupRuleTargetComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetComponent(); + copyElement(src, tgt); + if (src.hasContext()) + tgt.setContext(src.getContext()); + if (src.hasContextType()) + tgt.setContextType(convertStructureMapContextType(src.getContextType())); + if (src.hasElement()) + tgt.setElement(src.getElement()); + if (src.hasVariable()) + tgt.setVariable(src.getVariable()); + for (org.hl7.fhir.dstu3.model.Enumeration t : src.getListMode()) + tgt.addListMode(convertStructureMapTargetListMode(t.getValue())); + if (src.hasListRuleId()) + tgt.setListRuleId(src.getListRuleId()); + if (src.hasTransform()) + tgt.setTransform(convertStructureMapTransform(src.getTransform())); + for (org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetParameterComponent t : src.getParameter()) + tgt.addParameter(convertStructureMapGroupRuleTargetParameterComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetComponent convertStructureMapGroupRuleTargetComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetComponent(); + copyElement(src, tgt); + if (src.hasContext()) + tgt.setContext(src.getContext()); + if (src.hasContextType()) + tgt.setContextType(convertStructureMapContextType(src.getContextType())); + if (src.hasElement()) + tgt.setElement(src.getElement()); + if (src.hasVariable()) + tgt.setVariable(src.getVariable()); + for (org.hl7.fhir.r4.model.Enumeration t : src.getListMode()) + tgt.addListMode(convertStructureMapTargetListMode(t.getValue())); + if (src.hasListRuleId()) + tgt.setListRuleId(src.getListRuleId()); + if (src.hasTransform()) + tgt.setTransform(convertStructureMapTransform(src.getTransform())); + for (org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetParameterComponent t : src.getParameter()) + tgt.addParameter(convertStructureMapGroupRuleTargetParameterComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.StructureMap.StructureMapContextType convertStructureMapContextType(org.hl7.fhir.dstu3.model.StructureMap.StructureMapContextType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TYPE: return org.hl7.fhir.r4.model.StructureMap.StructureMapContextType.TYPE; + case VARIABLE: return org.hl7.fhir.r4.model.StructureMap.StructureMapContextType.VARIABLE; + default: return org.hl7.fhir.r4.model.StructureMap.StructureMapContextType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapContextType convertStructureMapContextType(org.hl7.fhir.r4.model.StructureMap.StructureMapContextType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TYPE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapContextType.TYPE; + case VARIABLE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapContextType.VARIABLE; + default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapContextType.NULL; + } +} + + private static org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode convertStructureMapTargetListMode(org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FIRST: return org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode.FIRST; + case SHARE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode.SHARE; + case LAST: return org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode.LAST; + case COLLATE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode.COLLATE; + default: return org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode convertStructureMapTargetListMode(org.hl7.fhir.r4.model.StructureMap.StructureMapTargetListMode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case FIRST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode.FIRST; + case SHARE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode.SHARE; + case LAST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode.LAST; + case COLLATE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode.COLLATE; + default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTargetListMode.NULL; + } +} + + private static org.hl7.fhir.r4.model.StructureMap.StructureMapTransform convertStructureMapTransform(org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CREATE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.CREATE; + case COPY: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.COPY; + case TRUNCATE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.TRUNCATE; + case ESCAPE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.ESCAPE; + case CAST: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.CAST; + case APPEND: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.APPEND; + case TRANSLATE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.TRANSLATE; + case REFERENCE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.REFERENCE; + case DATEOP: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.DATEOP; + case UUID: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.UUID; + case POINTER: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.POINTER; + case EVALUATE: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.EVALUATE; + case CC: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.CC; + case C: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.C; + case QTY: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.QTY; + case ID: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.ID; + case CP: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.CP; + default: return org.hl7.fhir.r4.model.StructureMap.StructureMapTransform.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform convertStructureMapTransform(org.hl7.fhir.r4.model.StructureMap.StructureMapTransform src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case CREATE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.CREATE; + case COPY: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.COPY; + case TRUNCATE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.TRUNCATE; + case ESCAPE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.ESCAPE; + case CAST: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.CAST; + case APPEND: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.APPEND; + case TRANSLATE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.TRANSLATE; + case REFERENCE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.REFERENCE; + case DATEOP: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.DATEOP; + case UUID: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.UUID; + case POINTER: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.POINTER; + case EVALUATE: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.EVALUATE; + case CC: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.CC; + case C: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.C; + case QTY: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.QTY; + case ID: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.ID; + case CP: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.CP; + default: return org.hl7.fhir.dstu3.model.StructureMap.StructureMapTransform.NULL; + } +} + + public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetParameterComponent convertStructureMapGroupRuleTargetParameterComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetParameterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetParameterComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetParameterComponent(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetParameterComponent convertStructureMapGroupRuleTargetParameterComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleTargetParameterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetParameterComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleTargetParameterComponent(); + copyElement(src, tgt); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleDependentComponent convertStructureMapGroupRuleDependentComponent(org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleDependentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleDependentComponent tgt = new org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleDependentComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getVariable()) + tgt.addVariable(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleDependentComponent convertStructureMapGroupRuleDependentComponent(org.hl7.fhir.r4.model.StructureMap.StructureMapGroupRuleDependentComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleDependentComponent tgt = new org.hl7.fhir.dstu3.model.StructureMap.StructureMapGroupRuleDependentComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + for (org.hl7.fhir.r4.model.StringType t : src.getVariable()) + tgt.addVariable(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.Subscription convertSubscription(org.hl7.fhir.dstu3.model.Subscription src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Subscription tgt = new org.hl7.fhir.r4.model.Subscription(); + copyDomainResource(src, tgt); + if (src.hasStatus()) + tgt.setStatus(convertSubscriptionStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + if (src.hasReason()) + tgt.setReason(src.getReason()); + if (src.hasCriteria()) + tgt.setCriteria(src.getCriteria()); + if (src.hasError()) + tgt.setError(src.getError()); + if (src.hasChannel()) + tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); + for (org.hl7.fhir.dstu3.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Subscription convertSubscription(org.hl7.fhir.r4.model.Subscription src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Subscription tgt = new org.hl7.fhir.dstu3.model.Subscription(); + copyDomainResource(src, tgt); + if (src.hasStatus()) + tgt.setStatus(convertSubscriptionStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.ContactPoint t : src.getContact()) + tgt.addContact(convertContactPoint(t)); + if (src.hasEnd()) + tgt.setEnd(src.getEnd()); + if (src.hasReason()) + tgt.setReason(src.getReason()); + if (src.hasCriteria()) + tgt.setCriteria(src.getCriteria()); + if (src.hasError()) + tgt.setError(src.getError()); + if (src.hasChannel()) + tgt.setChannel(convertSubscriptionChannelComponent(src.getChannel())); + for (org.hl7.fhir.r4.model.Coding t : src.getTag()) + tgt.addTag(convertCoding(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUESTED: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.REQUESTED; + case ACTIVE: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.ACTIVE; + case ERROR: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.ERROR; + case OFF: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.OFF; + default: return org.hl7.fhir.r4.model.Subscription.SubscriptionStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus convertSubscriptionStatus(org.hl7.fhir.r4.model.Subscription.SubscriptionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case REQUESTED: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.REQUESTED; + case ACTIVE: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.ACTIVE; + case ERROR: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.ERROR; + case OFF: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.OFF; + default: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertSubscriptionChannelType(src.getType())); + if (src.hasEndpoint()) + tgt.setEndpoint(src.getEndpoint()); + if (src.hasPayload()) + tgt.setPayload(src.getPayload()); + for (org.hl7.fhir.dstu3.model.StringType t : src.getHeader()) + tgt.addHeader(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent convertSubscriptionChannelComponent(org.hl7.fhir.r4.model.Subscription.SubscriptionChannelComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent tgt = new org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertSubscriptionChannelType(src.getType())); + if (src.hasEndpoint()) + tgt.setEndpoint(src.getEndpoint()); + if (src.hasPayload()) + tgt.setPayload(src.getPayload()); + for (org.hl7.fhir.r4.model.StringType t : src.getHeader()) + tgt.addHeader(t.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESTHOOK: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.RESTHOOK; + case WEBSOCKET: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.WEBSOCKET; + case EMAIL: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.EMAIL; + case SMS: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.SMS; + case MESSAGE: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.MESSAGE; + default: return org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType convertSubscriptionChannelType(org.hl7.fhir.r4.model.Subscription.SubscriptionChannelType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESTHOOK: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.RESTHOOK; + case WEBSOCKET: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.WEBSOCKET; + case EMAIL: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.EMAIL; + case SMS: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.SMS; + case MESSAGE: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.MESSAGE; + default: return org.hl7.fhir.dstu3.model.Subscription.SubscriptionChannelType.NULL; + } +} + + public static org.hl7.fhir.r4.model.Substance convertSubstance(org.hl7.fhir.dstu3.model.Substance src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Substance tgt = new org.hl7.fhir.r4.model.Substance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertFHIRSubstanceStatus(src.getStatus())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent t : src.getInstance()) + tgt.addInstance(convertSubstanceInstanceComponent(t)); + for (org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) + tgt.addIngredient(convertSubstanceIngredientComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Substance convertSubstance(org.hl7.fhir.r4.model.Substance src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Substance tgt = new org.hl7.fhir.dstu3.model.Substance(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertFHIRSubstanceStatus(src.getStatus())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getCategory()) + tgt.addCategory(convertCodeableConcept(t)); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent t : src.getInstance()) + tgt.addInstance(convertSubstanceInstanceComponent(t)); + for (org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent t : src.getIngredient()) + tgt.addIngredient(convertSubstanceIngredientComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus convertFHIRSubstanceStatus(org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus convertFHIRSubstanceStatus(org.hl7.fhir.r4.model.Substance.FHIRSubstanceStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus.ACTIVE; + case INACTIVE: return org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus.INACTIVE; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Substance.FHIRSubstanceStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasExpiry()) + tgt.setExpiry(src.getExpiry()); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent convertSubstanceInstanceComponent(org.hl7.fhir.r4.model.Substance.SubstanceInstanceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent tgt = new org.hl7.fhir.dstu3.model.Substance.SubstanceInstanceComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasExpiry()) + tgt.setExpiry(src.getExpiry()); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent(); + copyElement(src, tgt); + if (src.hasQuantity()) + tgt.setQuantity(convertRatio(src.getQuantity())); + if (src.hasSubstance()) + tgt.setSubstance(convertType(src.getSubstance())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent convertSubstanceIngredientComponent(org.hl7.fhir.r4.model.Substance.SubstanceIngredientComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent tgt = new org.hl7.fhir.dstu3.model.Substance.SubstanceIngredientComponent(); + copyElement(src, tgt); + if (src.hasQuantity()) + tgt.setQuantity(convertRatio(src.getQuantity())); + if (src.hasSubstance()) + tgt.setSubstance(convertType(src.getSubstance())); + return tgt; + } + + public static org.hl7.fhir.r4.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.dstu3.model.SupplyDelivery src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.SupplyDelivery tgt = new org.hl7.fhir.r4.model.SupplyDelivery(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSuppliedItem()) + tgt.setSuppliedItem(convertSupplyDeliverySuppliedItemComponent(src.getSuppliedItem())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasSupplier()) + tgt.setSupplier(convertReference(src.getSupplier())); + if (src.hasDestination()) + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SupplyDelivery convertSupplyDelivery(org.hl7.fhir.r4.model.SupplyDelivery src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.SupplyDelivery tgt = new org.hl7.fhir.dstu3.model.SupplyDelivery(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertSupplyDeliveryStatus(src.getStatus())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasSuppliedItem()) + tgt.setSuppliedItem(convertSupplyDeliverySuppliedItemComponent(src.getSuppliedItem())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasSupplier()) + tgt.setSupplier(convertReference(src.getSupplier())); + if (src.hasDestination()) + tgt.setDestination(convertReference(src.getDestination())); + for (org.hl7.fhir.r4.model.Reference t : src.getReceiver()) + tgt.addReceiver(convertReference(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; + case ABANDONED: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus convertSupplyDeliveryStatus(org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliveryStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case INPROGRESS: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.INPROGRESS; + case COMPLETED: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.COMPLETED; + case ABANDONED: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.ABANDONED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliveryStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent convertSupplyDeliverySuppliedItemComponent(org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent tgt = new org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent(); + copyElement(src, tgt); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasItem()) + tgt.setItem(convertType(src.getItem())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent convertSupplyDeliverySuppliedItemComponent(org.hl7.fhir.r4.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent tgt = new org.hl7.fhir.dstu3.model.SupplyDelivery.SupplyDeliverySuppliedItemComponent(); + copyElement(src, tgt); + if (src.hasQuantity()) + tgt.setQuantity(convertSimpleQuantity(src.getQuantity())); + if (src.hasItem()) + tgt.setItem(convertType(src.getItem())); + return tgt; + } + + public static org.hl7.fhir.r4.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.dstu3.model.SupplyRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.SupplyRequest tgt = new org.hl7.fhir.r4.model.SupplyRequest(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasPriority()) + tgt.setPriority(convertRequestPriority(src.getPriority())); + if (src.hasOrderedItem()) + tgt.setOrderedItem(convertSupplyRequestOrderedItemComponent(src.getOrderedItem())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasRequester()) + tgt.setRequester(convertSupplyRequestRequesterComponent(src.getRequester())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getSupplier()) + tgt.addSupplier(convertReference(t)); + if (src.hasReason()) + tgt.setReason(convertType(src.getReason())); + if (src.hasDeliverFrom()) + tgt.setDeliverFrom(convertReference(src.getDeliverFrom())); + if (src.hasDeliverTo()) + tgt.setDeliverTo(convertReference(src.getDeliverTo())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SupplyRequest convertSupplyRequest(org.hl7.fhir.r4.model.SupplyRequest src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.SupplyRequest tgt = new org.hl7.fhir.dstu3.model.SupplyRequest(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasStatus()) + tgt.setStatus(convertSupplyRequestStatus(src.getStatus())); + if (src.hasCategory()) + tgt.setCategory(convertCodeableConcept(src.getCategory())); + if (src.hasPriority()) + tgt.setPriority(convertRequestPriority(src.getPriority())); + if (src.hasOrderedItem()) + tgt.setOrderedItem(convertSupplyRequestOrderedItemComponent(src.getOrderedItem())); + if (src.hasOccurrence()) + tgt.setOccurrence(convertType(src.getOccurrence())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasRequester()) + tgt.setRequester(convertSupplyRequestRequesterComponent(src.getRequester())); + for (org.hl7.fhir.r4.model.Reference t : src.getSupplier()) + tgt.addSupplier(convertReference(t)); + if (src.hasReason()) + tgt.setReason(convertType(src.getReason())); + if (src.hasDeliverFrom()) + tgt.setDeliverFrom(convertReference(src.getDeliverFrom())); + if (src.hasDeliverTo()) + tgt.setDeliverTo(convertReference(src.getDeliverTo())); + return tgt; + } + + private static org.hl7.fhir.r4.model.SupplyRequest.RequestPriority convertRequestPriority(org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.r4.model.SupplyRequest.RequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.r4.model.SupplyRequest.RequestPriority.URGENT; + case ASAP: return org.hl7.fhir.r4.model.SupplyRequest.RequestPriority.ASAP; + case STAT: return org.hl7.fhir.r4.model.SupplyRequest.RequestPriority.STAT; + default: return org.hl7.fhir.r4.model.SupplyRequest.RequestPriority.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority convertRequestPriority(org.hl7.fhir.r4.model.SupplyRequest.RequestPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority.ROUTINE; + case URGENT: return org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority.URGENT; + case ASAP: return org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority.ASAP; + case STAT: return org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority.STAT; + default: return org.hl7.fhir.dstu3.model.SupplyRequest.RequestPriority.NULL; + } +} + + + private static org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.UNKNOWN; + default: return org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus convertSupplyRequestStatus(org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.DRAFT; + case ACTIVE: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.ACTIVE; + case SUSPENDED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.SUSPENDED; + case CANCELLED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.CANCELLED; + case COMPLETED: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.ENTEREDINERROR; + case UNKNOWN: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.UNKNOWN; + default: return org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestOrderedItemComponent convertSupplyRequestOrderedItemComponent(org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestOrderedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestOrderedItemComponent tgt = new org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestOrderedItemComponent(); + copyElement(src, tgt); + if (src.hasQuantity()) + tgt.setQuantity(convertQuantity(src.getQuantity())); + if (src.hasItem()) + tgt.setItem(convertType(src.getItem())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestOrderedItemComponent convertSupplyRequestOrderedItemComponent(org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestOrderedItemComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestOrderedItemComponent tgt = new org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestOrderedItemComponent(); + copyElement(src, tgt); + if (src.hasQuantity()) + tgt.setQuantity(convertQuantity(src.getQuantity())); + if (src.hasItem()) + tgt.setItem(convertType(src.getItem())); + return tgt; + } + + public static org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestRequesterComponent convertSupplyRequestRequesterComponent(org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestRequesterComponent tgt = new org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestRequesterComponent convertSupplyRequestRequesterComponent(org.hl7.fhir.r4.model.SupplyRequest.SupplyRequestRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestRequesterComponent tgt = new org.hl7.fhir.dstu3.model.SupplyRequest.SupplyRequestRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Task convertTask(org.hl7.fhir.dstu3.model.Task src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Task tgt = new org.hl7.fhir.r4.model.Task(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasDefinition()) + tgt.setDefinition(convertType(src.getDefinition())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasGroupIdentifier()) + tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertTaskStatus(src.getStatus())); + if (src.hasStatusReason()) + tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); + if (src.hasBusinessStatus()) + tgt.setBusinessStatus(convertCodeableConcept(src.getBusinessStatus())); + if (src.hasIntent()) + tgt.setIntent(convertTaskIntent(src.getIntent())); + if (src.hasPriority()) + tgt.setPriority(convertTaskPriority(src.getPriority())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasFocus()) + tgt.setFocus(convertReference(src.getFocus())); + if (src.hasFor()) + tgt.setFor(convertReference(src.getFor())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasExecutionPeriod()) + tgt.setExecutionPeriod(convertPeriod(src.getExecutionPeriod())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasLastModified()) + tgt.setLastModified(src.getLastModified()); + if (src.hasRequester()) + tgt.setRequester(convertTaskRequesterComponent(src.getRequester())); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getPerformerType()) + tgt.addPerformerType(convertCodeableConcept(t)); + if (src.hasOwner()) + tgt.setOwner(convertReference(src.getOwner())); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRelevantHistory()) + tgt.addRelevantHistory(convertReference(t)); + if (src.hasRestriction()) + tgt.setRestriction(convertTaskRestrictionComponent(src.getRestriction())); + for (org.hl7.fhir.dstu3.model.Task.ParameterComponent t : src.getInput()) + tgt.addInput(convertParameterComponent(t)); + for (org.hl7.fhir.dstu3.model.Task.TaskOutputComponent t : src.getOutput()) + tgt.addOutput(convertTaskOutputComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Task convertTask(org.hl7.fhir.r4.model.Task src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Task tgt = new org.hl7.fhir.dstu3.model.Task(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasDefinition()) + tgt.setDefinition(convertType(src.getDefinition())); + for (org.hl7.fhir.r4.model.Reference t : src.getBasedOn()) + tgt.addBasedOn(convertReference(t)); + if (src.hasGroupIdentifier()) + tgt.setGroupIdentifier(convertIdentifier(src.getGroupIdentifier())); + for (org.hl7.fhir.r4.model.Reference t : src.getPartOf()) + tgt.addPartOf(convertReference(t)); + if (src.hasStatus()) + tgt.setStatus(convertTaskStatus(src.getStatus())); + if (src.hasStatusReason()) + tgt.setStatusReason(convertCodeableConcept(src.getStatusReason())); + if (src.hasBusinessStatus()) + tgt.setBusinessStatus(convertCodeableConcept(src.getBusinessStatus())); + if (src.hasIntent()) + tgt.setIntent(convertTaskIntent(src.getIntent())); + if (src.hasPriority()) + tgt.setPriority(convertTaskPriority(src.getPriority())); + if (src.hasCode()) + tgt.setCode(convertCodeableConcept(src.getCode())); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasFocus()) + tgt.setFocus(convertReference(src.getFocus())); + if (src.hasFor()) + tgt.setFor(convertReference(src.getFor())); + if (src.hasContext()) + tgt.setContext(convertReference(src.getContext())); + if (src.hasExecutionPeriod()) + tgt.setExecutionPeriod(convertPeriod(src.getExecutionPeriod())); + if (src.hasAuthoredOn()) + tgt.setAuthoredOn(src.getAuthoredOn()); + if (src.hasLastModified()) + tgt.setLastModified(src.getLastModified()); + if (src.hasRequester()) + tgt.setRequester(convertTaskRequesterComponent(src.getRequester())); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getPerformerType()) + tgt.addPerformerType(convertCodeableConcept(t)); + if (src.hasOwner()) + tgt.setOwner(convertReference(src.getOwner())); + if (src.hasReason()) + tgt.setReason(convertCodeableConcept(src.getReason())); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getRelevantHistory()) + tgt.addRelevantHistory(convertReference(t)); + if (src.hasRestriction()) + tgt.setRestriction(convertTaskRestrictionComponent(src.getRestriction())); + for (org.hl7.fhir.r4.model.Task.ParameterComponent t : src.getInput()) + tgt.addInput(convertParameterComponent(t)); + for (org.hl7.fhir.r4.model.Task.TaskOutputComponent t : src.getOutput()) + tgt.addOutput(convertTaskOutputComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.Task.TaskStatus convertTaskStatus(org.hl7.fhir.dstu3.model.Task.TaskStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.r4.model.Task.TaskStatus.DRAFT; + case REQUESTED: return org.hl7.fhir.r4.model.Task.TaskStatus.REQUESTED; + case RECEIVED: return org.hl7.fhir.r4.model.Task.TaskStatus.RECEIVED; + case ACCEPTED: return org.hl7.fhir.r4.model.Task.TaskStatus.ACCEPTED; + case REJECTED: return org.hl7.fhir.r4.model.Task.TaskStatus.REJECTED; + case READY: return org.hl7.fhir.r4.model.Task.TaskStatus.READY; + case CANCELLED: return org.hl7.fhir.r4.model.Task.TaskStatus.CANCELLED; + case INPROGRESS: return org.hl7.fhir.r4.model.Task.TaskStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.r4.model.Task.TaskStatus.ONHOLD; + case FAILED: return org.hl7.fhir.r4.model.Task.TaskStatus.FAILED; + case COMPLETED: return org.hl7.fhir.r4.model.Task.TaskStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.Task.TaskStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.Task.TaskStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Task.TaskStatus convertTaskStatus(org.hl7.fhir.r4.model.Task.TaskStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DRAFT: return org.hl7.fhir.dstu3.model.Task.TaskStatus.DRAFT; + case REQUESTED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.REQUESTED; + case RECEIVED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.RECEIVED; + case ACCEPTED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.ACCEPTED; + case REJECTED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.REJECTED; + case READY: return org.hl7.fhir.dstu3.model.Task.TaskStatus.READY; + case CANCELLED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.CANCELLED; + case INPROGRESS: return org.hl7.fhir.dstu3.model.Task.TaskStatus.INPROGRESS; + case ONHOLD: return org.hl7.fhir.dstu3.model.Task.TaskStatus.ONHOLD; + case FAILED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.FAILED; + case COMPLETED: return org.hl7.fhir.dstu3.model.Task.TaskStatus.COMPLETED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.Task.TaskStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.Task.TaskStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.Task.TaskIntent convertTaskIntent(org.hl7.fhir.dstu3.model.Task.TaskIntent src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSAL: return org.hl7.fhir.r4.model.Task.TaskIntent.PROPOSAL; + case PLAN: return org.hl7.fhir.r4.model.Task.TaskIntent.PLAN; + case ORDER: return org.hl7.fhir.r4.model.Task.TaskIntent.ORDER; + case ORIGINALORDER: return org.hl7.fhir.r4.model.Task.TaskIntent.ORIGINALORDER; + case REFLEXORDER: return org.hl7.fhir.r4.model.Task.TaskIntent.REFLEXORDER; + case FILLERORDER: return org.hl7.fhir.r4.model.Task.TaskIntent.FILLERORDER; + case INSTANCEORDER: return org.hl7.fhir.r4.model.Task.TaskIntent.INSTANCEORDER; + case OPTION: return org.hl7.fhir.r4.model.Task.TaskIntent.OPTION; + default: return org.hl7.fhir.r4.model.Task.TaskIntent.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Task.TaskIntent convertTaskIntent(org.hl7.fhir.r4.model.Task.TaskIntent src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PROPOSAL: return org.hl7.fhir.dstu3.model.Task.TaskIntent.PROPOSAL; + case PLAN: return org.hl7.fhir.dstu3.model.Task.TaskIntent.PLAN; + case ORDER: return org.hl7.fhir.dstu3.model.Task.TaskIntent.ORDER; + case ORIGINALORDER: return org.hl7.fhir.dstu3.model.Task.TaskIntent.ORIGINALORDER; + case REFLEXORDER: return org.hl7.fhir.dstu3.model.Task.TaskIntent.REFLEXORDER; + case FILLERORDER: return org.hl7.fhir.dstu3.model.Task.TaskIntent.FILLERORDER; + case INSTANCEORDER: return org.hl7.fhir.dstu3.model.Task.TaskIntent.INSTANCEORDER; + case OPTION: return org.hl7.fhir.dstu3.model.Task.TaskIntent.OPTION; + default: return org.hl7.fhir.dstu3.model.Task.TaskIntent.NULL; + } +} + + private static org.hl7.fhir.r4.model.Task.TaskPriority convertTaskPriority(org.hl7.fhir.dstu3.model.Task.TaskPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.r4.model.Task.TaskPriority.ROUTINE; + case URGENT: return org.hl7.fhir.r4.model.Task.TaskPriority.URGENT; + case ASAP: return org.hl7.fhir.r4.model.Task.TaskPriority.ASAP; + case STAT: return org.hl7.fhir.r4.model.Task.TaskPriority.STAT; + default: return org.hl7.fhir.r4.model.Task.TaskPriority.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.Task.TaskPriority convertTaskPriority(org.hl7.fhir.r4.model.Task.TaskPriority src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ROUTINE: return org.hl7.fhir.dstu3.model.Task.TaskPriority.ROUTINE; + case URGENT: return org.hl7.fhir.dstu3.model.Task.TaskPriority.URGENT; + case ASAP: return org.hl7.fhir.dstu3.model.Task.TaskPriority.ASAP; + case STAT: return org.hl7.fhir.dstu3.model.Task.TaskPriority.STAT; + default: return org.hl7.fhir.dstu3.model.Task.TaskPriority.NULL; + } +} + + public static org.hl7.fhir.r4.model.Task.TaskRequesterComponent convertTaskRequesterComponent(org.hl7.fhir.dstu3.model.Task.TaskRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Task.TaskRequesterComponent tgt = new org.hl7.fhir.r4.model.Task.TaskRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Task.TaskRequesterComponent convertTaskRequesterComponent(org.hl7.fhir.r4.model.Task.TaskRequesterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Task.TaskRequesterComponent tgt = new org.hl7.fhir.dstu3.model.Task.TaskRequesterComponent(); + copyElement(src, tgt); + if (src.hasAgent()) + tgt.setAgent(convertReference(src.getAgent())); + if (src.hasOnBehalfOf()) + tgt.setOnBehalfOf(convertReference(src.getOnBehalfOf())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Task.TaskRestrictionComponent convertTaskRestrictionComponent(org.hl7.fhir.dstu3.model.Task.TaskRestrictionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Task.TaskRestrictionComponent tgt = new org.hl7.fhir.r4.model.Task.TaskRestrictionComponent(); + copyElement(src, tgt); + if (src.hasRepetitions()) + tgt.setRepetitions(src.getRepetitions()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.dstu3.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Task.TaskRestrictionComponent convertTaskRestrictionComponent(org.hl7.fhir.r4.model.Task.TaskRestrictionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Task.TaskRestrictionComponent tgt = new org.hl7.fhir.dstu3.model.Task.TaskRestrictionComponent(); + copyElement(src, tgt); + if (src.hasRepetitions()) + tgt.setRepetitions(src.getRepetitions()); + if (src.hasPeriod()) + tgt.setPeriod(convertPeriod(src.getPeriod())); + for (org.hl7.fhir.r4.model.Reference t : src.getRecipient()) + tgt.addRecipient(convertReference(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.Task.ParameterComponent convertParameterComponent(org.hl7.fhir.dstu3.model.Task.ParameterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Task.ParameterComponent tgt = new org.hl7.fhir.r4.model.Task.ParameterComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Task.ParameterComponent convertParameterComponent(org.hl7.fhir.r4.model.Task.ParameterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Task.ParameterComponent tgt = new org.hl7.fhir.dstu3.model.Task.ParameterComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.Task.TaskOutputComponent convertTaskOutputComponent(org.hl7.fhir.dstu3.model.Task.TaskOutputComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.Task.TaskOutputComponent tgt = new org.hl7.fhir.r4.model.Task.TaskOutputComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.Task.TaskOutputComponent convertTaskOutputComponent(org.hl7.fhir.r4.model.Task.TaskOutputComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.Task.TaskOutputComponent tgt = new org.hl7.fhir.dstu3.model.Task.TaskOutputComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCodeableConcept(src.getType())); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestReport convertTestReport(org.hl7.fhir.dstu3.model.TestReport src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestReport tgt = new org.hl7.fhir.r4.model.TestReport(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertTestReportStatus(src.getStatus())); + if (src.hasTestScript()) + tgt.setTestScript(convertReference(src.getTestScript())); + if (src.hasResult()) + tgt.setResult(convertTestReportResult(src.getResult())); + if (src.hasScore()) + tgt.setScore(src.getScore()); + if (src.hasTester()) + tgt.setTester(src.getTester()); + if (src.hasIssued()) + tgt.setIssued(src.getIssued()); + for (org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertTestReportParticipantComponent(t)); + if (src.hasSetup()) + tgt.setSetup(convertTestReportSetupComponent(src.getSetup())); + for (org.hl7.fhir.dstu3.model.TestReport.TestReportTestComponent t : src.getTest()) + tgt.addTest(convertTestReportTestComponent(t)); + if (src.hasTeardown()) + tgt.setTeardown(convertTestReportTeardownComponent(src.getTeardown())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestReport convertTestReport(org.hl7.fhir.r4.model.TestReport src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestReport tgt = new org.hl7.fhir.dstu3.model.TestReport(); + copyDomainResource(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasStatus()) + tgt.setStatus(convertTestReportStatus(src.getStatus())); + if (src.hasTestScript()) + tgt.setTestScript(convertReference(src.getTestScript())); + if (src.hasResult()) + tgt.setResult(convertTestReportResult(src.getResult())); + if (src.hasScore()) + tgt.setScore(src.getScore()); + if (src.hasTester()) + tgt.setTester(src.getTester()); + if (src.hasIssued()) + tgt.setIssued(src.getIssued()); + for (org.hl7.fhir.r4.model.TestReport.TestReportParticipantComponent t : src.getParticipant()) + tgt.addParticipant(convertTestReportParticipantComponent(t)); + if (src.hasSetup()) + tgt.setSetup(convertTestReportSetupComponent(src.getSetup())); + for (org.hl7.fhir.r4.model.TestReport.TestReportTestComponent t : src.getTest()) + tgt.addTest(convertTestReportTestComponent(t)); + if (src.hasTeardown()) + tgt.setTeardown(convertTestReportTeardownComponent(src.getTeardown())); + return tgt; + } + + private static org.hl7.fhir.r4.model.TestReport.TestReportStatus convertTestReportStatus(org.hl7.fhir.dstu3.model.TestReport.TestReportStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPLETED: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.COMPLETED; + case INPROGRESS: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.INPROGRESS; + case WAITING: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.WAITING; + case STOPPED: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.STOPPED; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.TestReport.TestReportStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.TestReport.TestReportStatus convertTestReportStatus(org.hl7.fhir.r4.model.TestReport.TestReportStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case COMPLETED: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.COMPLETED; + case INPROGRESS: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.INPROGRESS; + case WAITING: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.WAITING; + case STOPPED: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.STOPPED; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.TestReport.TestReportStatus.NULL; + } +} + + private static org.hl7.fhir.r4.model.TestReport.TestReportResult convertTestReportResult(org.hl7.fhir.dstu3.model.TestReport.TestReportResult src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PASS: return org.hl7.fhir.r4.model.TestReport.TestReportResult.PASS; + case FAIL: return org.hl7.fhir.r4.model.TestReport.TestReportResult.FAIL; + case PENDING: return org.hl7.fhir.r4.model.TestReport.TestReportResult.PENDING; + default: return org.hl7.fhir.r4.model.TestReport.TestReportResult.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.TestReport.TestReportResult convertTestReportResult(org.hl7.fhir.r4.model.TestReport.TestReportResult src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PASS: return org.hl7.fhir.dstu3.model.TestReport.TestReportResult.PASS; + case FAIL: return org.hl7.fhir.dstu3.model.TestReport.TestReportResult.FAIL; + case PENDING: return org.hl7.fhir.dstu3.model.TestReport.TestReportResult.PENDING; + default: return org.hl7.fhir.dstu3.model.TestReport.TestReportResult.NULL; + } +} + + public static org.hl7.fhir.r4.model.TestReport.TestReportParticipantComponent convertTestReportParticipantComponent(org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestReport.TestReportParticipantComponent tgt = new org.hl7.fhir.r4.model.TestReport.TestReportParticipantComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertTestReportParticipantType(src.getType())); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantComponent convertTestReportParticipantComponent(org.hl7.fhir.r4.model.TestReport.TestReportParticipantComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertTestReportParticipantType(src.getType())); + if (src.hasUri()) + tgt.setUri(src.getUri()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + return tgt; + } + + private static org.hl7.fhir.r4.model.TestReport.TestReportParticipantType convertTestReportParticipantType(org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TESTENGINE: return org.hl7.fhir.r4.model.TestReport.TestReportParticipantType.TESTENGINE; + case CLIENT: return org.hl7.fhir.r4.model.TestReport.TestReportParticipantType.CLIENT; + case SERVER: return org.hl7.fhir.r4.model.TestReport.TestReportParticipantType.SERVER; + default: return org.hl7.fhir.r4.model.TestReport.TestReportParticipantType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType convertTestReportParticipantType(org.hl7.fhir.r4.model.TestReport.TestReportParticipantType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case TESTENGINE: return org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType.TESTENGINE; + case CLIENT: return org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType.CLIENT; + case SERVER: return org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType.SERVER; + default: return org.hl7.fhir.dstu3.model.TestReport.TestReportParticipantType.NULL; + } +} + + public static org.hl7.fhir.r4.model.TestReport.TestReportSetupComponent convertTestReportSetupComponent(org.hl7.fhir.dstu3.model.TestReport.TestReportSetupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestReport.TestReportSetupComponent tgt = new org.hl7.fhir.r4.model.TestReport.TestReportSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestReport.SetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestReport.TestReportSetupComponent convertTestReportSetupComponent(org.hl7.fhir.r4.model.TestReport.TestReportSetupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestReport.TestReportSetupComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TestReportSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestReport.SetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestReport.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu3.model.TestReport.SetupActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestReport.SetupActionComponent tgt = new org.hl7.fhir.r4.model.TestReport.SetupActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + if (src.hasAssert()) + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestReport.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.r4.model.TestReport.SetupActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestReport.SetupActionComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.SetupActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + if (src.hasAssert()) + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestReport.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu3.model.TestReport.SetupActionOperationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestReport.SetupActionOperationComponent tgt = new org.hl7.fhir.r4.model.TestReport.SetupActionOperationComponent(); + copyElement(src, tgt); + if (src.hasResult()) + tgt.setResult(convertTestReportActionResult(src.getResult())); + if (src.hasMessage()) + tgt.setMessage(src.getMessage()); + if (src.hasDetail()) + tgt.setDetail(src.getDetail()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestReport.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.r4.model.TestReport.SetupActionOperationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestReport.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.SetupActionOperationComponent(); + copyElement(src, tgt); + if (src.hasResult()) + tgt.setResult(convertTestReportActionResult(src.getResult())); + if (src.hasMessage()) + tgt.setMessage(src.getMessage()); + if (src.hasDetail()) + tgt.setDetail(src.getDetail()); + return tgt; + } + + private static org.hl7.fhir.r4.model.TestReport.TestReportActionResult convertTestReportActionResult(org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PASS: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.PASS; + case SKIP: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.SKIP; + case FAIL: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.FAIL; + case WARNING: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.WARNING; + case ERROR: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.ERROR; + default: return org.hl7.fhir.r4.model.TestReport.TestReportActionResult.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult convertTestReportActionResult(org.hl7.fhir.r4.model.TestReport.TestReportActionResult src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case PASS: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.PASS; + case SKIP: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.SKIP; + case FAIL: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.FAIL; + case WARNING: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.WARNING; + case ERROR: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.ERROR; + default: return org.hl7.fhir.dstu3.model.TestReport.TestReportActionResult.NULL; + } +} + + public static org.hl7.fhir.r4.model.TestReport.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu3.model.TestReport.SetupActionAssertComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestReport.SetupActionAssertComponent tgt = new org.hl7.fhir.r4.model.TestReport.SetupActionAssertComponent(); + copyElement(src, tgt); + if (src.hasResult()) + tgt.setResult(convertTestReportActionResult(src.getResult())); + if (src.hasMessage()) + tgt.setMessage(src.getMessage()); + if (src.hasDetail()) + tgt.setDetail(src.getDetail()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestReport.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.r4.model.TestReport.SetupActionAssertComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestReport.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.SetupActionAssertComponent(); + copyElement(src, tgt); + if (src.hasResult()) + tgt.setResult(convertTestReportActionResult(src.getResult())); + if (src.hasMessage()) + tgt.setMessage(src.getMessage()); + if (src.hasDetail()) + tgt.setDetail(src.getDetail()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestReport.TestReportTestComponent convertTestReportTestComponent(org.hl7.fhir.dstu3.model.TestReport.TestReportTestComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestReport.TestReportTestComponent tgt = new org.hl7.fhir.r4.model.TestReport.TestReportTestComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.TestReport.TestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestReport.TestReportTestComponent convertTestReportTestComponent(org.hl7.fhir.r4.model.TestReport.TestReportTestComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestReport.TestReportTestComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TestReportTestComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.TestReport.TestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestReport.TestActionComponent convertTestActionComponent(org.hl7.fhir.dstu3.model.TestReport.TestActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestReport.TestActionComponent tgt = new org.hl7.fhir.r4.model.TestReport.TestActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + if (src.hasAssert()) + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestReport.TestActionComponent convertTestActionComponent(org.hl7.fhir.r4.model.TestReport.TestActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestReport.TestActionComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TestActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + if (src.hasAssert()) + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestReport.TestReportTeardownComponent convertTestReportTeardownComponent(org.hl7.fhir.dstu3.model.TestReport.TestReportTeardownComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestReport.TestReportTeardownComponent tgt = new org.hl7.fhir.r4.model.TestReport.TestReportTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestReport.TeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestReport.TestReportTeardownComponent convertTestReportTeardownComponent(org.hl7.fhir.r4.model.TestReport.TestReportTeardownComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestReport.TestReportTeardownComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TestReportTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestReport.TeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestReport.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu3.model.TestReport.TeardownActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestReport.TeardownActionComponent tgt = new org.hl7.fhir.r4.model.TestReport.TeardownActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestReport.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.r4.model.TestReport.TeardownActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestReport.TeardownActionComponent tgt = new org.hl7.fhir.dstu3.model.TestReport.TeardownActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript convertTestScript(org.hl7.fhir.dstu3.model.TestScript src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript tgt = new org.hl7.fhir.r4.model.TestScript(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) + tgt.addOrigin(convertTestScriptOriginComponent(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) + tgt.addDestination(convertTestScriptDestinationComponent(t)); + if (src.hasMetadata()) + tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) + tgt.addFixture(convertTestScriptFixtureComponent(t)); + for (org.hl7.fhir.dstu3.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent t : src.getVariable()) + tgt.addVariable(convertTestScriptVariableComponent(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent t : src.getRule()) + tgt.addRule(convertTestScriptRuleComponent(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) + tgt.addRuleset(convertTestScriptRulesetComponent(t)); + if (src.hasSetup()) + tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent t : src.getTest()) + tgt.addTest(convertTestScriptTestComponent(t)); + if (src.hasTeardown()) + tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript convertTestScript(org.hl7.fhir.r4.model.TestScript src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript tgt = new org.hl7.fhir.dstu3.model.TestScript(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasIdentifier()) + tgt.setIdentifier(convertIdentifier(src.getIdentifier())); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + for (org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent t : src.getOrigin()) + tgt.addOrigin(convertTestScriptOriginComponent(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent t : src.getDestination()) + tgt.addDestination(convertTestScriptDestinationComponent(t)); + if (src.hasMetadata()) + tgt.setMetadata(convertTestScriptMetadataComponent(src.getMetadata())); + for (org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent t : src.getFixture()) + tgt.addFixture(convertTestScriptFixtureComponent(t)); + for (org.hl7.fhir.r4.model.Reference t : src.getProfile()) + tgt.addProfile(convertReference(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent t : src.getVariable()) + tgt.addVariable(convertTestScriptVariableComponent(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent t : src.getRule()) + tgt.addRule(convertTestScriptRuleComponent(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent t : src.getRuleset()) + tgt.addRuleset(convertTestScriptRulesetComponent(t)); + if (src.hasSetup()) + tgt.setSetup(convertTestScriptSetupComponent(src.getSetup())); + for (org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent t : src.getTest()) + tgt.addTest(convertTestScriptTestComponent(t)); + if (src.hasTeardown()) + tgt.setTeardown(convertTestScriptTeardownComponent(src.getTeardown())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent(); + copyElement(src, tgt); + if (src.hasIndex()) + tgt.setIndex(src.getIndex()); + if (src.hasProfile()) + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent convertTestScriptOriginComponent(org.hl7.fhir.r4.model.TestScript.TestScriptOriginComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptOriginComponent(); + copyElement(src, tgt); + if (src.hasIndex()) + tgt.setIndex(src.getIndex()); + if (src.hasProfile()) + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent(); + copyElement(src, tgt); + if (src.hasIndex()) + tgt.setIndex(src.getIndex()); + if (src.hasProfile()) + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent convertTestScriptDestinationComponent(org.hl7.fhir.r4.model.TestScript.TestScriptDestinationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptDestinationComponent(); + copyElement(src, tgt); + if (src.hasIndex()) + tgt.setIndex(src.getIndex()); + if (src.hasProfile()) + tgt.setProfile(convertCoding(src.getProfile())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) + tgt.addLink(convertTestScriptMetadataLinkComponent(t)); + for (org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) + tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent convertTestScriptMetadataComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent t : src.getLink()) + tgt.addLink(convertTestScriptMetadataLinkComponent(t)); + for (org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent t : src.getCapability()) + tgt.addCapability(convertTestScriptMetadataCapabilityComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent(); + copyElement(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent convertTestScriptMetadataLinkComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataLinkComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataLinkComponent(); + copyElement(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent(); + copyElement(src, tgt); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasValidated()) + tgt.setValidated(src.getValidated()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.IntegerType t : src.getOrigin()) + tgt.addOrigin(t.getValue()); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + for (org.hl7.fhir.dstu3.model.UriType t : src.getLink()) + tgt.addLink(t.getValue()); + if (src.hasCapabilities()) + tgt.setCapabilities(convertReference(src.getCapabilities())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent convertTestScriptMetadataCapabilityComponent(org.hl7.fhir.r4.model.TestScript.TestScriptMetadataCapabilityComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptMetadataCapabilityComponent(); + copyElement(src, tgt); + if (src.hasRequired()) + tgt.setRequired(src.getRequired()); + if (src.hasValidated()) + tgt.setValidated(src.getValidated()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.IntegerType t : src.getOrigin()) + tgt.addOrigin(t.getValue()); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + for (org.hl7.fhir.r4.model.UriType t : src.getLink()) + tgt.addLink(t.getValue()); + if (src.hasCapabilities()) + tgt.setCapabilities(convertReference(src.getCapabilities())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent(); + copyElement(src, tgt); + if (src.hasAutocreate()) + tgt.setAutocreate(src.getAutocreate()); + if (src.hasAutodelete()) + tgt.setAutodelete(src.getAutodelete()); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent convertTestScriptFixtureComponent(org.hl7.fhir.r4.model.TestScript.TestScriptFixtureComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptFixtureComponent(); + copyElement(src, tgt); + if (src.hasAutocreate()) + tgt.setAutocreate(src.getAutocreate()); + if (src.hasAutodelete()) + tgt.setAutodelete(src.getAutodelete()); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDefaultValue()) + tgt.setDefaultValue(src.getDefaultValue()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasHint()) + tgt.setHint(src.getHint()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent convertTestScriptVariableComponent(org.hl7.fhir.r4.model.TestScript.TestScriptVariableComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptVariableComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDefaultValue()) + tgt.setDefaultValue(src.getDefaultValue()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasHint()) + tgt.setHint(src.getHint()); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent(); + copyElement(src, tgt); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent t : src.getParam()) + tgt.addParam(convertRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent convertTestScriptRuleComponent(org.hl7.fhir.r4.model.TestScript.TestScriptRuleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptRuleComponent(); + copyElement(src, tgt); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.r4.model.TestScript.RuleParamComponent t : src.getParam()) + tgt.addParam(convertRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.RuleParamComponent convertRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.RuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.RuleParamComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent convertRuleParamComponent(org.hl7.fhir.r4.model.TestScript.RuleParamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RuleParamComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent(); + copyElement(src, tgt); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent t : src.getRule()) + tgt.addRule(convertRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent convertTestScriptRulesetComponent(org.hl7.fhir.r4.model.TestScript.TestScriptRulesetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptRulesetComponent(); + copyElement(src, tgt); + if (src.hasResource()) + tgt.setResource(convertReference(src.getResource())); + for (org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent t : src.getRule()) + tgt.addRule(convertRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent convertRulesetRuleComponent(org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent(); + copyElement(src, tgt); + if (src.hasRuleId()) + tgt.setRuleId(src.getRuleId()); + for (org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent convertRulesetRuleComponent(org.hl7.fhir.r4.model.TestScript.RulesetRuleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RulesetRuleComponent(); + copyElement(src, tgt); + if (src.hasRuleId()) + tgt.setRuleId(src.getRuleId()); + for (org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent convertRulesetRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent convertRulesetRuleParamComponent(org.hl7.fhir.r4.model.TestScript.RulesetRuleParamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.RulesetRuleParamComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent convertTestScriptSetupComponent(org.hl7.fhir.r4.model.TestScript.TestScriptSetupComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptSetupComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.SetupActionComponent t : src.getAction()) + tgt.addAction(convertSetupActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + if (src.hasAssert()) + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent convertSetupActionComponent(org.hl7.fhir.r4.model.TestScript.SetupActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + if (src.hasAssert()) + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + if (src.hasResource()) + tgt.setResource(src.getResource()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAccept()) + tgt.setAccept(convertContentType(src.getAccept())); + if (src.hasContentType()) + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + if (src.hasEncodeRequestUrl()) + tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); + if (src.hasOrigin()) + tgt.setOrigin(src.getOrigin()); + if (src.hasParams()) + tgt.setParams(src.getParams()); + for (org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) + tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); + if (src.hasRequestId()) + tgt.setRequestId(src.getRequestId()); + if (src.hasResponseId()) + tgt.setResponseId(src.getResponseId()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasTargetId()) + tgt.setTargetId(src.getTargetId()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent convertSetupActionOperationComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationComponent(); + copyElement(src, tgt); + if (src.hasType()) + tgt.setType(convertCoding(src.getType())); + if (src.hasResource()) + tgt.setResource(src.getResource()); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasAccept()) + tgt.setAccept(convertContentType(src.getAccept())); + if (src.hasContentType()) + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasDestination()) + tgt.setDestination(src.getDestination()); + if (src.hasEncodeRequestUrl()) + tgt.setEncodeRequestUrl(src.getEncodeRequestUrl()); + if (src.hasOrigin()) + tgt.setOrigin(src.getOrigin()); + if (src.hasParams()) + tgt.setParams(src.getParams()); + for (org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent t : src.getRequestHeader()) + tgt.addRequestHeader(convertSetupActionOperationRequestHeaderComponent(t)); + if (src.hasRequestId()) + tgt.setRequestId(src.getRequestId()); + if (src.hasResponseId()) + tgt.setResponseId(src.getResponseId()); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasTargetId()) + tgt.setTargetId(src.getTargetId()); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + return tgt; + } + + private static org.hl7.fhir.r4.model.TestScript.ContentType convertContentType(org.hl7.fhir.dstu3.model.TestScript.ContentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XML: return org.hl7.fhir.r4.model.TestScript.ContentType.XML; + case JSON: return org.hl7.fhir.r4.model.TestScript.ContentType.JSON; + case TTL: return org.hl7.fhir.r4.model.TestScript.ContentType.TTL; + case NONE: return org.hl7.fhir.r4.model.TestScript.ContentType.NONE; + default: return org.hl7.fhir.r4.model.TestScript.ContentType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.TestScript.ContentType convertContentType(org.hl7.fhir.r4.model.TestScript.ContentType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case XML: return org.hl7.fhir.dstu3.model.TestScript.ContentType.XML; + case JSON: return org.hl7.fhir.dstu3.model.TestScript.ContentType.JSON; + case TTL: return org.hl7.fhir.dstu3.model.TestScript.ContentType.TTL; + case NONE: return org.hl7.fhir.dstu3.model.TestScript.ContentType.NONE; + default: return org.hl7.fhir.dstu3.model.TestScript.ContentType.NULL; + } +} + + public static org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent(); + copyElement(src, tgt); + if (src.hasField()) + tgt.setField(src.getField()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent convertSetupActionOperationRequestHeaderComponent(org.hl7.fhir.r4.model.TestScript.SetupActionOperationRequestHeaderComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionOperationRequestHeaderComponent(); + copyElement(src, tgt); + if (src.hasField()) + tgt.setField(src.getField()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasDirection()) + tgt.setDirection(convertAssertionDirectionType(src.getDirection())); + if (src.hasCompareToSourceId()) + tgt.setCompareToSourceId(src.getCompareToSourceId()); + if (src.hasCompareToSourceExpression()) + tgt.setCompareToSourceExpression(src.getCompareToSourceExpression()); + if (src.hasCompareToSourcePath()) + tgt.setCompareToSourcePath(src.getCompareToSourcePath()); + if (src.hasContentType()) + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasMinimumId()) + tgt.setMinimumId(src.getMinimumId()); + if (src.hasNavigationLinks()) + tgt.setNavigationLinks(src.getNavigationLinks()); + if (src.hasOperator()) + tgt.setOperator(convertAssertionOperatorType(src.getOperator())); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasRequestMethod()) + tgt.setRequestMethod(convertTestScriptRequestMethodCode(src.getRequestMethod())); + if (src.hasRequestURL()) + tgt.setRequestURL(src.getRequestURL()); + if (src.hasResource()) + tgt.setResource(src.getResource()); + if (src.hasResponse()) + tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); + if (src.hasResponseCode()) + tgt.setResponseCode(src.getResponseCode()); + if (src.hasRule()) + tgt.setRule(convertActionAssertRuleComponent(src.getRule())); + if (src.hasRuleset()) + tgt.setRuleset(convertActionAssertRulesetComponent(src.getRuleset())); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasValidateProfileId()) + tgt.setValidateProfileId(src.getValidateProfileId()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasWarningOnly()) + tgt.setWarningOnly(src.getWarningOnly()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent convertSetupActionAssertComponent(org.hl7.fhir.r4.model.TestScript.SetupActionAssertComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.SetupActionAssertComponent(); + copyElement(src, tgt); + if (src.hasLabel()) + tgt.setLabel(src.getLabel()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + if (src.hasDirection()) + tgt.setDirection(convertAssertionDirectionType(src.getDirection())); + if (src.hasCompareToSourceId()) + tgt.setCompareToSourceId(src.getCompareToSourceId()); + if (src.hasCompareToSourceExpression()) + tgt.setCompareToSourceExpression(src.getCompareToSourceExpression()); + if (src.hasCompareToSourcePath()) + tgt.setCompareToSourcePath(src.getCompareToSourcePath()); + if (src.hasContentType()) + tgt.setContentType(convertContentType(src.getContentType())); + if (src.hasExpression()) + tgt.setExpression(src.getExpression()); + if (src.hasHeaderField()) + tgt.setHeaderField(src.getHeaderField()); + if (src.hasMinimumId()) + tgt.setMinimumId(src.getMinimumId()); + if (src.hasNavigationLinks()) + tgt.setNavigationLinks(src.getNavigationLinks()); + if (src.hasOperator()) + tgt.setOperator(convertAssertionOperatorType(src.getOperator())); + if (src.hasPath()) + tgt.setPath(src.getPath()); + if (src.hasRequestMethod()) + tgt.setRequestMethod(convertTestScriptRequestMethodCode(src.getRequestMethod())); + if (src.hasRequestURL()) + tgt.setRequestURL(src.getRequestURL()); + if (src.hasResource()) + tgt.setResource(src.getResource()); + if (src.hasResponse()) + tgt.setResponse(convertAssertionResponseTypes(src.getResponse())); + if (src.hasResponseCode()) + tgt.setResponseCode(src.getResponseCode()); + if (src.hasRule()) + tgt.setRule(convertActionAssertRuleComponent(src.getRule())); + if (src.hasRuleset()) + tgt.setRuleset(convertActionAssertRulesetComponent(src.getRuleset())); + if (src.hasSourceId()) + tgt.setSourceId(src.getSourceId()); + if (src.hasValidateProfileId()) + tgt.setValidateProfileId(src.getValidateProfileId()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + if (src.hasWarningOnly()) + tgt.setWarningOnly(src.getWarningOnly()); + return tgt; + } + + private static org.hl7.fhir.r4.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESPONSE: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.RESPONSE; + case REQUEST: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.REQUEST; + default: return org.hl7.fhir.r4.model.TestScript.AssertionDirectionType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType convertAssertionDirectionType(org.hl7.fhir.r4.model.TestScript.AssertionDirectionType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RESPONSE: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.RESPONSE; + case REQUEST: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.REQUEST; + default: return org.hl7.fhir.dstu3.model.TestScript.AssertionDirectionType.NULL; + } +} + + private static org.hl7.fhir.r4.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EQUALS; + case NOTEQUALS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEQUALS; + case IN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.IN; + case NOTIN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTIN; + case GREATERTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.GREATERTHAN; + case LESSTHAN: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.LESSTHAN; + case EMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EMPTY; + case NOTEMPTY: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTEMPTY; + case CONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.CONTAINS; + case NOTCONTAINS: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NOTCONTAINS; + case EVAL: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.EVAL; + default: return org.hl7.fhir.r4.model.TestScript.AssertionOperatorType.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType convertAssertionOperatorType(org.hl7.fhir.r4.model.TestScript.AssertionOperatorType src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EQUALS; + case NOTEQUALS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEQUALS; + case IN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.IN; + case NOTIN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTIN; + case GREATERTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.GREATERTHAN; + case LESSTHAN: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.LESSTHAN; + case EMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EMPTY; + case NOTEMPTY: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTEMPTY; + case CONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.CONTAINS; + case NOTCONTAINS: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NOTCONTAINS; + case EVAL: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.EVAL; + default: return org.hl7.fhir.dstu3.model.TestScript.AssertionOperatorType.NULL; + } +} + + private static org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode convertTestScriptRequestMethodCode(org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DELETE: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.DELETE; + case GET: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.GET; + case OPTIONS: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.OPTIONS; + case PATCH: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.PATCH; + case POST: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.POST; + case PUT: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.PUT; + default: return org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode convertTestScriptRequestMethodCode(org.hl7.fhir.r4.model.TestScript.TestScriptRequestMethodCode src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case DELETE: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.DELETE; + case GET: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.GET; + case OPTIONS: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.OPTIONS; + case PATCH: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.PATCH; + case POST: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.POST; + case PUT: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.PUT; + default: return org.hl7.fhir.dstu3.model.TestScript.TestScriptRequestMethodCode.NULL; + } +} + + private static org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OKAY: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.OKAY; + case CREATED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CREATED; + case NOCONTENT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOCONTENT; + case NOTMODIFIED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTMODIFIED; + case BAD: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.BAD; + case FORBIDDEN: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.FORBIDDEN; + case NOTFOUND: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NOTFOUND; + case METHODNOTALLOWED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; + case CONFLICT: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.CONFLICT; + case GONE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.GONE; + case PRECONDITIONFAILED: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; + case UNPROCESSABLE: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; + default: return org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes convertAssertionResponseTypes(org.hl7.fhir.r4.model.TestScript.AssertionResponseTypes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case OKAY: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.OKAY; + case CREATED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CREATED; + case NOCONTENT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOCONTENT; + case NOTMODIFIED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTMODIFIED; + case BAD: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.BAD; + case FORBIDDEN: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.FORBIDDEN; + case NOTFOUND: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NOTFOUND; + case METHODNOTALLOWED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.METHODNOTALLOWED; + case CONFLICT: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.CONFLICT; + case GONE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.GONE; + case PRECONDITIONFAILED: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.PRECONDITIONFAILED; + case UNPROCESSABLE: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.UNPROCESSABLE; + default: return org.hl7.fhir.dstu3.model.TestScript.AssertionResponseTypes.NULL; + } +} + + public static org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent convertActionAssertRuleComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent(); + copyElement(src, tgt); + if (src.hasRuleId()) + tgt.setRuleId(src.getRuleId()); + for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent t : src.getParam()) + tgt.addParam(convertActionAssertRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent convertActionAssertRuleComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRuleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleComponent(); + copyElement(src, tgt); + if (src.hasRuleId()) + tgt.setRuleId(src.getRuleId()); + for (org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent t : src.getParam()) + tgt.addParam(convertActionAssertRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent convertActionAssertRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent convertActionAssertRuleParamComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRuleParamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRuleParamComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent convertActionAssertRulesetComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent(); + copyElement(src, tgt); + if (src.hasRulesetId()) + tgt.setRulesetId(src.getRulesetId()); + for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent t : src.getRule()) + tgt.addRule(convertActionAssertRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent convertActionAssertRulesetComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetComponent(); + copyElement(src, tgt); + if (src.hasRulesetId()) + tgt.setRulesetId(src.getRulesetId()); + for (org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent t : src.getRule()) + tgt.addRule(convertActionAssertRulesetRuleComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent convertActionAssertRulesetRuleComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent(); + copyElement(src, tgt); + if (src.hasRuleId()) + tgt.setRuleId(src.getRuleId()); + for (org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertActionAssertRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent convertActionAssertRulesetRuleComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleComponent(); + copyElement(src, tgt); + if (src.hasRuleId()) + tgt.setRuleId(src.getRuleId()); + for (org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent t : src.getParam()) + tgt.addParam(convertActionAssertRulesetRuleParamComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent convertActionAssertRulesetRuleParamComponent(org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent convertActionAssertRulesetRuleParamComponent(org.hl7.fhir.r4.model.TestScript.ActionAssertRulesetRuleParamComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.ActionAssertRulesetRuleParamComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.TestScript.TestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent convertTestScriptTestComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTestComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTestComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.TestScript.TestActionComponent t : src.getAction()) + tgt.addAction(convertTestActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.dstu3.model.TestScript.TestActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + if (src.hasAssert()) + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestActionComponent convertTestActionComponent(org.hl7.fhir.r4.model.TestScript.TestActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + if (src.hasAssert()) + tgt.setAssert(convertSetupActionAssertComponent(src.getAssert())); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent convertTestScriptTeardownComponent(org.hl7.fhir.r4.model.TestScript.TestScriptTeardownComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TestScriptTeardownComponent(); + copyElement(src, tgt); + for (org.hl7.fhir.r4.model.TestScript.TeardownActionComponent t : src.getAction()) + tgt.addAction(convertTeardownActionComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.r4.model.TestScript.TeardownActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent convertTeardownActionComponent(org.hl7.fhir.r4.model.TestScript.TeardownActionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent tgt = new org.hl7.fhir.dstu3.model.TestScript.TeardownActionComponent(); + copyElement(src, tgt); + if (src.hasOperation()) + tgt.setOperation(convertSetupActionOperationComponent(src.getOperation())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet convertValueSet(org.hl7.fhir.dstu3.model.ValueSet src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ValueSet tgt = new org.hl7.fhir.r4.model.ValueSet(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.dstu3.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.dstu3.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.dstu3.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasImmutable()) + tgt.setImmutable(src.getImmutable()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasExtensible()) + tgt.setExtensible(src.getExtensible()); + if (src.hasCompose()) + tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); + if (src.hasExpansion()) + tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet convertValueSet(org.hl7.fhir.r4.model.ValueSet src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ValueSet tgt = new org.hl7.fhir.dstu3.model.ValueSet(); + copyDomainResource(src, tgt); + if (src.hasUrl()) + tgt.setUrl(src.getUrl()); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasTitle()) + tgt.setTitle(src.getTitle()); + if (src.hasStatus()) + tgt.setStatus(convertPublicationStatus(src.getStatus())); + if (src.hasExperimental()) + tgt.setExperimental(src.getExperimental()); + if (src.hasDate()) + tgt.setDate(src.getDate()); + if (src.hasPublisher()) + tgt.setPublisher(src.getPublisher()); + for (org.hl7.fhir.r4.model.ContactDetail t : src.getContact()) + tgt.addContact(convertContactDetail(t)); + if (src.hasDescription()) + tgt.setDescription(src.getDescription()); + for (org.hl7.fhir.r4.model.UsageContext t : src.getUseContext()) + tgt.addUseContext(convertUsageContext(t)); + for (org.hl7.fhir.r4.model.CodeableConcept t : src.getJurisdiction()) + tgt.addJurisdiction(convertCodeableConcept(t)); + if (src.hasImmutable()) + tgt.setImmutable(src.getImmutable()); + if (src.hasPurpose()) + tgt.setPurpose(src.getPurpose()); + if (src.hasCopyright()) + tgt.setCopyright(src.getCopyright()); + if (src.hasExtensible()) + tgt.setExtensible(src.getExtensible()); + if (src.hasCompose()) + tgt.setCompose(convertValueSetComposeComponent(src.getCompose())); + if (src.hasExpansion()) + tgt.setExpansion(convertValueSetExpansionComponent(src.getExpansion())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent(); + copyElement(src, tgt); + if (src.hasLockedDate()) + tgt.setLockedDate(src.getLockedDate()); + if (src.hasInactive()) + tgt.setInactive(src.getInactive()); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getInclude()) + tgt.addInclude(convertConceptSetComponent(t)); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent t : src.getExclude()) + tgt.addExclude(convertConceptSetComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent convertValueSetComposeComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetComposeComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetComposeComponent(); + copyElement(src, tgt); + if (src.hasLockedDate()) + tgt.setLockedDate(src.getLockedDate()); + if (src.hasInactive()) + tgt.setInactive(src.getInactive()); + for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getInclude()) + tgt.addInclude(convertConceptSetComponent(t)); + for (org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent t : src.getExclude()) + tgt.addExclude(convertConceptSetComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) + tgt.addConcept(convertConceptReferenceComponent(t)); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) + tgt.addFilter(convertConceptSetFilterComponent(t)); + for (org.hl7.fhir.dstu3.model.UriType t : src.getValueSet()) + tgt.addValueSet(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent convertConceptSetComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent t : src.getConcept()) + tgt.addConcept(convertConceptReferenceComponent(t)); + for (org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent t : src.getFilter()) + tgt.addFilter(convertConceptSetFilterComponent(t)); + for (org.hl7.fhir.r4.model.UriType t : src.getValueSet()) + tgt.addValueSet(t.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent convertConceptReferenceComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceComponent(); + copyElement(src, tgt); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasUse()) + tgt.setUse(convertCoding(src.getUse())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent convertConceptReferenceDesignationComponent(org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent(); + copyElement(src, tgt); + if (src.hasLanguage()) + tgt.setLanguage(src.getLanguage()); + if (src.hasUse()) + tgt.setUse(convertCoding(src.getUse())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent(); + copyElement(src, tgt); + if (src.hasProperty()) + tgt.setProperty(src.getProperty()); + if (src.hasOp()) + tgt.setOp(convertFilterOperator(src.getOp())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent convertConceptSetFilterComponent(org.hl7.fhir.r4.model.ValueSet.ConceptSetFilterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ConceptSetFilterComponent(); + copyElement(src, tgt); + if (src.hasProperty()) + tgt.setProperty(src.getProperty()); + if (src.hasOp()) + tgt.setOp(convertFilterOperator(src.getOp())); + if (src.hasValue()) + tgt.setValue(src.getValue()); + return tgt; + } + + private static org.hl7.fhir.r4.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.dstu3.model.ValueSet.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISA; + case DESCENDENTOF: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.DESCENDENTOF; + case ISNOTA: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.REGEX; + case IN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NOTIN; + case GENERALIZES: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.GENERALIZES; + case EXISTS: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.EXISTS; + default: return org.hl7.fhir.r4.model.ValueSet.FilterOperator.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.ValueSet.FilterOperator convertFilterOperator(org.hl7.fhir.r4.model.ValueSet.FilterOperator src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case EQUAL: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.EQUAL; + case ISA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISA; + case DESCENDENTOF: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.DESCENDENTOF; + case ISNOTA: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.ISNOTA; + case REGEX: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.REGEX; + case IN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.IN; + case NOTIN: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NOTIN; + case GENERALIZES: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.GENERALIZES; + case EXISTS: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.EXISTS; + default: return org.hl7.fhir.dstu3.model.ValueSet.FilterOperator.NULL; + } +} + + public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(src.getIdentifier()); + if (src.hasTimestamp()) + tgt.setTimestamp(src.getTimestamp()); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) + tgt.addParameter(convertValueSetExpansionParameterComponent(t)); + for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent convertValueSetExpansionComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionComponent(); + copyElement(src, tgt); + if (src.hasIdentifier()) + tgt.setIdentifier(src.getIdentifier()); + if (src.hasTimestamp()) + tgt.setTimestamp(src.getTimestamp()); + if (src.hasTotal()) + tgt.setTotal(src.getTotal()); + if (src.hasOffset()) + tgt.setOffset(src.getOffset()); + for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent t : src.getParameter()) + tgt.addParameter(convertValueSetExpansionParameterComponent(t)); + for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent convertValueSetExpansionParameterComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionParameterComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionParameterComponent(); + copyElement(src, tgt); + if (src.hasName()) + tgt.setName(src.getName()); + if (src.hasValue()) + tgt.setValue(convertType(src.getValue())); + return tgt; + } + + public static org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasAbstract()) + tgt.setAbstract(src.getAbstract()); + if (src.hasInactive()) + tgt.setInactive(src.getInactive()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.dstu3.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + for (org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent convertValueSetExpansionContainsComponent(org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent tgt = new org.hl7.fhir.dstu3.model.ValueSet.ValueSetExpansionContainsComponent(); + copyElement(src, tgt); + if (src.hasSystem()) + tgt.setSystem(src.getSystem()); + if (src.hasAbstract()) + tgt.setAbstract(src.getAbstract()); + if (src.hasInactive()) + tgt.setInactive(src.getInactive()); + if (src.hasVersion()) + tgt.setVersion(src.getVersion()); + if (src.hasCode()) + tgt.setCode(src.getCode()); + if (src.hasDisplay()) + tgt.setDisplay(src.getDisplay()); + for (org.hl7.fhir.r4.model.ValueSet.ConceptReferenceDesignationComponent t : src.getDesignation()) + tgt.addDesignation(convertConceptReferenceDesignationComponent(t)); + for (org.hl7.fhir.r4.model.ValueSet.ValueSetExpansionContainsComponent t : src.getContains()) + tgt.addContains(convertValueSetExpansionContainsComponent(t)); + return tgt; + } + + public static org.hl7.fhir.r4.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.dstu3.model.VisionPrescription src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.VisionPrescription tgt = new org.hl7.fhir.r4.model.VisionPrescription(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.dstu3.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertVisionStatus(src.getStatus())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasDateWritten()) + tgt.setDateWritten(src.getDateWritten()); + if (src.hasPrescriber()) + tgt.setPrescriber(convertReference(src.getPrescriber())); + if (src.hasReason()) + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) + tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.VisionPrescription convertVisionPrescription(org.hl7.fhir.r4.model.VisionPrescription src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.VisionPrescription tgt = new org.hl7.fhir.dstu3.model.VisionPrescription(); + copyDomainResource(src, tgt); + for (org.hl7.fhir.r4.model.Identifier t : src.getIdentifier()) + tgt.addIdentifier(convertIdentifier(t)); + if (src.hasStatus()) + tgt.setStatus(convertVisionStatus(src.getStatus())); + if (src.hasPatient()) + tgt.setPatient(convertReference(src.getPatient())); + if (src.hasEncounter()) + tgt.setEncounter(convertReference(src.getEncounter())); + if (src.hasDateWritten()) + tgt.setDateWritten(src.getDateWritten()); + if (src.hasPrescriber()) + tgt.setPrescriber(convertReference(src.getPrescriber())); + if (src.hasReason()) + tgt.setReason(convertType(src.getReason())); + for (org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent t : src.getDispense()) + tgt.addDispense(convertVisionPrescriptionDispenseComponent(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.VisionPrescription.VisionStatus convertVisionStatus(org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.r4.model.VisionPrescription.VisionStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.r4.model.VisionPrescription.VisionStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.r4.model.VisionPrescription.VisionStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.r4.model.VisionPrescription.VisionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.r4.model.VisionPrescription.VisionStatus.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus convertVisionStatus(org.hl7.fhir.r4.model.VisionPrescription.VisionStatus src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case ACTIVE: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus.ACTIVE; + case CANCELLED: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus.CANCELLED; + case DRAFT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus.DRAFT; + case ENTEREDINERROR: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus.ENTEREDINERROR; + default: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionStatus.NULL; + } +} + + public static org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent(); + copyElement(src, tgt); + if (src.hasProduct()) + tgt.setProduct(convertCodeableConcept(src.getProduct())); + if (src.hasEye()) + tgt.setEye(convertVisionEyes(src.getEye())); + if (src.hasSphere()) + tgt.setSphere(src.getSphere()); + if (src.hasCylinder()) + tgt.setCylinder(src.getCylinder()); + if (src.hasAxis()) + tgt.setAxis(src.getAxis()); + if (src.hasPrism()) + tgt.setPrism(src.getPrism()); + if (src.hasBase()) + tgt.setBase(convertVisionBase(src.getBase())); + if (src.hasAdd()) + tgt.setAdd(src.getAdd()); + if (src.hasPower()) + tgt.setPower(src.getPower()); + if (src.hasBackCurve()) + tgt.setBackCurve(src.getBackCurve()); + if (src.hasDiameter()) + tgt.setDiameter(src.getDiameter()); + if (src.hasDuration()) + tgt.setDuration(convertSimpleQuantity(src.getDuration())); + if (src.hasColor()) + tgt.setColor(src.getColor()); + if (src.hasBrand()) + tgt.setBrand(src.getBrand()); + for (org.hl7.fhir.dstu3.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + public static org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent convertVisionPrescriptionDispenseComponent(org.hl7.fhir.r4.model.VisionPrescription.VisionPrescriptionDispenseComponent src) throws FHIRException { + if (src == null) + return null; + org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent tgt = new org.hl7.fhir.dstu3.model.VisionPrescription.VisionPrescriptionDispenseComponent(); + copyElement(src, tgt); + if (src.hasProduct()) + tgt.setProduct(convertCodeableConcept(src.getProduct())); + if (src.hasEye()) + tgt.setEye(convertVisionEyes(src.getEye())); + if (src.hasSphere()) + tgt.setSphere(src.getSphere()); + if (src.hasCylinder()) + tgt.setCylinder(src.getCylinder()); + if (src.hasAxis()) + tgt.setAxis(src.getAxis()); + if (src.hasPrism()) + tgt.setPrism(src.getPrism()); + if (src.hasBase()) + tgt.setBase(convertVisionBase(src.getBase())); + if (src.hasAdd()) + tgt.setAdd(src.getAdd()); + if (src.hasPower()) + tgt.setPower(src.getPower()); + if (src.hasBackCurve()) + tgt.setBackCurve(src.getBackCurve()); + if (src.hasDiameter()) + tgt.setDiameter(src.getDiameter()); + if (src.hasDuration()) + tgt.setDuration(convertSimpleQuantity(src.getDuration())); + if (src.hasColor()) + tgt.setColor(src.getColor()); + if (src.hasBrand()) + tgt.setBrand(src.getBrand()); + for (org.hl7.fhir.r4.model.Annotation t : src.getNote()) + tgt.addNote(convertAnnotation(t)); + return tgt; + } + + private static org.hl7.fhir.r4.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RIGHT: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.RIGHT; + case LEFT: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.LEFT; + default: return org.hl7.fhir.r4.model.VisionPrescription.VisionEyes.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes convertVisionEyes(org.hl7.fhir.r4.model.VisionPrescription.VisionEyes src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case RIGHT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.RIGHT; + case LEFT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.LEFT; + default: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionEyes.NULL; + } +} + + private static org.hl7.fhir.r4.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UP: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.UP; + case DOWN: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.DOWN; + case IN: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.IN; + case OUT: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.OUT; + default: return org.hl7.fhir.r4.model.VisionPrescription.VisionBase.NULL; + } +} + + private static org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase convertVisionBase(org.hl7.fhir.r4.model.VisionPrescription.VisionBase src) throws FHIRException { + if (src == null) + return null; + switch (src) { + case UP: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.UP; + case DOWN: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.DOWN; + case IN: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.IN; + case OUT: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.OUT; + default: return org.hl7.fhir.dstu3.model.VisionPrescription.VisionBase.NULL; + } +} + + public static org.hl7.fhir.r4.model.Resource convertResource(org.hl7.fhir.dstu3.model.Resource src) throws FHIRException { + if (src == null) + return null; + if (src instanceof org.hl7.fhir.dstu3.model.Parameters) + return convertParameters((org.hl7.fhir.dstu3.model.Parameters) src); + if (src instanceof org.hl7.fhir.dstu3.model.Account) + return convertAccount((org.hl7.fhir.dstu3.model.Account) src); + if (src instanceof org.hl7.fhir.dstu3.model.ActivityDefinition) + return convertActivityDefinition((org.hl7.fhir.dstu3.model.ActivityDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.AllergyIntolerance) + return convertAllergyIntolerance((org.hl7.fhir.dstu3.model.AllergyIntolerance) src); + if (src instanceof org.hl7.fhir.dstu3.model.Appointment) + return convertAppointment((org.hl7.fhir.dstu3.model.Appointment) src); + if (src instanceof org.hl7.fhir.dstu3.model.AppointmentResponse) + return convertAppointmentResponse((org.hl7.fhir.dstu3.model.AppointmentResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.AuditEvent) + return convertAuditEvent((org.hl7.fhir.dstu3.model.AuditEvent) src); + if (src instanceof org.hl7.fhir.dstu3.model.Basic) + return convertBasic((org.hl7.fhir.dstu3.model.Basic) src); + if (src instanceof org.hl7.fhir.dstu3.model.Binary) + return convertBinary((org.hl7.fhir.dstu3.model.Binary) src); + if (src instanceof org.hl7.fhir.dstu3.model.BodySite) + return convertBodySite((org.hl7.fhir.dstu3.model.BodySite) src); + if (src instanceof org.hl7.fhir.dstu3.model.Bundle) + return convertBundle((org.hl7.fhir.dstu3.model.Bundle) src); + if (src instanceof org.hl7.fhir.dstu3.model.CapabilityStatement) + return convertCapabilityStatement((org.hl7.fhir.dstu3.model.CapabilityStatement) src); + if (src instanceof org.hl7.fhir.dstu3.model.CarePlan) + return convertCarePlan((org.hl7.fhir.dstu3.model.CarePlan) src); + if (src instanceof org.hl7.fhir.dstu3.model.CareTeam) + return convertCareTeam((org.hl7.fhir.dstu3.model.CareTeam) src); + if (src instanceof org.hl7.fhir.dstu3.model.ChargeItem) + return convertChargeItem((org.hl7.fhir.dstu3.model.ChargeItem) src); + if (src instanceof org.hl7.fhir.dstu3.model.Claim) + return convertClaim((org.hl7.fhir.dstu3.model.Claim) src); + if (src instanceof org.hl7.fhir.dstu3.model.ClaimResponse) + return convertClaimResponse((org.hl7.fhir.dstu3.model.ClaimResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.ClinicalImpression) + return convertClinicalImpression((org.hl7.fhir.dstu3.model.ClinicalImpression) src); + if (src instanceof org.hl7.fhir.dstu3.model.CodeSystem) + return convertCodeSystem((org.hl7.fhir.dstu3.model.CodeSystem) src); + if (src instanceof org.hl7.fhir.dstu3.model.Communication) + return convertCommunication((org.hl7.fhir.dstu3.model.Communication) src); + if (src instanceof org.hl7.fhir.dstu3.model.CommunicationRequest) + return convertCommunicationRequest((org.hl7.fhir.dstu3.model.CommunicationRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.CompartmentDefinition) + return convertCompartmentDefinition((org.hl7.fhir.dstu3.model.CompartmentDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.Composition) + return convertComposition((org.hl7.fhir.dstu3.model.Composition) src); + if (src instanceof org.hl7.fhir.dstu3.model.ConceptMap) + return convertConceptMap((org.hl7.fhir.dstu3.model.ConceptMap) src); + if (src instanceof org.hl7.fhir.dstu3.model.Condition) + return convertCondition((org.hl7.fhir.dstu3.model.Condition) src); + if (src instanceof org.hl7.fhir.dstu3.model.Consent) + return convertConsent((org.hl7.fhir.dstu3.model.Consent) src); + if (src instanceof org.hl7.fhir.dstu3.model.Contract) + return convertContract((org.hl7.fhir.dstu3.model.Contract) src); + if (src instanceof org.hl7.fhir.dstu3.model.Coverage) + return convertCoverage((org.hl7.fhir.dstu3.model.Coverage) src); + if (src instanceof org.hl7.fhir.dstu3.model.DataElement) + return convertDataElement((org.hl7.fhir.dstu3.model.DataElement) src); + if (src instanceof org.hl7.fhir.dstu3.model.DetectedIssue) + return convertDetectedIssue((org.hl7.fhir.dstu3.model.DetectedIssue) src); + if (src instanceof org.hl7.fhir.dstu3.model.Device) + return convertDevice((org.hl7.fhir.dstu3.model.Device) src); + if (src instanceof org.hl7.fhir.dstu3.model.DeviceComponent) + return convertDeviceComponent((org.hl7.fhir.dstu3.model.DeviceComponent) src); + if (src instanceof org.hl7.fhir.dstu3.model.DeviceMetric) + return convertDeviceMetric((org.hl7.fhir.dstu3.model.DeviceMetric) src); + if (src instanceof org.hl7.fhir.dstu3.model.DeviceRequest) + return convertDeviceRequest((org.hl7.fhir.dstu3.model.DeviceRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.DeviceUseStatement) + return convertDeviceUseStatement((org.hl7.fhir.dstu3.model.DeviceUseStatement) src); + if (src instanceof org.hl7.fhir.dstu3.model.DiagnosticReport) + return convertDiagnosticReport((org.hl7.fhir.dstu3.model.DiagnosticReport) src); + if (src instanceof org.hl7.fhir.dstu3.model.DocumentManifest) + return convertDocumentManifest((org.hl7.fhir.dstu3.model.DocumentManifest) src); + if (src instanceof org.hl7.fhir.dstu3.model.DocumentReference) + return convertDocumentReference((org.hl7.fhir.dstu3.model.DocumentReference) src); + if (src instanceof org.hl7.fhir.dstu3.model.EligibilityRequest) + return convertEligibilityRequest((org.hl7.fhir.dstu3.model.EligibilityRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.EligibilityResponse) + return convertEligibilityResponse((org.hl7.fhir.dstu3.model.EligibilityResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.Encounter) + return convertEncounter((org.hl7.fhir.dstu3.model.Encounter) src); + if (src instanceof org.hl7.fhir.dstu3.model.Endpoint) + return convertEndpoint((org.hl7.fhir.dstu3.model.Endpoint) src); + if (src instanceof org.hl7.fhir.dstu3.model.EnrollmentRequest) + return convertEnrollmentRequest((org.hl7.fhir.dstu3.model.EnrollmentRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.EnrollmentResponse) + return convertEnrollmentResponse((org.hl7.fhir.dstu3.model.EnrollmentResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.EpisodeOfCare) + return convertEpisodeOfCare((org.hl7.fhir.dstu3.model.EpisodeOfCare) src); + if (src instanceof org.hl7.fhir.dstu3.model.ExpansionProfile) + return convertExpansionProfile((org.hl7.fhir.dstu3.model.ExpansionProfile) src); + if (src instanceof org.hl7.fhir.dstu3.model.ExplanationOfBenefit) + return convertExplanationOfBenefit((org.hl7.fhir.dstu3.model.ExplanationOfBenefit) src); + if (src instanceof org.hl7.fhir.dstu3.model.FamilyMemberHistory) + return convertFamilyMemberHistory((org.hl7.fhir.dstu3.model.FamilyMemberHistory) src); + if (src instanceof org.hl7.fhir.dstu3.model.Flag) + return convertFlag((org.hl7.fhir.dstu3.model.Flag) src); + if (src instanceof org.hl7.fhir.dstu3.model.Goal) + return convertGoal((org.hl7.fhir.dstu3.model.Goal) src); + if (src instanceof org.hl7.fhir.dstu3.model.GraphDefinition) + return convertGraphDefinition((org.hl7.fhir.dstu3.model.GraphDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.Group) + return convertGroup((org.hl7.fhir.dstu3.model.Group) src); + if (src instanceof org.hl7.fhir.dstu3.model.GuidanceResponse) + return convertGuidanceResponse((org.hl7.fhir.dstu3.model.GuidanceResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.HealthcareService) + return convertHealthcareService((org.hl7.fhir.dstu3.model.HealthcareService) src); + if (src instanceof org.hl7.fhir.dstu3.model.ImagingManifest) + return convertImagingManifest((org.hl7.fhir.dstu3.model.ImagingManifest) src); + if (src instanceof org.hl7.fhir.dstu3.model.ImagingStudy) + return convertImagingStudy((org.hl7.fhir.dstu3.model.ImagingStudy) src); + if (src instanceof org.hl7.fhir.dstu3.model.Immunization) + return convertImmunization((org.hl7.fhir.dstu3.model.Immunization) src); + if (src instanceof org.hl7.fhir.dstu3.model.ImmunizationRecommendation) + return convertImmunizationRecommendation((org.hl7.fhir.dstu3.model.ImmunizationRecommendation) src); + if (src instanceof org.hl7.fhir.dstu3.model.ImplementationGuide) + return convertImplementationGuide((org.hl7.fhir.dstu3.model.ImplementationGuide) src); + if (src instanceof org.hl7.fhir.dstu3.model.Library) + return convertLibrary((org.hl7.fhir.dstu3.model.Library) src); + if (src instanceof org.hl7.fhir.dstu3.model.Linkage) + return convertLinkage((org.hl7.fhir.dstu3.model.Linkage) src); + if (src instanceof org.hl7.fhir.dstu3.model.ListResource) + return convertList((org.hl7.fhir.dstu3.model.ListResource) src); + if (src instanceof org.hl7.fhir.dstu3.model.Location) + return convertLocation((org.hl7.fhir.dstu3.model.Location) src); + if (src instanceof org.hl7.fhir.dstu3.model.Measure) + return convertMeasure((org.hl7.fhir.dstu3.model.Measure) src); + if (src instanceof org.hl7.fhir.dstu3.model.MeasureReport) + return convertMeasureReport((org.hl7.fhir.dstu3.model.MeasureReport) src); + if (src instanceof org.hl7.fhir.dstu3.model.Media) + return convertMedia((org.hl7.fhir.dstu3.model.Media) src); + if (src instanceof org.hl7.fhir.dstu3.model.Medication) + return convertMedication((org.hl7.fhir.dstu3.model.Medication) src); + if (src instanceof org.hl7.fhir.dstu3.model.MedicationAdministration) + return convertMedicationAdministration((org.hl7.fhir.dstu3.model.MedicationAdministration) src); + if (src instanceof org.hl7.fhir.dstu3.model.MedicationDispense) + return convertMedicationDispense((org.hl7.fhir.dstu3.model.MedicationDispense) src); + if (src instanceof org.hl7.fhir.dstu3.model.MedicationRequest) + return convertMedicationRequest((org.hl7.fhir.dstu3.model.MedicationRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.MedicationStatement) + return convertMedicationStatement((org.hl7.fhir.dstu3.model.MedicationStatement) src); + if (src instanceof org.hl7.fhir.dstu3.model.MessageDefinition) + return convertMessageDefinition((org.hl7.fhir.dstu3.model.MessageDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.MessageHeader) + return convertMessageHeader((org.hl7.fhir.dstu3.model.MessageHeader) src); + if (src instanceof org.hl7.fhir.dstu3.model.NamingSystem) + return convertNamingSystem((org.hl7.fhir.dstu3.model.NamingSystem) src); + if (src instanceof org.hl7.fhir.dstu3.model.NutritionOrder) + return convertNutritionOrder((org.hl7.fhir.dstu3.model.NutritionOrder) src); + if (src instanceof org.hl7.fhir.dstu3.model.Observation) + return convertObservation((org.hl7.fhir.dstu3.model.Observation) src); + if (src instanceof org.hl7.fhir.dstu3.model.OperationDefinition) + return convertOperationDefinition((org.hl7.fhir.dstu3.model.OperationDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.OperationOutcome) + return convertOperationOutcome((org.hl7.fhir.dstu3.model.OperationOutcome) src); + if (src instanceof org.hl7.fhir.dstu3.model.Organization) + return convertOrganization((org.hl7.fhir.dstu3.model.Organization) src); + if (src instanceof org.hl7.fhir.dstu3.model.Patient) + return convertPatient((org.hl7.fhir.dstu3.model.Patient) src); + if (src instanceof org.hl7.fhir.dstu3.model.PaymentNotice) + return convertPaymentNotice((org.hl7.fhir.dstu3.model.PaymentNotice) src); + if (src instanceof org.hl7.fhir.dstu3.model.PaymentReconciliation) + return convertPaymentReconciliation((org.hl7.fhir.dstu3.model.PaymentReconciliation) src); + if (src instanceof org.hl7.fhir.dstu3.model.Person) + return convertPerson((org.hl7.fhir.dstu3.model.Person) src); + if (src instanceof org.hl7.fhir.dstu3.model.PlanDefinition) + return convertPlanDefinition((org.hl7.fhir.dstu3.model.PlanDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.Practitioner) + return convertPractitioner((org.hl7.fhir.dstu3.model.Practitioner) src); + if (src instanceof org.hl7.fhir.dstu3.model.PractitionerRole) + return convertPractitionerRole((org.hl7.fhir.dstu3.model.PractitionerRole) src); + if (src instanceof org.hl7.fhir.dstu3.model.Procedure) + return convertProcedure((org.hl7.fhir.dstu3.model.Procedure) src); + if (src instanceof org.hl7.fhir.dstu3.model.ProcedureRequest) + return convertProcedureRequest((org.hl7.fhir.dstu3.model.ProcedureRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.ProcessRequest) + return convertProcessRequest((org.hl7.fhir.dstu3.model.ProcessRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.ProcessResponse) + return convertProcessResponse((org.hl7.fhir.dstu3.model.ProcessResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.Provenance) + return convertProvenance((org.hl7.fhir.dstu3.model.Provenance) src); + if (src instanceof org.hl7.fhir.dstu3.model.Questionnaire) + return convertQuestionnaire((org.hl7.fhir.dstu3.model.Questionnaire) src); + if (src instanceof org.hl7.fhir.dstu3.model.QuestionnaireResponse) + return convertQuestionnaireResponse((org.hl7.fhir.dstu3.model.QuestionnaireResponse) src); + if (src instanceof org.hl7.fhir.dstu3.model.ReferralRequest) + return convertReferralRequest((org.hl7.fhir.dstu3.model.ReferralRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.RelatedPerson) + return convertRelatedPerson((org.hl7.fhir.dstu3.model.RelatedPerson) src); + if (src instanceof org.hl7.fhir.dstu3.model.RequestGroup) + return convertRequestGroup((org.hl7.fhir.dstu3.model.RequestGroup) src); + if (src instanceof org.hl7.fhir.dstu3.model.ResearchStudy) + return convertResearchStudy((org.hl7.fhir.dstu3.model.ResearchStudy) src); + if (src instanceof org.hl7.fhir.dstu3.model.ResearchSubject) + return convertResearchSubject((org.hl7.fhir.dstu3.model.ResearchSubject) src); + if (src instanceof org.hl7.fhir.dstu3.model.RiskAssessment) + return convertRiskAssessment((org.hl7.fhir.dstu3.model.RiskAssessment) src); + if (src instanceof org.hl7.fhir.dstu3.model.Schedule) + return convertSchedule((org.hl7.fhir.dstu3.model.Schedule) src); + if (src instanceof org.hl7.fhir.dstu3.model.SearchParameter) + return convertSearchParameter((org.hl7.fhir.dstu3.model.SearchParameter) src); + if (src instanceof org.hl7.fhir.dstu3.model.Sequence) + return convertSequence((org.hl7.fhir.dstu3.model.Sequence) src); + if (src instanceof org.hl7.fhir.dstu3.model.ServiceDefinition) + return convertServiceDefinition((org.hl7.fhir.dstu3.model.ServiceDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.Slot) + return convertSlot((org.hl7.fhir.dstu3.model.Slot) src); + if (src instanceof org.hl7.fhir.dstu3.model.Specimen) + return convertSpecimen((org.hl7.fhir.dstu3.model.Specimen) src); + if (src instanceof org.hl7.fhir.dstu3.model.StructureDefinition) + return convertStructureDefinition((org.hl7.fhir.dstu3.model.StructureDefinition) src); + if (src instanceof org.hl7.fhir.dstu3.model.StructureMap) + return convertStructureMap((org.hl7.fhir.dstu3.model.StructureMap) src); + if (src instanceof org.hl7.fhir.dstu3.model.Subscription) + return convertSubscription((org.hl7.fhir.dstu3.model.Subscription) src); + if (src instanceof org.hl7.fhir.dstu3.model.Substance) + return convertSubstance((org.hl7.fhir.dstu3.model.Substance) src); + if (src instanceof org.hl7.fhir.dstu3.model.SupplyDelivery) + return convertSupplyDelivery((org.hl7.fhir.dstu3.model.SupplyDelivery) src); + if (src instanceof org.hl7.fhir.dstu3.model.SupplyRequest) + return convertSupplyRequest((org.hl7.fhir.dstu3.model.SupplyRequest) src); + if (src instanceof org.hl7.fhir.dstu3.model.Task) + return convertTask((org.hl7.fhir.dstu3.model.Task) src); + if (src instanceof org.hl7.fhir.dstu3.model.TestReport) + return convertTestReport((org.hl7.fhir.dstu3.model.TestReport) src); + if (src instanceof org.hl7.fhir.dstu3.model.TestScript) + return convertTestScript((org.hl7.fhir.dstu3.model.TestScript) src); + if (src instanceof org.hl7.fhir.dstu3.model.ValueSet) + return convertValueSet((org.hl7.fhir.dstu3.model.ValueSet) src); + if (src instanceof org.hl7.fhir.dstu3.model.VisionPrescription) + return convertVisionPrescription((org.hl7.fhir.dstu3.model.VisionPrescription) src); + throw new Error("Unknown resource "+src.fhirType()); + } + + public static org.hl7.fhir.dstu3.model.Resource convertResource(org.hl7.fhir.r4.model.Resource src) throws FHIRException { + if (src == null) + return null; + if (src instanceof org.hl7.fhir.r4.model.Parameters) + return convertParameters((org.hl7.fhir.r4.model.Parameters) src); + if (src instanceof org.hl7.fhir.r4.model.Account) + return convertAccount((org.hl7.fhir.r4.model.Account) src); + if (src instanceof org.hl7.fhir.r4.model.ActivityDefinition) + return convertActivityDefinition((org.hl7.fhir.r4.model.ActivityDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.AllergyIntolerance) + return convertAllergyIntolerance((org.hl7.fhir.r4.model.AllergyIntolerance) src); + if (src instanceof org.hl7.fhir.r4.model.Appointment) + return convertAppointment((org.hl7.fhir.r4.model.Appointment) src); + if (src instanceof org.hl7.fhir.r4.model.AppointmentResponse) + return convertAppointmentResponse((org.hl7.fhir.r4.model.AppointmentResponse) src); + if (src instanceof org.hl7.fhir.r4.model.AuditEvent) + return convertAuditEvent((org.hl7.fhir.r4.model.AuditEvent) src); + if (src instanceof org.hl7.fhir.r4.model.Basic) + return convertBasic((org.hl7.fhir.r4.model.Basic) src); + if (src instanceof org.hl7.fhir.r4.model.Binary) + return convertBinary((org.hl7.fhir.r4.model.Binary) src); + if (src instanceof org.hl7.fhir.r4.model.BodyStructure) + return convertBodySite((org.hl7.fhir.r4.model.BodyStructure) src); + if (src instanceof org.hl7.fhir.r4.model.Bundle) + return convertBundle((org.hl7.fhir.r4.model.Bundle) src); + if (src instanceof org.hl7.fhir.r4.model.CapabilityStatement) + return convertCapabilityStatement((org.hl7.fhir.r4.model.CapabilityStatement) src); + if (src instanceof org.hl7.fhir.r4.model.CarePlan) + return convertCarePlan((org.hl7.fhir.r4.model.CarePlan) src); + if (src instanceof org.hl7.fhir.r4.model.CareTeam) + return convertCareTeam((org.hl7.fhir.r4.model.CareTeam) src); + if (src instanceof org.hl7.fhir.r4.model.ChargeItem) + return convertChargeItem((org.hl7.fhir.r4.model.ChargeItem) src); + if (src instanceof org.hl7.fhir.r4.model.Claim) + return convertClaim((org.hl7.fhir.r4.model.Claim) src); + if (src instanceof org.hl7.fhir.r4.model.ClaimResponse) + return convertClaimResponse((org.hl7.fhir.r4.model.ClaimResponse) src); + if (src instanceof org.hl7.fhir.r4.model.ClinicalImpression) + return convertClinicalImpression((org.hl7.fhir.r4.model.ClinicalImpression) src); + if (src instanceof org.hl7.fhir.r4.model.CodeSystem) + return convertCodeSystem((org.hl7.fhir.r4.model.CodeSystem) src); + if (src instanceof org.hl7.fhir.r4.model.Communication) + return convertCommunication((org.hl7.fhir.r4.model.Communication) src); + if (src instanceof org.hl7.fhir.r4.model.CommunicationRequest) + return convertCommunicationRequest((org.hl7.fhir.r4.model.CommunicationRequest) src); + if (src instanceof org.hl7.fhir.r4.model.CompartmentDefinition) + return convertCompartmentDefinition((org.hl7.fhir.r4.model.CompartmentDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.Composition) + return convertComposition((org.hl7.fhir.r4.model.Composition) src); + if (src instanceof org.hl7.fhir.r4.model.ConceptMap) + return convertConceptMap((org.hl7.fhir.r4.model.ConceptMap) src); + if (src instanceof org.hl7.fhir.r4.model.Condition) + return convertCondition((org.hl7.fhir.r4.model.Condition) src); + if (src instanceof org.hl7.fhir.r4.model.Consent) + return convertConsent((org.hl7.fhir.r4.model.Consent) src); + if (src instanceof org.hl7.fhir.r4.model.Contract) + return convertContract((org.hl7.fhir.r4.model.Contract) src); + if (src instanceof org.hl7.fhir.r4.model.Coverage) + return convertCoverage((org.hl7.fhir.r4.model.Coverage) src); + if (src instanceof org.hl7.fhir.r4.model.DetectedIssue) + return convertDetectedIssue((org.hl7.fhir.r4.model.DetectedIssue) src); + if (src instanceof org.hl7.fhir.r4.model.Device) + return convertDevice((org.hl7.fhir.r4.model.Device) src); + if (src instanceof org.hl7.fhir.r4.model.DeviceComponent) + return convertDeviceComponent((org.hl7.fhir.r4.model.DeviceComponent) src); + if (src instanceof org.hl7.fhir.r4.model.DeviceMetric) + return convertDeviceMetric((org.hl7.fhir.r4.model.DeviceMetric) src); + if (src instanceof org.hl7.fhir.r4.model.DeviceRequest) + return convertDeviceRequest((org.hl7.fhir.r4.model.DeviceRequest) src); + if (src instanceof org.hl7.fhir.r4.model.DeviceUseStatement) + return convertDeviceUseStatement((org.hl7.fhir.r4.model.DeviceUseStatement) src); + if (src instanceof org.hl7.fhir.r4.model.DiagnosticReport) + return convertDiagnosticReport((org.hl7.fhir.r4.model.DiagnosticReport) src); + if (src instanceof org.hl7.fhir.r4.model.DocumentManifest) + return convertDocumentManifest((org.hl7.fhir.r4.model.DocumentManifest) src); + if (src instanceof org.hl7.fhir.r4.model.DocumentReference) + return convertDocumentReference((org.hl7.fhir.r4.model.DocumentReference) src); + if (src instanceof org.hl7.fhir.r4.model.EligibilityRequest) + return convertEligibilityRequest((org.hl7.fhir.r4.model.EligibilityRequest) src); + if (src instanceof org.hl7.fhir.r4.model.EligibilityResponse) + return convertEligibilityResponse((org.hl7.fhir.r4.model.EligibilityResponse) src); + if (src instanceof org.hl7.fhir.r4.model.Encounter) + return convertEncounter((org.hl7.fhir.r4.model.Encounter) src); + if (src instanceof org.hl7.fhir.r4.model.Endpoint) + return convertEndpoint((org.hl7.fhir.r4.model.Endpoint) src); + if (src instanceof org.hl7.fhir.r4.model.EnrollmentRequest) + return convertEnrollmentRequest((org.hl7.fhir.r4.model.EnrollmentRequest) src); + if (src instanceof org.hl7.fhir.r4.model.EnrollmentResponse) + return convertEnrollmentResponse((org.hl7.fhir.r4.model.EnrollmentResponse) src); + if (src instanceof org.hl7.fhir.r4.model.EpisodeOfCare) + return convertEpisodeOfCare((org.hl7.fhir.r4.model.EpisodeOfCare) src); + if (src instanceof org.hl7.fhir.r4.model.ExpansionProfile) + return convertExpansionProfile((org.hl7.fhir.r4.model.ExpansionProfile) src); + if (src instanceof org.hl7.fhir.r4.model.ExplanationOfBenefit) + return convertExplanationOfBenefit((org.hl7.fhir.r4.model.ExplanationOfBenefit) src); + if (src instanceof org.hl7.fhir.r4.model.FamilyMemberHistory) + return convertFamilyMemberHistory((org.hl7.fhir.r4.model.FamilyMemberHistory) src); + if (src instanceof org.hl7.fhir.r4.model.Flag) + return convertFlag((org.hl7.fhir.r4.model.Flag) src); + if (src instanceof org.hl7.fhir.r4.model.Goal) + return convertGoal((org.hl7.fhir.r4.model.Goal) src); + if (src instanceof org.hl7.fhir.r4.model.GraphDefinition) + return convertGraphDefinition((org.hl7.fhir.r4.model.GraphDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.Group) + return convertGroup((org.hl7.fhir.r4.model.Group) src); + if (src instanceof org.hl7.fhir.r4.model.GuidanceResponse) + return convertGuidanceResponse((org.hl7.fhir.r4.model.GuidanceResponse) src); + if (src instanceof org.hl7.fhir.r4.model.HealthcareService) + return convertHealthcareService((org.hl7.fhir.r4.model.HealthcareService) src); + if (src instanceof org.hl7.fhir.r4.model.ImagingManifest) + return convertImagingManifest((org.hl7.fhir.r4.model.ImagingManifest) src); + if (src instanceof org.hl7.fhir.r4.model.ImagingStudy) + return convertImagingStudy((org.hl7.fhir.r4.model.ImagingStudy) src); + if (src instanceof org.hl7.fhir.r4.model.Immunization) + return convertImmunization((org.hl7.fhir.r4.model.Immunization) src); + if (src instanceof org.hl7.fhir.r4.model.ImmunizationRecommendation) + return convertImmunizationRecommendation((org.hl7.fhir.r4.model.ImmunizationRecommendation) src); + if (src instanceof org.hl7.fhir.r4.model.ImplementationGuide) + return convertImplementationGuide((org.hl7.fhir.r4.model.ImplementationGuide) src); + if (src instanceof org.hl7.fhir.r4.model.Library) + return convertLibrary((org.hl7.fhir.r4.model.Library) src); + if (src instanceof org.hl7.fhir.r4.model.Linkage) + return convertLinkage((org.hl7.fhir.r4.model.Linkage) src); + if (src instanceof org.hl7.fhir.r4.model.ListResource) + return convertList((org.hl7.fhir.r4.model.ListResource) src); + if (src instanceof org.hl7.fhir.r4.model.Location) + return convertLocation((org.hl7.fhir.r4.model.Location) src); + if (src instanceof org.hl7.fhir.r4.model.Measure) + return convertMeasure((org.hl7.fhir.r4.model.Measure) src); + if (src instanceof org.hl7.fhir.r4.model.MeasureReport) + return convertMeasureReport((org.hl7.fhir.r4.model.MeasureReport) src); + if (src instanceof org.hl7.fhir.r4.model.Media) + return convertMedia((org.hl7.fhir.r4.model.Media) src); + if (src instanceof org.hl7.fhir.r4.model.Medication) + return convertMedication((org.hl7.fhir.r4.model.Medication) src); + if (src instanceof org.hl7.fhir.r4.model.MedicationAdministration) + return convertMedicationAdministration((org.hl7.fhir.r4.model.MedicationAdministration) src); + if (src instanceof org.hl7.fhir.r4.model.MedicationDispense) + return convertMedicationDispense((org.hl7.fhir.r4.model.MedicationDispense) src); + if (src instanceof org.hl7.fhir.r4.model.MedicationRequest) + return convertMedicationRequest((org.hl7.fhir.r4.model.MedicationRequest) src); + if (src instanceof org.hl7.fhir.r4.model.MedicationStatement) + return convertMedicationStatement((org.hl7.fhir.r4.model.MedicationStatement) src); + if (src instanceof org.hl7.fhir.r4.model.MessageDefinition) + return convertMessageDefinition((org.hl7.fhir.r4.model.MessageDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.MessageHeader) + return convertMessageHeader((org.hl7.fhir.r4.model.MessageHeader) src); + if (src instanceof org.hl7.fhir.r4.model.NamingSystem) + return convertNamingSystem((org.hl7.fhir.r4.model.NamingSystem) src); + if (src instanceof org.hl7.fhir.r4.model.NutritionOrder) + return convertNutritionOrder((org.hl7.fhir.r4.model.NutritionOrder) src); + if (src instanceof org.hl7.fhir.r4.model.Observation) + return convertObservation((org.hl7.fhir.r4.model.Observation) src); + if (src instanceof org.hl7.fhir.r4.model.OperationDefinition) + return convertOperationDefinition((org.hl7.fhir.r4.model.OperationDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.OperationOutcome) + return convertOperationOutcome((org.hl7.fhir.r4.model.OperationOutcome) src); + if (src instanceof org.hl7.fhir.r4.model.Organization) + return convertOrganization((org.hl7.fhir.r4.model.Organization) src); + if (src instanceof org.hl7.fhir.r4.model.Patient) + return convertPatient((org.hl7.fhir.r4.model.Patient) src); + if (src instanceof org.hl7.fhir.r4.model.PaymentNotice) + return convertPaymentNotice((org.hl7.fhir.r4.model.PaymentNotice) src); + if (src instanceof org.hl7.fhir.r4.model.PaymentReconciliation) + return convertPaymentReconciliation((org.hl7.fhir.r4.model.PaymentReconciliation) src); + if (src instanceof org.hl7.fhir.r4.model.Person) + return convertPerson((org.hl7.fhir.r4.model.Person) src); + if (src instanceof org.hl7.fhir.r4.model.PlanDefinition) + return convertPlanDefinition((org.hl7.fhir.r4.model.PlanDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.Practitioner) + return convertPractitioner((org.hl7.fhir.r4.model.Practitioner) src); + if (src instanceof org.hl7.fhir.r4.model.PractitionerRole) + return convertPractitionerRole((org.hl7.fhir.r4.model.PractitionerRole) src); + if (src instanceof org.hl7.fhir.r4.model.Procedure) + return convertProcedure((org.hl7.fhir.r4.model.Procedure) src); + if (src instanceof org.hl7.fhir.r4.model.ProcedureRequest) + return convertProcedureRequest((org.hl7.fhir.r4.model.ProcedureRequest) src); + if (src instanceof org.hl7.fhir.r4.model.ProcessRequest) + return convertProcessRequest((org.hl7.fhir.r4.model.ProcessRequest) src); + if (src instanceof org.hl7.fhir.r4.model.ProcessResponse) + return convertProcessResponse((org.hl7.fhir.r4.model.ProcessResponse) src); + if (src instanceof org.hl7.fhir.r4.model.Provenance) + return convertProvenance((org.hl7.fhir.r4.model.Provenance) src); + if (src instanceof org.hl7.fhir.r4.model.Questionnaire) + return convertQuestionnaire((org.hl7.fhir.r4.model.Questionnaire) src); + if (src instanceof org.hl7.fhir.r4.model.QuestionnaireResponse) + return convertQuestionnaireResponse((org.hl7.fhir.r4.model.QuestionnaireResponse) src); + if (src instanceof org.hl7.fhir.r4.model.RelatedPerson) + return convertRelatedPerson((org.hl7.fhir.r4.model.RelatedPerson) src); + if (src instanceof org.hl7.fhir.r4.model.RequestGroup) + return convertRequestGroup((org.hl7.fhir.r4.model.RequestGroup) src); + if (src instanceof org.hl7.fhir.r4.model.ResearchStudy) + return convertResearchStudy((org.hl7.fhir.r4.model.ResearchStudy) src); + if (src instanceof org.hl7.fhir.r4.model.ResearchSubject) + return convertResearchSubject((org.hl7.fhir.r4.model.ResearchSubject) src); + if (src instanceof org.hl7.fhir.r4.model.RiskAssessment) + return convertRiskAssessment((org.hl7.fhir.r4.model.RiskAssessment) src); + if (src instanceof org.hl7.fhir.r4.model.Schedule) + return convertSchedule((org.hl7.fhir.r4.model.Schedule) src); + if (src instanceof org.hl7.fhir.r4.model.SearchParameter) + return convertSearchParameter((org.hl7.fhir.r4.model.SearchParameter) src); + if (src instanceof org.hl7.fhir.r4.model.Sequence) + return convertSequence((org.hl7.fhir.r4.model.Sequence) src); + if (src instanceof org.hl7.fhir.r4.model.ServiceDefinition) + return convertServiceDefinition((org.hl7.fhir.r4.model.ServiceDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.Slot) + return convertSlot((org.hl7.fhir.r4.model.Slot) src); + if (src instanceof org.hl7.fhir.r4.model.Specimen) + return convertSpecimen((org.hl7.fhir.r4.model.Specimen) src); + if (src instanceof org.hl7.fhir.r4.model.StructureDefinition) + return convertStructureDefinition((org.hl7.fhir.r4.model.StructureDefinition) src); + if (src instanceof org.hl7.fhir.r4.model.StructureMap) + return convertStructureMap((org.hl7.fhir.r4.model.StructureMap) src); + if (src instanceof org.hl7.fhir.r4.model.Subscription) + return convertSubscription((org.hl7.fhir.r4.model.Subscription) src); + if (src instanceof org.hl7.fhir.r4.model.Substance) + return convertSubstance((org.hl7.fhir.r4.model.Substance) src); + if (src instanceof org.hl7.fhir.r4.model.SupplyDelivery) + return convertSupplyDelivery((org.hl7.fhir.r4.model.SupplyDelivery) src); + if (src instanceof org.hl7.fhir.r4.model.SupplyRequest) + return convertSupplyRequest((org.hl7.fhir.r4.model.SupplyRequest) src); + if (src instanceof org.hl7.fhir.r4.model.Task) + return convertTask((org.hl7.fhir.r4.model.Task) src); + if (src instanceof org.hl7.fhir.r4.model.TestReport) + return convertTestReport((org.hl7.fhir.r4.model.TestReport) src); + if (src instanceof org.hl7.fhir.r4.model.TestScript) + return convertTestScript((org.hl7.fhir.r4.model.TestScript) src); + if (src instanceof org.hl7.fhir.r4.model.ValueSet) + return convertValueSet((org.hl7.fhir.r4.model.ValueSet) src); + if (src instanceof org.hl7.fhir.r4.model.VisionPrescription) + return convertVisionPrescription((org.hl7.fhir.r4.model.VisionPrescription) src); + throw new Error("Unknown resource "+src.fhirType()); + } + + +} diff --git a/hapi-fhir-dist/pom.xml b/hapi-fhir-dist/pom.xml index cd186885bd8..7eae762593b 100644 --- a/hapi-fhir-dist/pom.xml +++ b/hapi-fhir-dist/pom.xml @@ -53,26 +53,6 @@ provided - - ca.uhn.hapi.fhir - hapi-fhir-structures-dstu - ${project.version} - - - ca.uhn.hapi.fhir - hapi-fhir-structures-dstu - ${project.version} - sources - provided - - - ca.uhn.hapi.fhir - hapi-fhir-structures-dstu - ${project.version} - javadoc - provided - - ca.uhn.hapi.fhir hapi-fhir-structures-dstu2 @@ -152,7 +132,27 @@ javadoc provided - + + + ca.uhn.hapi.fhir + hapi-fhir-structures-r4 + ${project.version} + + + ca.uhn.hapi.fhir + hapi-fhir-structures-r4 + ${project.version} + sources + provided + + + ca.uhn.hapi.fhir + hapi-fhir-structures-r4 + ${project.version} + javadoc + provided + + ca.uhn.hapi.fhir hapi-fhir-validation-resources-dstu2 @@ -168,7 +168,12 @@ hapi-fhir-validation-resources-dstu3 ${project.version} - + + ca.uhn.hapi.fhir + hapi-fhir-validation-resources-r4 + ${project.version} + + ca.uhn.hapi.fhir hapi-fhir-cli-app diff --git a/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/dao/MetadataKeyResourcePid.java b/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/dao/MetadataKeyResourcePid.java index b5c3f838129..3534a16cfbb 100644 --- a/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/dao/MetadataKeyResourcePid.java +++ b/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/dao/MetadataKeyResourcePid.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.jpa.dao; +/*- + * #%L + * HAPI FHIR JPA Server + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import org.hl7.fhir.instance.model.api.IAnyResource; import ca.uhn.fhir.model.api.IResource; @@ -31,4 +51,4 @@ final class MetadataKeyResourcePid extends ResourceMetadataKeySupportingAnyResou public void put(IResource theResource, Long theObject) { theResource.getResourceMetadata().put(IDao.RESOURCE_PID, theObject); } -} \ No newline at end of file +} diff --git a/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/term/IHapiTerminologySvcR4.java b/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/term/IHapiTerminologySvcR4.java index 6676f51bf35..1d7474d90f2 100644 --- a/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/term/IHapiTerminologySvcR4.java +++ b/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/term/IHapiTerminologySvcR4.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.jpa.term; +/*- + * #%L + * HAPI FHIR JPA Server + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import org.hl7.fhir.r4.hapi.ctx.IValidationSupport; public interface IHapiTerminologySvcR4 extends IHapiTerminologySvc, IValidationSupport { diff --git a/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/util/AllowStatusChangeMetadata.java b/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/util/AllowStatusChangeMetadata.java index e9ff53b5409..b31158ef6e9 100644 --- a/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/util/AllowStatusChangeMetadata.java +++ b/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/util/AllowStatusChangeMetadata.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.jpa.util; +/*- + * #%L + * HAPI FHIR JPA Server + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import ca.uhn.fhir.model.api.IResource; import ca.uhn.fhir.model.api.ResourceMetadataKeyEnum; import ca.uhn.fhir.util.CoverageIgnore; @@ -22,4 +42,4 @@ final class AllowStatusChangeMetadata extends ResourceMetadataKeyEnum { public void put(IResource theResource, Object theObject) { throw new UnsupportedOperationException(); } -} \ No newline at end of file +} diff --git a/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/util/BaseIterator.java b/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/util/BaseIterator.java index e4b8edbc06f..7523039e680 100644 --- a/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/util/BaseIterator.java +++ b/hapi-fhir-jpaserver-base/src/main/java/ca/uhn/fhir/jpa/util/BaseIterator.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.jpa.util; +/*- + * #%L + * HAPI FHIR JPA Server + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.util.Iterator; public abstract class BaseIterator implements Iterator { diff --git a/hapi-fhir-osgi-core/pom.xml b/hapi-fhir-osgi-core/pom.xml index 3f3b8b79b3a..8500e137de7 100644 --- a/hapi-fhir-osgi-core/pom.xml +++ b/hapi-fhir-osgi-core/pom.xml @@ -23,7 +23,17 @@ ca.uhn.hapi.fhir - hapi-fhir-structures-dstu + hapi-fhir-utilities + ${project.version} + + + ca.uhn.hapi.fhir + hapi-fhir-client + ${project.version} + + + ca.uhn.hapi.fhir + hapi-fhir-server ${project.version} @@ -41,6 +51,11 @@ hapi-fhir-structures-dstu3 ${project.version} + + ca.uhn.hapi.fhir + hapi-fhir-structures-r4 + ${project.version} + ca.uhn.hapi.fhir hapi-fhir-validation-resources-dstu2 @@ -84,6 +99,25 @@ ${slf4j_target_version} + + + es.nitaur.markdown + txtmark + true + + + org.antlr + ST4 + true + + + xpp3 + xpp3 + true + + @@ -115,12 +149,11 @@ - - + diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IBundleProvider.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IBundleProvider.java index 65db5c3c432..99b2c2ac719 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IBundleProvider.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IBundleProvider.java @@ -4,7 +4,7 @@ import java.util.Date; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IFhirVersionServer.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IFhirVersionServer.java index a6c5ebcc045..328697ffc0f 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IFhirVersionServer.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IFhirVersionServer.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.api.server; +/*- + * #%L + * HAPI FHIR - Server Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import org.hl7.fhir.instance.model.api.IBaseResource; import ca.uhn.fhir.model.api.IFhirVersion; diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRequestOperationCallback.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRequestOperationCallback.java index 36a499adc89..84ed4924ce9 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRequestOperationCallback.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRequestOperationCallback.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.api.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRestfulResponse.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRestfulResponse.java index 642c9818a5d..06694aa08d5 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRestfulResponse.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRestfulResponse.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.api.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRestfulServer.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRestfulServer.java index 751ec25bc02..0eb841a920c 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRestfulServer.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/IRestfulServer.java @@ -6,7 +6,7 @@ import ca.uhn.fhir.rest.server.IRestfulServerDefaults; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/ParseAction.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/ParseAction.java index b9cdd1f8021..8516348426b 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/ParseAction.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/ParseAction.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.api.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/RequestDetails.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/RequestDetails.java index a4f55b2126c..3950323d6b1 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/RequestDetails.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/api/server/RequestDetails.java @@ -9,7 +9,7 @@ import java.io.UnsupportedEncodingException; import java.nio.charset.Charset; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ApacheProxyAddressStrategy.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ApacheProxyAddressStrategy.java index 8c149390382..cbd584d400e 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ApacheProxyAddressStrategy.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ApacheProxyAddressStrategy.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/BasePagingProvider.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/BasePagingProvider.java index ee3c7bcf740..7d1be87d4eb 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/BasePagingProvider.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/BasePagingProvider.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/BundleProviders.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/BundleProviders.java index 31a403cf3a3..709f9680047 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/BundleProviders.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/BundleProviders.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ETagSupportEnum.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ETagSupportEnum.java index 0c8b0fd179a..acf7f884440 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ETagSupportEnum.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ETagSupportEnum.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/FifoMemoryPagingProvider.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/FifoMemoryPagingProvider.java index e57854e9fa9..34cccde651c 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/FifoMemoryPagingProvider.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/FifoMemoryPagingProvider.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/HardcodedServerAddressStrategy.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/HardcodedServerAddressStrategy.java index a6219bcd194..cb475ff0750 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/HardcodedServerAddressStrategy.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/HardcodedServerAddressStrategy.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IDynamicSearchResourceProvider.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IDynamicSearchResourceProvider.java index bf64f29a74b..444ef7587d3 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IDynamicSearchResourceProvider.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IDynamicSearchResourceProvider.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IPagingProvider.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IPagingProvider.java index 26378c20252..ec6aab50106 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IPagingProvider.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IPagingProvider.java @@ -4,7 +4,7 @@ import ca.uhn.fhir.rest.api.server.IBundleProvider; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IResourceProvider.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IResourceProvider.java index 35fbf8b240e..e7e886ed18a 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IResourceProvider.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IResourceProvider.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IRestfulServerDefaults.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IRestfulServerDefaults.java index f74520d7776..91e0480bf82 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IRestfulServerDefaults.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IRestfulServerDefaults.java @@ -4,7 +4,7 @@ import java.util.List; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IRestfulServerUtil.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IRestfulServerUtil.java index 4a2de8dc483..9476bc24e69 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IRestfulServerUtil.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IRestfulServerUtil.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IServerAddressStrategy.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IServerAddressStrategy.java index d2a6a935c0c..b6bb111729d 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IServerAddressStrategy.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IServerAddressStrategy.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IServerConformanceProvider.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IServerConformanceProvider.java index d4911a9e010..83c065c0939 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IServerConformanceProvider.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IServerConformanceProvider.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IncomingRequestAddressStrategy.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IncomingRequestAddressStrategy.java index 90cd841ef26..8a3910f4f5e 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IncomingRequestAddressStrategy.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/IncomingRequestAddressStrategy.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/PageProvider.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/PageProvider.java index 25ae82cd028..c9c667589d7 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/PageProvider.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/PageProvider.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ResourceBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ResourceBinding.java index cf111b197ad..55d2a2f084b 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ResourceBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/ResourceBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulResponse.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulResponse.java index c8d4bf55ef5..f14e4279d58 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulResponse.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulResponse.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulServer.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulServer.java index 427f57c7865..453d3d4b35b 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulServer.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulServer.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulServerUtils.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulServerUtils.java index fdee271f11b..d2632cd729c 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulServerUtils.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestfulServerUtils.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestulfulServerConfiguration.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestulfulServerConfiguration.java index cd160c47ccd..847affc5ddd 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestulfulServerConfiguration.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/RestulfulServerConfiguration.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/SearchParameterMap.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/SearchParameterMap.java index 65ecea039bd..e6736562bca 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/SearchParameterMap.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/SearchParameterMap.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/SimpleBundleProvider.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/SimpleBundleProvider.java index 3472a8306a2..c0dcec68a0e 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/SimpleBundleProvider.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/SimpleBundleProvider.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/BanUnsupportedHttpMethodsInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/BanUnsupportedHttpMethodsInterceptor.java index d1e0c3119c0..8f28423070d 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/BanUnsupportedHttpMethodsInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/BanUnsupportedHttpMethodsInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/BaseValidatingInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/BaseValidatingInterceptor.java index 798e6b02762..2e860dfab2c 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/BaseValidatingInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/BaseValidatingInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/CorsInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/CorsInterceptor.java index a8dca9136a2..795c066e328 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/CorsInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/CorsInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ExceptionHandlingInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ExceptionHandlingInterceptor.java index e3675fe3083..55d61dc93e7 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ExceptionHandlingInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ExceptionHandlingInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/IServerInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/IServerInterceptor.java index 872c6d1797b..6dbaec26a5b 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/IServerInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/IServerInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/IServerOperationInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/IServerOperationInterceptor.java index a044d077347..f9776ffbd8d 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/IServerOperationInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/IServerOperationInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/InterceptorAdapter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/InterceptorAdapter.java index 893877bf066..c0418b9d10a 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/InterceptorAdapter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/InterceptorAdapter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/LoggingInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/LoggingInterceptor.java index 9155f24db66..883c101811c 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/LoggingInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/LoggingInterceptor.java @@ -6,7 +6,7 @@ import java.io.IOException; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/RequestValidatingInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/RequestValidatingInterceptor.java index 5fabdcc67c6..3bbcca9f295 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/RequestValidatingInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/RequestValidatingInterceptor.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.StringUtils.isBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ResponseHighlighterInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ResponseHighlighterInterceptor.java index 696ab55a677..6be6783e19e 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ResponseHighlighterInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ResponseHighlighterInterceptor.java @@ -6,7 +6,7 @@ import static org.apache.commons.lang3.StringUtils.isNotBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ResponseValidatingInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ResponseValidatingInterceptor.java index 29a06c9b316..43839aeeba0 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ResponseValidatingInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ResponseValidatingInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ServerOperationInterceptorAdapter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ServerOperationInterceptorAdapter.java index 937d31ca214..d7894b549de 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ServerOperationInterceptorAdapter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/ServerOperationInterceptorAdapter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/VerboseLoggingInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/VerboseLoggingInterceptor.java index a381accb6c1..1fa64a918e1 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/VerboseLoggingInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/VerboseLoggingInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/AppliesTypeEnum.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/AppliesTypeEnum.java index c0b6396022d..00fb24da043 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/AppliesTypeEnum.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/AppliesTypeEnum.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/AuthorizationInterceptor.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/AuthorizationInterceptor.java index 9c9c75f77ad..2d88cda51d8 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/AuthorizationInterceptor.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/AuthorizationInterceptor.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/BaseRule.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/BaseRule.java index 467e3aed72a..572b053092f 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/BaseRule.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/BaseRule.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/ClassifierTypeEnum.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/ClassifierTypeEnum.java index c5004038432..6b7536d91de 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/ClassifierTypeEnum.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/ClassifierTypeEnum.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRule.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRule.java index a3c08d1871a..1edffd9cb65 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRule.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRule.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilder.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilder.java index 6d0e75430d5..429027bcc1d 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilder.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilder.java @@ -4,7 +4,7 @@ import java.util.List; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderAppliesTo.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderAppliesTo.java index 2e1b51d76c6..a9dd473c80f 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderAppliesTo.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderAppliesTo.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderOperation.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderOperation.java index 4856db8992d..f3a61d14e0d 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderOperation.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderOperation.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderOperationNamed.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderOperationNamed.java index cb84a52ba06..16f34e8a1ff 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderOperationNamed.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderOperationNamed.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRule.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRule.java index 6b37c156462..68cc4eb172a 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRule.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRule.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleConditional.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleConditional.java index c2e3daeaf00..20ffc2e10ec 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleConditional.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleConditional.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleConditionalClassifier.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleConditionalClassifier.java index 4b8a8449ccd..4c15d640bf0 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleConditionalClassifier.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleConditionalClassifier.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOp.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOp.java index 617bc76dbce..282688396fc 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOp.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOp.java @@ -4,7 +4,7 @@ import org.hl7.fhir.instance.model.api.IIdType; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOpClassifier.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOpClassifier.java index 6f6dab5ed62..1aa28a2b7ac 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOpClassifier.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOpClassifier.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOpClassifierFinished.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOpClassifierFinished.java index f8665b3aa3f..9643df6d353 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOpClassifierFinished.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleOpClassifierFinished.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleTransaction.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleTransaction.java index 007cbb3a258..99cfd355c62 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleTransaction.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleTransaction.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleTransactionOp.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleTransactionOp.java index 7ff74f1a279..211f1837f1d 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleTransactionOp.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleBuilderRuleTransactionOp.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleFinished.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleFinished.java index c7305edda57..49b10c15472 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleFinished.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IAuthRuleFinished.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IRuleApplier.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IRuleApplier.java index 087619b0ef0..89789f843e3 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IRuleApplier.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/IRuleApplier.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/OperationRule.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/OperationRule.java index 969ec748d0c..1d420f5b097 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/OperationRule.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/OperationRule.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/PolicyEnum.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/PolicyEnum.java index 4d2c4d56b82..0f89ba75030 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/PolicyEnum.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/PolicyEnum.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleBuilder.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleBuilder.java index ce3cab262d2..0af81b4afc8 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleBuilder.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleBuilder.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleImplConditional.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleImplConditional.java index 37b2740633f..d78209b8985 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleImplConditional.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleImplConditional.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleImplOp.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleImplOp.java index 09e0a7a6aa4..65603cb9198 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleImplOp.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleImplOp.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.StringUtils.isNotBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleOpEnum.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleOpEnum.java index 854581430f9..522fc1c47de 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleOpEnum.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/RuleOpEnum.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/TransactionAppliesToEnum.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/TransactionAppliesToEnum.java index 9846aff1883..c4e05257078 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/TransactionAppliesToEnum.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/interceptor/auth/TransactionAppliesToEnum.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.interceptor.auth; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/AddTagsMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/AddTagsMethodBinding.java index 38405ad45e2..d03ad588b29 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/AddTagsMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/AddTagsMethodBinding.java @@ -4,7 +4,7 @@ import java.io.IOException; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/AtParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/AtParameter.java index 2f9894983ac..e5aa8339043 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/AtParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/AtParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseAddOrDeleteTagsMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseAddOrDeleteTagsMethodBinding.java index 2bc494b55b5..ce1bdf7cb9b 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseAddOrDeleteTagsMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseAddOrDeleteTagsMethodBinding.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.server.method; +/*- + * #%L + * HAPI FHIR - Server Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import java.lang.reflect.Method; import java.lang.reflect.Modifier; diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseMethodBinding.java index 06df7ad0b61..a25835c90b3 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBinding.java index b0b4e4c0699..2b1289dce95 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBindingWithResourceIdButNoResourceBody.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBindingWithResourceIdButNoResourceBody.java index 328e07216b7..6f47e1ebcd4 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBindingWithResourceIdButNoResourceBody.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBindingWithResourceIdButNoResourceBody.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBindingWithResourceParam.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBindingWithResourceParam.java index 585dbd37ffd..7b746054a66 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBindingWithResourceParam.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseOutcomeReturningMethodBindingWithResourceParam.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.StringUtils.defaultIfBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseQueryParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseQueryParameter.java index c1f055c0e34..f16b4a3c9a1 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseQueryParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseQueryParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseResourceReturningMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseResourceReturningMethodBinding.java index 26dcdeb147d..e5c6a12896d 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseResourceReturningMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/BaseResourceReturningMethodBinding.java @@ -3,7 +3,7 @@ package ca.uhn.fhir.rest.server.method; import static org.apache.commons.lang3.StringUtils.isBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConditionalParamBinder.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConditionalParamBinder.java index c302e1e646e..1ab28611695 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConditionalParamBinder.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConditionalParamBinder.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBinding.java index 4976e3cf06a..d68c597bb54 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ConformanceMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/CountParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/CountParameter.java index 4cf24ed1095..8e2b15974f7 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/CountParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/CountParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/CreateMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/CreateMethodBinding.java index 3999744ca29..e647d6f3dbf 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/CreateMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/CreateMethodBinding.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.StringUtils.isNotBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DeleteMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DeleteMethodBinding.java index 7bb37f9c92e..eb2a9fc6a97 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DeleteMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DeleteMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DeleteTagsMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DeleteTagsMethodBinding.java index 2a777a2cf21..369dc70c63e 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DeleteTagsMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DeleteTagsMethodBinding.java @@ -4,7 +4,7 @@ import java.io.IOException; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DynamicSearchMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DynamicSearchMethodBinding.java index 6c642eee03b..7191835b927 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DynamicSearchMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DynamicSearchMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DynamicSearchParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DynamicSearchParameter.java index ff88c96cb5a..02755d85642 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DynamicSearchParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/DynamicSearchParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ElementsParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ElementsParameter.java index e82dac617a3..7851292223b 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ElementsParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ElementsParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/HistoryMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/HistoryMethodBinding.java index 409d9d59403..84b0ee4f477 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/HistoryMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/HistoryMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IParameter.java index d82816c561a..edd18b38f68 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IRestfulHeader.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IRestfulHeader.java index 68d66386c49..c59b383477a 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IRestfulHeader.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IRestfulHeader.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IncludeParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IncludeParameter.java index 3716db6bed8..1a48a49aa54 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IncludeParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/IncludeParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/MethodUtil.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/MethodUtil.java index 2e69f421a4d..08ceb897ec1 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/MethodUtil.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/MethodUtil.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.server.method; +/*- + * #%L + * HAPI FHIR - Server Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import static org.apache.commons.lang3.StringUtils.isNotBlank; import java.lang.annotation.Annotation; diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/NullParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/NullParameter.java index 64c4fdc800e..2bbb2b8c996 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/NullParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/NullParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/OperationMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/OperationMethodBinding.java index a554b82920e..32e5f878ac5 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/OperationMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/OperationMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/OperationParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/OperationParameter.java index 8f56ccdec77..98ffd4fdba8 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/OperationParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/OperationParameter.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.StringUtils.isNotBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PageMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PageMethodBinding.java index aacf6e439e5..f5dedf9692d 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PageMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PageMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PatchMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PatchMethodBinding.java index dcc439d8b84..cc94d75b0b3 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PatchMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PatchMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PatchTypeParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PatchTypeParameter.java index ee28ab6b621..176745ee737 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PatchTypeParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/PatchTypeParameter.java @@ -4,7 +4,7 @@ import static org.apache.commons.lang3.StringUtils.defaultString; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RawParamsParmeter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RawParamsParmeter.java index f0d36f6efc2..aca21ef989b 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RawParamsParmeter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RawParamsParmeter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ReadMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ReadMethodBinding.java index 1f7b5dd164f..58d351abb6b 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ReadMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ReadMethodBinding.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.rest.server.method; +/*- + * #%L + * HAPI FHIR - Server Framework + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import static org.apache.commons.lang3.StringUtils.isNotBlank; import java.lang.reflect.Method; diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RequestDetailsParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RequestDetailsParameter.java index 0c07d62718e..5ed49ad7004 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RequestDetailsParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RequestDetailsParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RequestOperationCallbackParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RequestOperationCallbackParameter.java index cbdbb05739a..69f87b604e2 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RequestOperationCallbackParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/RequestOperationCallbackParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ResourceParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ResourceParameter.java index dd29a344fa0..03567863f67 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ResourceParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ResourceParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SearchMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SearchMethodBinding.java index 38644410618..5eafe6bfd9e 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SearchMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SearchMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SearchParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SearchParameter.java index b5f8d2320c7..2db3e818001 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SearchParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SearchParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServerBaseParamBinder.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServerBaseParamBinder.java index ad477cbda82..9f190579521 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServerBaseParamBinder.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServerBaseParamBinder.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServletRequestParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServletRequestParameter.java index d0b8a64dcb3..26882c286c7 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServletRequestParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServletRequestParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServletResponseParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServletResponseParameter.java index 6bcea730f20..3d1dbc9a1c8 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServletResponseParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ServletResponseParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SinceOrAtParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SinceOrAtParameter.java index 53f86074f67..ade184ec2aa 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SinceOrAtParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SinceOrAtParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SinceParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SinceParameter.java index 98ed668e828..4cba8fac7f3 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SinceParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SinceParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SortParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SortParameter.java index c36d5207d51..ee8224ea645 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SortParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SortParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SummaryEnumParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SummaryEnumParameter.java index 1d96d2bde52..ac270c7d2a4 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SummaryEnumParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/SummaryEnumParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/TransactionMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/TransactionMethodBinding.java index 461f8abd94d..50ce4fde8d5 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/TransactionMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/TransactionMethodBinding.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/TransactionParameter.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/TransactionParameter.java index 8d3a6acb0cc..3f1989d5504 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/TransactionParameter.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/TransactionParameter.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/UpdateMethodBinding.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/UpdateMethodBinding.java index 35369fe66bc..9bf92982955 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/UpdateMethodBinding.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/UpdateMethodBinding.java @@ -3,7 +3,7 @@ package ca.uhn.fhir.rest.server.method; import static org.apache.commons.lang3.StringUtils.isBlank; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ValidateMethodBindingDstu2Plus.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ValidateMethodBindingDstu2Plus.java index e434536e711..b11b81a93ec 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ValidateMethodBindingDstu2Plus.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/method/ValidateMethodBindingDstu2Plus.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.method; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/servlet/ServletRequestDetails.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/servlet/ServletRequestDetails.java index f5a1f348dfd..f870dd6289c 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/servlet/ServletRequestDetails.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/servlet/ServletRequestDetails.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.servlet; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/servlet/ServletRestfulResponse.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/servlet/ServletRestfulResponse.java index 52546b5dd5f..6ba2efa669c 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/servlet/ServletRestfulResponse.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/servlet/ServletRestfulResponse.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.servlet; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/util/ITestingUiClientFactory.java b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/util/ITestingUiClientFactory.java index ece207b4dac..dd521bf0b64 100644 --- a/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/util/ITestingUiClientFactory.java +++ b/hapi-fhir-server/src/main/java/ca/uhn/fhir/rest/server/util/ITestingUiClientFactory.java @@ -2,7 +2,7 @@ package ca.uhn.fhir.rest.server.util; /* * #%L - * HAPI FHIR - Core Library + * HAPI FHIR - Server Framework * %% * Copyright (C) 2014 - 2017 University Health Network * %% diff --git a/hapi-fhir-structures-dstu2/src/main/java/ca/uhn/fhir/model/dstu2/FhirServerDstu2.java b/hapi-fhir-structures-dstu2/src/main/java/ca/uhn/fhir/model/dstu2/FhirServerDstu2.java index 93aa21c5637..80fef3202da 100644 --- a/hapi-fhir-structures-dstu2/src/main/java/ca/uhn/fhir/model/dstu2/FhirServerDstu2.java +++ b/hapi-fhir-structures-dstu2/src/main/java/ca/uhn/fhir/model/dstu2/FhirServerDstu2.java @@ -1,5 +1,25 @@ package ca.uhn.fhir.model.dstu2; +/*- + * #%L + * HAPI FHIR Structures - DSTU2 (FHIR v1.0.0) + * %% + * Copyright (C) 2014 - 2017 University Health Network + * %% + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * #L% + */ + import ca.uhn.fhir.rest.api.server.IFhirVersionServer; import ca.uhn.fhir.rest.server.IResourceProvider; import ca.uhn.fhir.rest.server.RestfulServer; diff --git a/pom.xml b/pom.xml index 5884b5f858d..9410ea9bc30 100644 --- a/pom.xml +++ b/pom.xml @@ -949,7 +949,7 @@ org.apache.felix maven-bundle-plugin - 3.0.1 + 3.3.0 org.apache.maven.plugins @@ -1694,7 +1694,7 @@ DIST - hapi-fhir-osgi-core + @@ -1812,6 +1812,7 @@ example-projects/hapi-fhir-base-example-embedded-ws example-projects/hapi-fhir-standalone-overlay-example hapi-fhir-jacoco +